diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md index 1caf2f671aa95b576a69dccb8e9ee4acf89dce62..13017cdcfe0b7c0d10551da48590b06c17f80f23 100644 --- a/.gitlab/issue_templates/bug.md +++ b/.gitlab/issue_templates/bug.md @@ -49,10 +49,10 @@ <!-- Providing details of your set-up can help us identify any issues, e.g. - OpenFOAM version : v2312|v2306|v2212|v2206|v2112 etc - Operating system : ubuntu|openSUSE|centos etc + OpenFOAM version : v2406|v2312|v2306|v2212|v2206 etc + Operating system : ubuntu|openSUSE|RedHat etc Hardware info : any info that may help? - Compiler : gcc|intel|clang etc + Compiler : gcc|clang etc --> - OpenFOAM version : diff --git a/.gitmodules b/.gitmodules index b6c563fa581c0b7cc65b0c04416b39817097ae26..d60f80533277bbb032f40d92c9ce87b3dd19b802 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,8 +1,8 @@ [submodule "cfmesh"] - path = modules/cfmesh + path = plugins/cfmesh url = https://develop.openfoam.com/Community/integration-cfmesh.git [submodule "avalanche"] - path = modules/avalanche + path = plugins/avalanche url = https://develop.openfoam.com/Community/avalanche.git [submodule "adios"] path = modules/adios @@ -18,5 +18,8 @@ path = modules/external-solver url = https://develop.openfoam.com/Modules/external-solver.git [submodule "turbulence-community"] - path = modules/turbulence-community + path = plugins/turbulence-community url = https://gitlab.com/openfoam/community/tc-turbulence/turbulence-community.git +[submodule "plugins/data-community"] + path = plugins/data-community + url = https://gitlab.com/openfoam/community/sig-data-modelling/data-community.git diff --git a/Allwmake b/Allwmake index 514b42e32107c199bdbb78cb2af13a98d1700491..488686852353abbddac0fb676cac00030eb7cdbc 100755 --- a/Allwmake +++ b/Allwmake @@ -68,19 +68,34 @@ src/Allwmake $targetType $* # OpenFOAM applications applications/Allwmake $targetType $* +#------------------------------------------------------------------------------ +# Additional components -# Additional components/modules case "$FOAM_MODULE_PREFIX" in (false | none) echo ======================================== echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})" + echo "Can be built separately:" + echo + echo " ./Allwmake-modules -prefix=..." + echo + echo ======================================== echo ;; (*) # Use wmake -all instead of Allwmake to allow for overrides ( cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all ) + + echo ======================================== + echo "The optional plugins can be built separately:" + echo + echo " ./Allwmake-plugins -prefix=..." + echo + echo ======================================== + echo esac +#------------------------------------------------------------------------------ # Count files in given directory. Ignore "Test-*" binaries. _foamCountDirEntries() { diff --git a/Allwmake-modules b/Allwmake-modules new file mode 100755 index 0000000000000000000000000000000000000000..4a9dc1e022cbe04c9372ea3651f326ca04e4104e --- /dev/null +++ b/Allwmake-modules @@ -0,0 +1,37 @@ +#!/bin/sh +# Run from OPENFOAM top-level directory only +cd "${0%/*}" || exit +wmake -check-dir "$WM_PROJECT_DIR" 2>/dev/null || { + echo "Error (${0##*/}) : not located in \$WM_PROJECT_DIR" + echo " Check your OpenFOAM environment and installation" + exit 1 +} +if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ] +then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments -no-recursion "$@" || \ + echo "Argument parse error" +else + echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect" + echo " Check your OpenFOAM environment and installation" + exit 1 +fi + +#------------------------------------------------------------------------------ +# Additional components + +case "$FOAM_MODULE_PREFIX" in +(false | none) + echo ======================================== + echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})" + echo "Can be built separately:" + echo + echo " ./Allwmake-modules -prefix=..." + echo + echo ======================================== + echo + ;; +(*) + # Use wmake -all instead of Allwmake to allow for overrides + ( cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all ) +esac + +#------------------------------------------------------------------------------ diff --git a/Allwmake-plugins b/Allwmake-plugins new file mode 100755 index 0000000000000000000000000000000000000000..c5aa93794cba36b8982cd10d1a3bedefeb9e8b14 --- /dev/null +++ b/Allwmake-plugins @@ -0,0 +1,37 @@ +#!/bin/sh +# Run from OPENFOAM top-level directory only +cd "${0%/*}" || exit +wmake -check-dir "$WM_PROJECT_DIR" 2>/dev/null || { + echo "Error (${0##*/}) : not located in \$WM_PROJECT_DIR" + echo " Check your OpenFOAM environment and installation" + exit 1 +} +if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ] +then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments -no-recursion "$@" || \ + echo "Argument parse error" +else + echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect" + echo " Check your OpenFOAM environment and installation" + exit 1 +fi + +#------------------------------------------------------------------------------ +# Additional components + +case "$FOAM_MODULE_PREFIX" in +(false | none) + echo ======================================== + echo "OpenFOAM plugins disabled (prefix=${FOAM_MODULE_PREFIX})" + echo "Can be built separately:" + echo + echo " ./Allwmake-plugins -prefix=..." + echo + echo ======================================== + echo + ;; +(*) + # Use wmake -all instead of Allwmake to allow for overrides + ( cd "$WM_PROJECT_DIR/plugins" 2>/dev/null && wmake -all ) +esac + +#------------------------------------------------------------------------------ diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index d4744fce4687fdc1750ded1726dc587cb538ab0b..8d6cc649474bc5e2289a4d471778e409150685cd 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -9,6 +9,7 @@ It is likely incomplete... - Yu Ankun - Tetsuo Aoyagi - Akira Azami +- Pete Bachant - William Bainbridge - Gabriel Barajas - Kutalmis Bercin diff --git a/META-INFO/api-info b/META-INFO/api-info index 23d99db63c240d0de5b7b3d9fec300b6ca347547..7828837f89b2e7a055b41e29882fdc144bf49a30 100644 --- a/META-INFO/api-info +++ b/META-INFO/api-info @@ -1,2 +1,2 @@ -api=2312 -patch=240522 +api=2406 +patch=0 diff --git a/README.md b/README.md index ad37c448d1117b761467b0427db74f96f4c0c3ad..2fe975eb5d0c363fc7525c14911b986185928947 100644 --- a/README.md +++ b/README.md @@ -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-v2406 version: ``` -source /installation/path/OpenFOAM-v2312/etc/bashrc +source /installation/path/OpenFOAM-v2406/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-v2406 +\-- ThirdParty-v2406 ``` 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-sandbox2406, 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*, `v2406-myCustom`, without requiring a renamed ThirdParty. The API value would still - be `2312` and the original `ThirdParty-v2312/` would be found. + be `2406` and the original `ThirdParty-v2406/` 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-2024 OpenCFD Ltd diff --git a/applications/solvers/combustion/PDRFoam/PDRModels/dragModels/basic/basic.C b/applications/solvers/combustion/PDRFoam/PDRModels/dragModels/basic/basic.C index ed72bbe540d463493fec677318f38eef8501cb75..b48af20fea7680bb4d1eb06a1d6eeac758149cee 100644 --- a/applications/solvers/combustion/PDRFoam/PDRModels/dragModels/basic/basic.C +++ b/applications/solvers/combustion/PDRFoam/PDRModels/dragModels/basic/basic.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -93,24 +94,14 @@ Foam::PDRDragModels::basic::~basic() Foam::tmp<Foam::volSymmTensorField> Foam::PDRDragModels::basic::Dcu() const { - tmp<volSymmTensorField> tDragDcu + auto tDragDcu = volSymmTensorField::New ( - new volSymmTensorField - ( - IOobject - ( - "tDragDcu", - U_.mesh().time().constant(), - U_.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U_.mesh(), - dimensionedSymmTensor(dimMass/dimTime/dimVolume, Zero) - ) + "tDragDcu", + IOobject::NO_REGISTER, + U_.mesh(), + dimensionedSymmTensor(dimMass/dimTime/dimVolume, Zero) ); - - volSymmTensorField& DragDcu = tDragDcu.ref(); + auto& DragDcu = tDragDcu.ref(); if (on_) { @@ -127,24 +118,14 @@ Foam::tmp<Foam::volSymmTensorField> Foam::PDRDragModels::basic::Dcu() const Foam::tmp<Foam::volScalarField> Foam::PDRDragModels::basic::Gk() const { - tmp<volScalarField> tGk + auto tGk = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tGk", - U_.mesh().time().constant(), - U_.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U_.mesh(), - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "tGk", + IOobject::NO_REGISTER, + U_.mesh(), + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); - - volScalarField& Gk = tGk.ref(); + auto& Gk = tGk.ref(); if (on_) { diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C index d2117d1334b2751eb82473882065fda276b2e038..7e5fa4f286f94ffe72569923a16335d9a1dc099f 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C @@ -69,7 +69,8 @@ Foam::XiEqModels::Gulder::~Gulder() Foam::tmp<Foam::volScalarField> Foam::XiEqModels::Gulder::XiEq() const { volScalarField up(sqrt((2.0/3.0)*turbulence_.k())); - const volScalarField& epsilon = turbulence_.epsilon(); + const tmp<volScalarField> tepsilon(turbulence_.epsilon()); + const volScalarField& epsilon = tepsilon(); if (subGridSchelkin_) { diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C index d482f3798311471bf74869af7f5b2a1b49e3737a..04f977f208a0153c558aad647b281a41d4d316b2 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -75,8 +76,10 @@ Foam::XiEqModels::SCOPEXiEq::~SCOPEXiEq() Foam::tmp<Foam::volScalarField> Foam::XiEqModels::SCOPEXiEq::XiEq() const { - const volScalarField& k = turbulence_.k(); - const volScalarField& epsilon = turbulence_.epsilon(); + const tmp<volScalarField> tk(turbulence_.k()); + const volScalarField& k = tk(); + const tmp<volScalarField> tepsilon(turbulence_.epsilon()); + const volScalarField& epsilon = tepsilon(); volScalarField up(sqrt((2.0/3.0)*k)); if (subGridSchelkin_) @@ -91,23 +94,14 @@ Foam::tmp<Foam::volScalarField> Foam::XiEqModels::SCOPEXiEq::XiEq() const volScalarField K(0.157*upBySu/sqrt(Rl)); volScalarField Ma(MaModel.Ma()); - tmp<volScalarField> tXiEq + auto tXiEq = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "XiEq", - epsilon.time().timeName(), - epsilon.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - epsilon.mesh(), - dimensionedScalar(dimless, Zero) - ) + "XiEq", + IOobject::NO_REGISTER, + epsilon.mesh(), + dimensionedScalar(dimless, Zero) ); - volScalarField& xieq = tXiEq.ref(); + auto& xieq = tXiEq.ref(); forAll(xieq, celli) { diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C index 084ffc1aef6112400bc92c14e3f0131495f07311..5d87437f6ca6ce84f9bf8ee13d6bba79373bce8d 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C @@ -78,11 +78,10 @@ bool Foam::XiEqModel::read(const dictionary& XiEqProperties) void Foam::XiEqModel::writeFields() const { //***HGW It is not clear why B is written here - if (Su_.mesh().foundObject<volSymmTensorField>("B")) + const auto* B = Su_.mesh().cfindObject<volSymmTensorField>("B"); + if (B) { - const volSymmTensorField& B = - Su_.mesh().lookupObject<volSymmTensorField>("B"); - B.write(); + B->write(); } } @@ -98,39 +97,26 @@ Foam::XiEqModel::calculateSchelkinEffect(const scalar uPrimeCoef) const const volSymmTensorField& nsv = mesh.lookupObject<volSymmTensorField>("nsv"); - tmp<volScalarField> tN + auto tN = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tN", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimensionedScalar(Nv.dimensions(), Zero) - ) + "tN", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar(Nv.dimensions(), Zero) ); - volScalarField& N = tN.ref(); + auto& N = tN.ref(); + N.primitiveFieldRef() = Nv.primitiveField()*pow(mesh.V(), 2.0/3.0); - volSymmTensorField ns + auto tns = volSymmTensorField::New ( - IOobject - ( - "tns", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "tns", + IOobject::NO_REGISTER, mesh, dimensionedSymmTensor(nsv.dimensions(), Zero) ); + auto& ns = tns.ref(); + ns.primitiveFieldRef() = nsv.primitiveField()*pow(mesh.V(), 2.0/3.0); const volVectorField Uhat diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiGModels/KTS/KTS.C b/applications/solvers/combustion/PDRFoam/XiModels/XiGModels/KTS/KTS.C index c586ce291493213cce0a5ed67aa8e190fa68e518..1b44e520691a1fedd5af02c7c5c1780b1299c2cb 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiGModels/KTS/KTS.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiGModels/KTS/KTS.C @@ -66,7 +66,8 @@ Foam::XiGModels::KTS::~KTS() Foam::tmp<Foam::volScalarField> Foam::XiGModels::KTS::G() const { volScalarField up(sqrt((2.0/3.0)*turbulence_.k())); - const volScalarField& epsilon = turbulence_.epsilon(); + const tmp<volScalarField> tepsilon(turbulence_.epsilon()); + const volScalarField& epsilon = tepsilon(); volScalarField tauEta(sqrt(mag(thermo_.muu()/(thermo_.rhou()*epsilon)))); diff --git a/applications/solvers/combustion/PDRFoam/laminarFlameSpeed/SCOPE/SCOPELaminarFlameSpeed.C b/applications/solvers/combustion/PDRFoam/laminarFlameSpeed/SCOPE/SCOPELaminarFlameSpeed.C index 6c9a7e1085310b57d4ffd048be9b83abde8e0f3e..805c2f59890ff0f8be4dbb2ecfcfb1e6325f6f89 100644 --- a/applications/solvers/combustion/PDRFoam/laminarFlameSpeed/SCOPE/SCOPELaminarFlameSpeed.C +++ b/applications/solvers/combustion/PDRFoam/laminarFlameSpeed/SCOPE/SCOPELaminarFlameSpeed.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -255,24 +256,14 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Su0pTphi scalar phi ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { @@ -304,24 +295,14 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Su0pTphi const volScalarField& phi ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { @@ -358,24 +339,14 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Ma const volScalarField& phi ) const { - tmp<volScalarField> tMa + auto tMa = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Ma", - phi.time().timeName(), - phi.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - phi.mesh(), - dimensionedScalar(dimless, Zero) - ) + "Ma", + IOobject::NO_REGISTER, + phi.mesh(), + dimensionedScalar(dimless, Zero) ); - - volScalarField& ma = tMa.ref(); + auto& ma = tMa.ref(); forAll(ma, celli) { @@ -418,21 +389,12 @@ Foam::laminarFlameSpeedModels::SCOPE::Ma() const { const fvMesh& mesh = psiuReactionThermo_.p().mesh(); - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Ma", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh, - dimensionedScalar("Ma", dimless, Ma(equivalenceRatio_)) - ) + "Ma", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar("Ma", dimless, Ma(equivalenceRatio_)) ); } } diff --git a/applications/solvers/combustion/fireFoam/phrghEqn.H b/applications/solvers/combustion/fireFoam/phrghEqn.H index 482355f12ae15944e27579542cb8c54657db70ec..022006494f84bc8360ee721ca1cbad10768c54f6 100644 --- a/applications/solvers/combustion/fireFoam/phrghEqn.H +++ b/applications/solvers/combustion/fireFoam/phrghEqn.H @@ -10,7 +10,8 @@ if (pimple.dict().getOrDefault("hydrostaticInitialization", false)) "0", mesh, IOobject::MUST_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh ) diff --git a/applications/solvers/combustion/reactingFoam/EEqn.H b/applications/solvers/combustion/reactingFoam/EEqn.H index f92598bbed3fe48e051b4159243853186039edf5..b82fde0266b77234f424969ac4f8d177a28b3c97 100644 --- a/applications/solvers/combustion/reactingFoam/EEqn.H +++ b/applications/solvers/combustion/reactingFoam/EEqn.H @@ -21,6 +21,11 @@ + fvOptions(rho, he) ); + if (MRF.active()) + { + EEqn += fvc::div(MRF.phi(), p); + } + EEqn.relax(); fvOptions.constrain(EEqn); diff --git a/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.H b/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.H index 0ac35141e652c56b14057b8a3f20a19444fa09e7..ef03d5e198cfab5dea8c3ae35c3ff9e7b86a6013 100644 --- a/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.H +++ b/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.H @@ -110,15 +110,6 @@ 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 ( @@ -126,18 +117,22 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new smoluchowskiJumpTFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } + // Mapping functions //- Map (and resize as needed) from self given a mapping object diff --git a/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.H b/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.H index 1ebe0338aee38afbda11ef210e732934c1351363..50862433b390996ba9719a7fbc8000950d723c74 100644 --- a/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.H +++ b/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.H @@ -118,15 +118,6 @@ 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 ( @@ -134,16 +125,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new maxwellSlipUFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/applications/solvers/compressible/rhoCentralFoam/BCs/rho/fixedRhoFvPatchScalarField.H b/applications/solvers/compressible/rhoCentralFoam/BCs/rho/fixedRhoFvPatchScalarField.H index 28587acacaa9cec1b1e2d7f11604195fdb55abbb..85fff0f1c88ea143db5f085b8881f6d38b323640 100644 --- a/applications/solvers/compressible/rhoCentralFoam/BCs/rho/fixedRhoFvPatchScalarField.H +++ b/applications/solvers/compressible/rhoCentralFoam/BCs/rho/fixedRhoFvPatchScalarField.H @@ -135,15 +135,6 @@ 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 ( @@ -151,16 +142,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedRhoFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/applications/solvers/compressible/rhoCentralFoam/createFieldRefs.H b/applications/solvers/compressible/rhoCentralFoam/createFieldRefs.H index 5522ccd6aad263919ece3104ea61ee8ef21aee03..f5a13cc9829f397bcbb194e1e25bcceb9f73c546 100644 --- a/applications/solvers/compressible/rhoCentralFoam/createFieldRefs.H +++ b/applications/solvers/compressible/rhoCentralFoam/createFieldRefs.H @@ -1,10 +1,9 @@ volScalarField& p = thermo.p(); const volScalarField& T = thermo.T(); const volScalarField& psi = thermo.psi(); -const volScalarField& mu = thermo.mu(); bool inviscid(true); -if (max(mu.primitiveField()) > 0.0) +if (max(thermo.mu().cref().primitiveField()) > 0.0) { inviscid = false; } diff --git a/applications/solvers/compressible/rhoPimpleFoam/EEqn.H b/applications/solvers/compressible/rhoPimpleFoam/EEqn.H index ee2a95f2082b2a298e2ac4a53ae7d307191f1e2d..1b27acf827f72205885f58ba8772be01273d33f2 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/EEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/EEqn.H @@ -20,6 +20,11 @@ fvOptions(rho, he) ); + if (MRF.active()) + { + EEqn += fvc::div(MRF.phi(), p); + } + EEqn.relax(); fvOptions.constrain(EEqn); diff --git a/applications/solvers/compressible/rhoSimpleFoam/EEqn.H b/applications/solvers/compressible/rhoSimpleFoam/EEqn.H index 56e78ff63080022531acae263d36f1151f919a95..f791d0a0f63b735040bae3d6e035e3c4379a3753 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/EEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/EEqn.H @@ -14,6 +14,11 @@ fvOptions(rho, he) ); + if (MRF.active()) + { + EEqn += fvc::div(MRF.phi(), p); + } + EEqn.relax(); fvOptions.constrain(EEqn); diff --git a/applications/solvers/compressible/sonicFoam/EEqn.H b/applications/solvers/compressible/sonicFoam/EEqn.H index 73ce8373964bb4226e3ebc575834f05f7fb91936..99fc62490e9efebb44fc672be1cf4928b7bb2ba1 100644 --- a/applications/solvers/compressible/sonicFoam/EEqn.H +++ b/applications/solvers/compressible/sonicFoam/EEqn.H @@ -9,6 +9,11 @@ fvOptions(rho, e) ); + if (MRF.active()) + { + EEqn += fvc::div(MRF.phi(), p); + } + EEqn.relax(); fvOptions.constrain(EEqn); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionTwoPhaseEulerFoam/derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionTwoPhaseEulerFoam/derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.H index 072a0d28075bfa2fa27ebecfc91cd4feba04d9a0..3268eab8d34bd6c114af2a66af4802be4999f62a 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionTwoPhaseEulerFoam/derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionTwoPhaseEulerFoam/derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.H @@ -196,18 +196,6 @@ 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 ( @@ -215,20 +203,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H b/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H index d64974874526bfa4e265a8d24b636e8ede3e9788..a6bd29689c390e39adb6f33b5ff62fe79440dda3 100644 --- a/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H +++ b/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H @@ -85,15 +85,6 @@ 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 ( @@ -101,16 +92,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H b/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H index 6a1357a8204df98b6be9fae955d94fa0c1fb3dca..5256fdfbd0580b3f0748ce7281044aee73417ae2 100644 --- a/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H +++ b/applications/solvers/incompressible/adjointShapeOptimizationFoam/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H @@ -85,15 +85,6 @@ 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 ( @@ -101,16 +92,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/applications/solvers/multiphase/MPPICInterFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/MPPICInterFoam/alphaEqnSubCycle.H index 16269f7c4c9fe07f972266bc58028cc79c020fc4..392a953b6a8f74ebf248207b54595c64071de048 100644 --- a/applications/solvers/multiphase/MPPICInterFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/MPPICInterFoam/alphaEqnSubCycle.H @@ -3,12 +3,7 @@ if (nAlphaSubCycles > 1) dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/VoF/alphaEqnSubCycle.H b/applications/solvers/multiphase/VoF/alphaEqnSubCycle.H index c53d6e106b428d58df1799c11f8694c976c38439..9ca190cb6fc8a116aede702754a5169cb43f2dee 100644 --- a/applications/solvers/multiphase/VoF/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/VoF/alphaEqnSubCycle.H @@ -3,12 +3,7 @@ if (nAlphaSubCycles > 1) dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleAlphaEqnSubCycle.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleAlphaEqnSubCycle.H index 51dd6ea56c2d265d633f5ca15075fcd61be230df..3f4c9779450580bded8afaf9ef93863beeb0f318 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleAlphaEqnSubCycle.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleAlphaEqnSubCycle.H @@ -4,26 +4,19 @@ if (nAlphaSubCycles > 1) { dimensionedScalar totalDeltaT = runTime.deltaT(); - talphaPhi1 = new surfaceScalarField + talphaPhi1.reset ( - IOobject + new surfaceScalarField ( - "alphaPhi1", - runTime.timeName(), - mesh - ), - mesh, - dimensionedScalar(alphaPhi10.dimensions(), Zero) + mesh.newIOobject("alphaPhi1"), + mesh, + dimensionedScalar(alphaPhi10.dimensions(), Zero) + ) ); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFilmFoam/VoFPatchTransfer/VoFPatchTransfer.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFilmFoam/VoFPatchTransfer/VoFPatchTransfer.C index f3af8611d318c7a720b441aa27ab8e1d05d19691..b0c52f0f621dc784b0aeb46d316e800da5c7fd61 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFilmFoam/VoFPatchTransfer/VoFPatchTransfer.C +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFilmFoam/VoFPatchTransfer/VoFPatchTransfer.C @@ -160,7 +160,8 @@ void VoFPatchTransfer::correct const volScalarField& heVoF = thermo.thermo1().he(); const volScalarField& TVoF = thermo.thermo1().T(); const volScalarField CpVoF(thermo.thermo1().Cp()); - const volScalarField& rhoVoF = thermo.thermo1().rho()(); + const tmp<volScalarField> trhoVoF(thermo.thermo1().rho()); + const volScalarField& rhoVoF = trhoVoF(); const volScalarField& alphaVoF = thermo.alpha1(); forAll(patchIDs_, pidi) diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterIsoFoam/compressibleAlphaEqnSubCycle.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterIsoFoam/compressibleAlphaEqnSubCycle.H index 5fda0912c58c090016a887d6f67090a517c7b44e..45d4077f4c14569afad64f2d2cb54a4271531fab 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterIsoFoam/compressibleAlphaEqnSubCycle.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterIsoFoam/compressibleAlphaEqnSubCycle.H @@ -13,26 +13,19 @@ if (nAlphaSubCycles > 1) { dimensionedScalar totalDeltaT = runTime.deltaT(); - talphaPhi1 = new surfaceScalarField + talphaPhi1.reset ( - IOobject + new surfaceScalarField ( - "alphaPhi1", - runTime.timeName(), - mesh - ), - mesh, - dimensionedScalar(alphaPhi10.dimensions(), Zero) + mesh.newIOobject("alphaPhi1"), + mesh, + dimensionedScalar(alphaPhi10.dimensions(), Zero) + ) ); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseMixtureThermo/twoPhaseMixtureThermo.H b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseMixtureThermo/twoPhaseMixtureThermo.H index c712e5a47febe326713874865c56655b857d4a1f..9209cc41d270c36cab90401d6e5b8ef68a1e59d3 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseMixtureThermo/twoPhaseMixtureThermo.H +++ b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseMixtureThermo/twoPhaseMixtureThermo.H @@ -135,14 +135,14 @@ public: virtual volScalarField& he() { NotImplemented; - return thermo1_->he(); + return const_cast<volScalarField&>(volScalarField::null()); } //- Enthalpy/Internal energy [J/kg] virtual const volScalarField& he() const { NotImplemented; - return thermo1_->he(); + return volScalarField::null(); } //- Enthalpy/Internal energy @@ -213,7 +213,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Heat capacity at constant volume [J/kg/K] @@ -236,7 +236,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Gamma = Cp/Cv [] diff --git a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/alphaContactAngle/alphaContactAngleFvPatchScalarField.H b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/alphaContactAngle/alphaContactAngleFvPatchScalarField.H index 2863677d8343895bd7dc383305e271b8c84c9b41..208c574975cfab7d3c3d9db54d4a7925a420f875 100644 --- a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/alphaContactAngle/alphaContactAngleFvPatchScalarField.H +++ b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/alphaContactAngle/alphaContactAngleFvPatchScalarField.H @@ -164,15 +164,6 @@ 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 ( @@ -180,16 +171,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.C b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.C index 77d276973fd32bfd2c40bb27354cc811e8786e89..a190682c4a0eed64d999b9c4b8809ef55b4b66c8 100644 --- a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.C +++ b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.C @@ -99,7 +99,8 @@ Foam::multiphaseMixtureThermo::multiphaseMixtureThermo mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimless, Zero) @@ -998,19 +999,12 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseMixtureThermo::K Foam::tmp<Foam::volScalarField> Foam::multiphaseMixtureThermo::nearInterface() const { - tmp<volScalarField> tnearInt + auto tnearInt = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "nearInterface", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimless, Zero) - ) + "nearInterface", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless, Zero) ); for (const phaseModel& phase : phases_) diff --git a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.H b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.H index 472bd285aaa78c22aaeda7aff011493db9f42808..c5e90dada57e78149bd94872e00c00a2db032a26 100644 --- a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.H +++ b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/multiphaseMixtureThermo/multiphaseMixtureThermo.H @@ -243,14 +243,14 @@ public: virtual volScalarField& he() { NotImplemented; - return phases_[0].thermo().he(); + return const_cast<volScalarField&>(volScalarField::null()); } //- Enthalpy/Internal energy [J/kg] virtual const volScalarField& he() const { NotImplemented; - return phases_[0].thermo().he(); + return volScalarField::null(); } //- Enthalpy/Internal energy @@ -327,7 +327,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Heat capacity at constant volume [J/kg/K] @@ -350,7 +350,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Gamma = Cp/Cv [] diff --git a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/pEqn.H index 107fe3c0ccafc5b9c8de8334dad97c47fee5b8bd..a447b1eca851ec4f80d9ea764065325f7fc3387a 100644 --- a/applications/solvers/multiphase/compressibleMultiphaseInterFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleMultiphaseInterFoam/pEqn.H @@ -28,7 +28,8 @@ forAllConstIters(mixture.phases(), phase) { const rhoThermo& thermo = phase().thermo(); - const volScalarField& rho = thermo.rho()(); + const tmp<volScalarField> trho(thermo.rho()); + const volScalarField& rho = trho(); p_rghEqnComps.set ( diff --git a/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H index b38144700cc079bdfd9156771ad102d7d09a8bd6..ac51ae482edabe5d4b40ce54eb59e8331e579952 100644 --- a/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H @@ -18,12 +18,7 @@ dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField alphaPhiSum ( - IOobject - ( - "alphaPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("alphaPhiSum"), mesh, dimensionedScalar(phi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/driftFluxFoam/relativeVelocityModels/relativeVelocityModel/relativeVelocityModel.C b/applications/solvers/multiphase/driftFluxFoam/relativeVelocityModels/relativeVelocityModel/relativeVelocityModel.C index dc36b96e6a17e1e934c524d4c561eeda5bad5e08..e88b24f32d23db6793e569e82c62609fe3e616b1 100644 --- a/applications/solvers/multiphase/driftFluxFoam/relativeVelocityModels/relativeVelocityModel/relativeVelocityModel.C +++ b/applications/solvers/multiphase/driftFluxFoam/relativeVelocityModels/relativeVelocityModel/relativeVelocityModel.C @@ -158,13 +158,11 @@ Foam::tmp<Foam::volSymmTensorField> Foam::relativeVelocityModel::tauDm() const // Calculate the relative velocity of the continuous phase w.r.t the mean volVectorField Ucm(betad*Udm_/betac); - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField - ( - "tauDm", - betad*sqr(Udm_) + betac*sqr(Ucm) - ) + "tauDm", + IOobject::NO_REGISTER, + betad*sqr(Udm_) + betac*sqr(Ucm) ); } diff --git a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/icoReactingMultiphaseInterFoam.C b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/icoReactingMultiphaseInterFoam.C index b58ceb5c9450ea6095aced3abe70430e20b95157..2f182b5aa077eda392b5fb03657bee572182fa14 100644 --- a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/icoReactingMultiphaseInterFoam.C +++ b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/icoReactingMultiphaseInterFoam.C @@ -130,10 +130,17 @@ int main(int argc, char *argv[]) } } } - #include "UEqn.H" + #include "YEqns.H" #include "TEqn.H" + if (pimple.frozenFlow()) + { + continue; + } + + #include "UEqn.H" + // --- Pressure corrector loop while (pimple.correct()) { diff --git a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/DTRMParticle/DTRMParticle.H b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/DTRMParticle/DTRMParticle.H index 5ad00275d599d3701aca4e189ea497732a6122a8..47c381aa8cab3c5702304b721cb375ad03c6b9a5 100644 --- a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/DTRMParticle/DTRMParticle.H +++ b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/DTRMParticle/DTRMParticle.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2019 OpenCFD Ltd + Copyright (C) 2017-2024 OpenCFD Ltd ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -206,9 +206,13 @@ public: //- Construct as copy DTRMParticle(const DTRMParticle& p); + //- Return a clone + virtual autoPtr<particle> clone() const + { + return particle::Clone(*this); + } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/laserDTRM.C b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/laserDTRM.C index 6524c571aed822a1413512bf7362f585fd3b7105..40c906b57e5a6e84eb9b937f9edebc34cb9c6954 100644 --- a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/laserDTRM.C +++ b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/laserDTRM.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -407,7 +407,8 @@ Foam::radiation::laserDTRM::laserDTRM(const volScalarField& T) mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimPower/dimVolume, Zero) @@ -504,7 +505,8 @@ Foam::radiation::laserDTRM::laserDTRM mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimPower/pow3(dimLength), Zero) @@ -535,42 +537,23 @@ Foam::label Foam::radiation::laserDTRM::nBands() const void Foam::radiation::laserDTRM::calculate() { - tmp<volScalarField> treflectingCells + auto treflectingCells = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "reflectingCellsVol", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar("zero", dimless, -1) - ) + "reflectingCellsVol", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar("zero", dimless, -1) ); - volScalarField& reflectingCellsVol = treflectingCells.ref(); - + auto& reflectingCellsVol = treflectingCells.ref(); - tmp<volVectorField> tnHat + auto tnHat = volVectorField::New ( - new volVectorField - ( - IOobject - ( - "nHat", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedVector(dimless, Zero) - ) + "nHat", + IOobject::NO_REGISTER, + mesh_, + dimensionedVector(dimless, Zero) ); - volVectorField& nHat = tnHat.ref(); + auto& nHat = tnHat.ref(); // Reset the field @@ -686,9 +669,9 @@ void Foam::radiation::laserDTRM::calculate() globalIndex::gatherInplaceOp(lines); - if (Pstream::master()) + if (UPstream::master()) { - OBJstream os(type() + ":particlePath.obj"); + OBJstream os(type() + "-particlePath.obj"); for (label pointi = 0; pointi < lines.size(); pointi += 2) { diff --git a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/localDensityAbsorptionEmission/localDensityAbsorptionEmission.C b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/localDensityAbsorptionEmission/localDensityAbsorptionEmission.C index 72e3d08d90eac7447e2eef1a7719e7d1b72505af..a2cabf5d86b962cb3d6406c8fb1dda67a8c7fa94 100644 --- a/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/localDensityAbsorptionEmission/localDensityAbsorptionEmission.C +++ b/applications/solvers/multiphase/icoReactingMultiphaseInterFoam/laserDTRM/localDensityAbsorptionEmission/localDensityAbsorptionEmission.C @@ -88,25 +88,14 @@ Foam::radiation::localDensityAbsorptionEmission::localDensityAbsorptionEmission Foam::tmp<Foam::volScalarField> Foam::radiation::localDensityAbsorptionEmission::aCont(const label bandI) const { - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(inv(dimLength), Zero) - ) + "a", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(inv(dimLength), Zero) ); - - volScalarField& a = ta.ref(); + auto& a = ta.ref(); forAll(alphaNames_, i) { @@ -121,25 +110,14 @@ Foam::radiation::localDensityAbsorptionEmission::aCont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::localDensityAbsorptionEmission::eCont(const label bandI) const { - tmp<volScalarField> te + auto te = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "e", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(inv(dimLength), Zero) - ) + "e", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(inv(dimLength), Zero) ); - - volScalarField& e = te.ref(); + auto& e = te.ref(); forAll(alphaNames_, i) { @@ -154,22 +132,12 @@ Foam::radiation::localDensityAbsorptionEmission::eCont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::localDensityAbsorptionEmission::ECont(const label bandI) const { - tmp<volScalarField> tE + auto tE = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "E", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); scalarField& E = tE.ref().primitiveFieldRef(); diff --git a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/constant/constant.C b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/constant/constant.C index 8f1fb0f8837ecadf0c54e68d9b4d24b15c6f6a65..121d3a5027ba6d08d7ab8f26aa8d581db681db71 100644 --- a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/constant/constant.C +++ b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/constant/constant.C @@ -171,16 +171,8 @@ Foam::temperaturePhaseChangeTwoPhaseMixtures::constant::TSource() const const volScalarField& T = mesh_.lookupObject<volScalarField>("T"); - tmp<fvScalarMatrix> tTSource - ( - new fvScalarMatrix - ( - T, - dimEnergy/dimTime - ) - ); - - fvScalarMatrix& TSource = tTSource.ref(); + auto tTSource = tmp<fvScalarMatrix>::New(T, dimEnergy/dimTime); + auto& TSource = tTSource.ref(); const twoPhaseMixtureEThermo& thermo = refCast<const twoPhaseMixtureEThermo> diff --git a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.C b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.C index 0cf652dbf53a3ef9a678bc5c0c5362df9fd05816..f877106c19d4461e125b5a2ceef3296cad8f34e7 100644 --- a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.C +++ b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.C @@ -382,7 +382,7 @@ Foam::tmp<Foam::volScalarField> Foam::twoPhaseMixtureEThermo::kappaEff const volScalarField& kappat ) const { - tmp<Foam::volScalarField> kappaEff(kappa() + kappat); + tmp<volScalarField> kappaEff(kappa() + kappat); kappaEff.ref().rename("kappaEff"); return kappaEff; } diff --git a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.H b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.H index cedad45329be80f73b2c026f8ed9d2cc91153751..ab5b58febe39e49871b4e95e70758f98fa21aa72 100644 --- a/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.H +++ b/applications/solvers/multiphase/interCondensatingEvaporatingFoam/temperaturePhaseChangeTwoPhaseMixtures/twoPhaseMixtureEThermo/twoPhaseMixtureEThermo.H @@ -86,14 +86,14 @@ public: virtual volScalarField& he() { NotImplemented; - return p(); + return const_cast<volScalarField&>(volScalarField::null()); } //- Return access to the internal energy field [J/Kg] virtual const volScalarField& he() const { NotImplemented; - return p(); + return volScalarField::null(); } //- Enthalpy/Internal energy @@ -182,7 +182,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Return Cv of the mixture @@ -205,7 +205,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Gamma = Cp/Cv [] diff --git a/applications/solvers/multiphase/interFoam/interMixingFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/interFoam/interMixingFoam/alphaEqnSubCycle.H index 117e593c69ea90d23489a08097e577addc0d7dd8..acbea8e9b9dd91df875b7584e8b8ea5abc959f6e 100644 --- a/applications/solvers/multiphase/interFoam/interMixingFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/interFoam/interMixingFoam/alphaEqnSubCycle.H @@ -3,12 +3,7 @@ if (nAlphaSubCycles > 1) dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/interIsoFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/interIsoFoam/alphaEqnSubCycle.H index 65376d61fe44ce27dc9e5c9a01f4411ea1ea3e0c..3189654bf5cd2a5953f7efde2aaa77da6f765fd1 100644 --- a/applications/solvers/multiphase/interIsoFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/interIsoFoam/alphaEqnSubCycle.H @@ -32,12 +32,7 @@ if (nAlphaSubCycles > 1) dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H index f4643f1df431259d0cd963384c20908d380f544e..895767396947f7e89b06681243cacfe230c8a4ed 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H @@ -21,12 +21,7 @@ dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H b/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H index 02ae8778b9f5e762b9e77f226f053a825010154e..8861561888185ea9ac042d63ff29d1846ecce1a0 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H @@ -50,7 +50,8 @@ runTime.timeName(), mesh, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimVelocity*dimArea, Zero) diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H index 433ae213e2cdadb165688096482ea48ea4feabd7..c84ffe069283cb70f56cbf6fa0b8fcd4cd8380da 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H +++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H @@ -164,15 +164,6 @@ 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 ( @@ -180,16 +171,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C index 9c6ff5d331497837df56fe988709f44588509190..67db0089ab7d855aceb1fa7e65ff0db50644b8b3 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C +++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C @@ -68,8 +68,9 @@ Foam::multiphaseMixture::multiphaseMixture "transportProperties", U.time().constant(), U.db(), - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), @@ -85,9 +86,7 @@ Foam::multiphaseMixture::multiphaseMixture ( "rhoPhi", mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE + mesh_ ), mesh_, dimensionedScalar(dimMass/dimTime, Zero) @@ -101,7 +100,8 @@ Foam::multiphaseMixture::multiphaseMixture mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimless, Zero) @@ -257,19 +257,12 @@ Foam::multiphaseMixture::nuf() const Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseMixture::surfaceTensionForce() const { - tmp<surfaceScalarField> tstf + auto tstf = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - "surfaceTensionForce", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimensionSet(1, -2, -2, 0, 0), Zero) - ) + "surfaceTensionForce", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimensionSet(1, -2, -2, 0, 0), Zero) ); surfaceScalarField& stf = tstf.ref(); @@ -324,12 +317,7 @@ void Foam::multiphaseMixture::solve() { surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh_ - ), + mesh_.newIOobject("rhoPhiSum"), mesh_, dimensionedScalar(rhoPhi_.dimensions(), Zero) ); @@ -552,19 +540,12 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseMixture::K Foam::tmp<Foam::volScalarField> Foam::multiphaseMixture::nearInterface() const { - tmp<volScalarField> tnearInt + auto tnearInt = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "nearInterface", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimless, Zero) - ) + "nearInterface", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless, Zero) ); for (const phase& ph : phases_) @@ -649,12 +630,7 @@ void Foam::multiphaseMixture::solveAlphas volScalarField sumAlpha ( - IOobject - ( - "sumAlpha", - mesh_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("sumAlpha"), mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/applications/solvers/multiphase/reactingMultiphaseEulerFoam/pUf/pEqn.H b/applications/solvers/multiphase/reactingMultiphaseEulerFoam/pUf/pEqn.H index 08d97031b044fd0379c63b333fde4638e4cdc742..b66aabffce6e986fb1db584af0f7772c02eea69b 100644 --- a/applications/solvers/multiphase/reactingMultiphaseEulerFoam/pUf/pEqn.H +++ b/applications/solvers/multiphase/reactingMultiphaseEulerFoam/pUf/pEqn.H @@ -272,10 +272,7 @@ while (pimple.correct()) ).ptr() ); - deleteDemandDrivenData - ( - pEqnComps[phasei].faceFluxCorrectionPtr() - ); + pEqnComps[phasei].faceFluxCorrectionPtr(nullptr); pEqnComps[phasei].relax(); } diff --git a/applications/solvers/multiphase/twoLiquidMixingFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/twoLiquidMixingFoam/alphaEqnSubCycle.H index 0347512d2810cddb89684be89f503b3b66a9da22..5fb0d1604148c6bdf91b155c0e00496db37dca02 100644 --- a/applications/solvers/multiphase/twoLiquidMixingFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/twoLiquidMixingFoam/alphaEqnSubCycle.H @@ -5,12 +5,7 @@ if (nAlphaSubCycles > 1) dimensionedScalar totalDeltaT = runTime.deltaT(); surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - runTime.timeName(), - mesh - ), + mesh.newIOobject("rhoPhiSum"), mesh, dimensionedScalar(rhoPhi.dimensions(), Zero) ); diff --git a/applications/solvers/stressAnalysis/solidDisplacementFoam/tractionDisplacement/tractionDisplacementFvPatchVectorField.H b/applications/solvers/stressAnalysis/solidDisplacementFoam/tractionDisplacement/tractionDisplacementFvPatchVectorField.H index 9c13942f156a4bfbfd1fed50860b6e50a6cb9ebf..b20d6f64ccc3cdac10cdb836f9edf32a86861c3f 100644 --- a/applications/solvers/stressAnalysis/solidDisplacementFoam/tractionDisplacement/tractionDisplacementFvPatchVectorField.H +++ b/applications/solvers/stressAnalysis/solidDisplacementFoam/tractionDisplacement/tractionDisplacementFvPatchVectorField.H @@ -100,15 +100,6 @@ public: const tractionDisplacementFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new tractionDisplacementFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference tractionDisplacementFvPatchVectorField ( @@ -116,16 +107,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new tractionDisplacementFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/applications/solvers/stressAnalysis/solidEquilibriumDisplacementFoam/tractionDisplacementCorrection/tractionDisplacementCorrectionFvPatchVectorField.H b/applications/solvers/stressAnalysis/solidEquilibriumDisplacementFoam/tractionDisplacementCorrection/tractionDisplacementCorrectionFvPatchVectorField.H index 52c2593a1a0de85b6cab7591f0b4f48ee7347301..6590915eb6130ca1339edbb177073e5b05e3ca97 100644 --- a/applications/solvers/stressAnalysis/solidEquilibriumDisplacementFoam/tractionDisplacementCorrection/tractionDisplacementCorrectionFvPatchVectorField.H +++ b/applications/solvers/stressAnalysis/solidEquilibriumDisplacementFoam/tractionDisplacementCorrection/tractionDisplacementCorrectionFvPatchVectorField.H @@ -98,15 +98,6 @@ public: const tractionDisplacementCorrectionFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new tractionDisplacementCorrectionFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference tractionDisplacementCorrectionFvPatchVectorField ( @@ -114,16 +105,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new tractionDisplacementCorrectionFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/applications/test/Function1/case1/constant/function1Properties b/applications/test/Function1/case1/constant/function1Properties index f142db150e586adf55370041c6aae22788a0f4d1..9940ad56d2bd45b671d1bc823afed591dc5c5479 100644 --- a/applications/test/Function1/case1/constant/function1Properties +++ b/applications/test/Function1/case1/constant/function1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/Function1/case1/system/controlDict b/applications/test/Function1/case1/system/controlDict index 745d0b0374126217173bb37b1d0ede3ee8702d88..6ffc896c5327156d0b86e78a45ccf457bf55a6eb 100644 --- a/applications/test/Function1/case1/system/controlDict +++ b/applications/test/Function1/case1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/GAMGAgglomeration/Test-GAMGAgglomeration.C b/applications/test/GAMGAgglomeration/Test-GAMGAgglomeration.C index cf5584e01ff4018c2166d66ef227c8a1912d1b3c..7c09aefb649a55fc88c4e372ac241106166f857f 100644 --- a/applications/test/GAMGAgglomeration/Test-GAMGAgglomeration.C +++ b/applications/test/GAMGAgglomeration/Test-GAMGAgglomeration.C @@ -70,7 +70,10 @@ int main(int argc, char *argv[]) ); labelList cellToCoarse(identity(mesh.nCells())); - labelListList coarseToCell(invertOneToMany(mesh.nCells(), cellToCoarse)); + CompactListList<label> coarseToCell + ( + invertOneToManyCompact(mesh.nCells(), cellToCoarse) + ); ++runTime; @@ -78,16 +81,11 @@ int main(int argc, char *argv[]) { volScalarField scalarAgglomeration ( - IOobject - ( - "agglomeration", - runTime.timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), + mesh.thisDb().newIOobject("agglomeration"), mesh, - dimensionedScalar(dimless, Zero) + Foam::zero{}, + dimless, + fvPatchFieldBase::zeroGradientType() ); scalarField& fld = scalarAgglomeration.primitiveFieldRef(); forAll(fld, celli) @@ -142,31 +140,23 @@ int main(int argc, char *argv[]) } - forAll(addr, fineI) + forAll(addr, finei) { - const labelList& cellLabels = coarseToCell[fineI]; - forAll(cellLabels, i) - { - cellToCoarse[cellLabels[i]] = addr[fineI]; - } + labelUIndList(cellToCoarse, coarseToCell[finei]) = addr[finei]; } - coarseToCell = invertOneToMany(coarseSize, cellToCoarse); + coarseToCell = invertOneToManyCompact(coarseSize, cellToCoarse); // Write agglomeration { volScalarField scalarAgglomeration ( - IOobject - ( - "agglomeration", - runTime.timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), + mesh.thisDb().newIOobject("agglomeration"), mesh, - dimensionedScalar(dimless, Zero) + Foam::zero{}, + dimless, + fvPatchFieldBase::zeroGradientType() ); + scalarField& fld = scalarAgglomeration.primitiveFieldRef(); forAll(fld, celli) { @@ -193,9 +183,9 @@ int main(int argc, char *argv[]) } // Determine coarse cc - forAll(coarseToCell, coarseI) + forAll(coarseToCell, coarsei) { - const labelList& cellLabels = coarseToCell[coarseI]; + const auto& cellLabels = coarseToCell[coarsei]; point coarseCc = average ( @@ -204,10 +194,8 @@ int main(int argc, char *argv[]) meshTools::writeOBJ(str, coarseCc); vertI++; - forAll(cellLabels, i) + for (label celli : cellLabels) { - label celli = cellLabels[i]; - str << "l " << celli+1 << ' ' << vertI << nl; } } diff --git a/applications/test/HashTable2/Test-HashTable2.C b/applications/test/HashTable2/Test-HashTable2.C index 19406361fc5e45fdd7e3c3f9d0d9be8e21b79cd3..bcc6913b8621f098623ee12c8b1b5db6a72efa0c 100644 --- a/applications/test/HashTable2/Test-HashTable2.C +++ b/applications/test/HashTable2/Test-HashTable2.C @@ -124,11 +124,11 @@ int main(int argc, char *argv[]) << "toc: " << flatOutput(table0.toc()) << nl; HashTable<label, label, Hash<label>> table2 - ({ - {3, 10}, - {5, 12}, - {7, 16} - }); + ( + // From key/value pairs + labelList({3, 5, 7}), + labelList({10, 12, 16}) + ); Info<< "table2: " << table2 << nl << "toc: " << flatOutput(table2.toc()) << nl; diff --git a/applications/test/HashTable4/Test-HashTable4.cxx b/applications/test/HashTable4/Test-HashTable4.cxx index e474436870d5e94323bbd9616ac15419644b33ef..12b63ae2913bdc8188baff8c6f7499a80eacd24f 100644 --- a/applications/test/HashTable4/Test-HashTable4.cxx +++ b/applications/test/HashTable4/Test-HashTable4.cxx @@ -206,7 +206,7 @@ int main(int argc, char *argv[]) #endif loopInsert(map, nElem); - (void)timer.cpuTimeIncrement(); + timer.resetCpuTimeIncrement(); unsigned long sum = 0; for (label loopi = 0; loopi < nFind*nLoops; ++loopi) @@ -268,7 +268,7 @@ int main(int argc, char *argv[]) HashSet<label, Hash<label>> map(32); loopInsert(map, nElem); - (void)timer.cpuTimeIncrement(); + timer.resetCpuTimeIncrement(); unsigned long sum = 0; for (label loopi = 0; loopi < nFind*nLoops; ++loopi) diff --git a/applications/test/Hashing2/hashingTests b/applications/test/Hashing2/hashingTests index e47c218eb2660dc7b4d37e37c5668746101581bb..e3883f82ef45f07966aa7819e44ac8f86da7675c 100644 --- a/applications/test/Hashing2/hashingTests +++ b/applications/test/Hashing2/hashingTests @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/IOField/Test-IOField.cxx b/applications/test/IOField/Test-IOField.cxx index d9bfc1e0772f46f79e2c8f0230857b32e73befe6..d294c5ec9d4eebea158fd8695c2ae14592571258 100644 --- a/applications/test/IOField/Test-IOField.cxx +++ b/applications/test/IOField/Test-IOField.cxx @@ -188,8 +188,6 @@ int main(int argc, char *argv[]) argList::addBoolOption("label", "Use label for tests (default)"); argList::addBoolOption("ref", "Test writing by ref"); - #include "addTimeOptions.H" - #include "setRootCase.H" #include "createTime.H" #include "createPolyMesh.H" @@ -280,7 +278,6 @@ int main(int argc, char *argv[]) { IOFieldRef<vector>(ioOutput, mesh.points()).write(); } - } diff --git a/applications/test/IndirectList/Test-IndirectList.C b/applications/test/IndirectList/Test-IndirectList.C index dae630976a3033b465c16472b7b33a94d6f03f24..bf174fc570aa857b053169b47260fcbf776751b7 100644 --- a/applications/test/IndirectList/Test-IndirectList.C +++ b/applications/test/IndirectList/Test-IndirectList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -156,29 +156,24 @@ int main(int argc, char *argv[]) os.writeEntry("idl3", idl3); } - if (Pstream::parRun()) + if (UPstream::parRun()) { - if (Pstream::master()) + if (UPstream::master()) { Pout<< "full: " << flatOutput(idl3.values()) << nl << "send: " << flatOutput(idl3) << endl; - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - OPstream toSlave(Pstream::commsTypes::scheduled, proci); - toSlave << idl3; + OPstream::send(idl3, proci); } } else { // From master - IPstream fromMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); + List<label> recv; - List<label> recv(fromMaster); + IPstream::recv(recv, UPstream::masterNo()); Pout<<"recv: " << flatOutput(recv) << endl; } diff --git a/applications/test/OCountStream/Make/files b/applications/test/OCountStream/Make/files index 87df932eeaf1e356c69af35ba059feb2e9289144..504d53099d29e78e3f82515333a79a4b38116abe 100644 --- a/applications/test/OCountStream/Make/files +++ b/applications/test/OCountStream/Make/files @@ -1,3 +1,3 @@ -Test-OCountStream.C +Test-OCountStream.cxx EXE = $(FOAM_USER_APPBIN)/Test-OCountStream diff --git a/applications/test/OCountStream/Test-OCountStream.C b/applications/test/OCountStream/Test-OCountStream.cxx similarity index 96% rename from applications/test/OCountStream/Test-OCountStream.C rename to applications/test/OCountStream/Test-OCountStream.cxx index 85ffab4e0c21183f3b98b9d82576dcc015dbc856..1d073efe43b81aafee1cad876b3172fc54c2b520 100644 --- a/applications/test/OCountStream/Test-OCountStream.C +++ b/applications/test/OCountStream/Test-OCountStream.cxx @@ -65,11 +65,11 @@ int main(int argc, char *argv[]) OCountStream cnt; OCharStream cstr; - OStringStream str; + OStringStream sstr; ocountstream plain; generateOutput(cstr); - generateOutput(str); + generateOutput(sstr); generateOutput(cnt); generateOutput(plain); @@ -77,7 +77,7 @@ int main(int argc, char *argv[]) Info<< "counter state: " << (cnt.stdStream().rdstate()) << nl << "via char-stream: " << label(cstr.view().size()) << " chars" << nl - << "via string-stream: " << str.str().size() << " chars" << nl + << "via string-stream: " << label(sstr.count()) << " chars" << nl << "via ocountstream: " << plain.count() << " chars" << endl; fileName outputName; diff --git a/applications/test/OFstream/Test-OFstream.cxx b/applications/test/OFstream/Test-OFstream.cxx index ac108699b0febec6aa267d5740a4105878a4942c..62d371ae8aeaa03eb616c06f7ef279d9b1e23bf6 100644 --- a/applications/test/OFstream/Test-OFstream.cxx +++ b/applications/test/OFstream/Test-OFstream.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,10 +32,14 @@ Description #include "IOstreams.H" #include "OSspecific.H" #include "argList.H" +#include "clock.H" +#include "Switch.H" #include "ListOps.H" using namespace Foam; +std::string time_stamp; + void listFiles(const fileName& dir) { wordList files = ListOps::create<word> @@ -55,25 +59,150 @@ void listFiles(const fileName& dir) } +OSstream& printInfo(OFstream& os) +{ + InfoErr + << "open: " << os.name() << nl + << "appending: " << Switch::name(os.is_appending()) + << " tellp: "<< os.stdStream().tellp() + << " gz: " << Switch::name(os.compression()) << nl; + + return InfoErr.stream(); +} + + +void withHeader(OFstream& os) +{ + const auto tellp = os.stdStream().tellp(); + + if (tellp <= 0) + { + InfoErr + << "Add header" << nl; + os << "HEADER: " << time_stamp.c_str() << nl; + } +} + + +template<class OSstreamType> +void generateLines(OSstreamType& os, label count = 1) +{ + for (label line = 1; line <= count; ++line) + { + os << "[" << line + << "] =============================================" << nl; + } +} + + +template<class OSstreamType> +void generateContent +( + OSstreamType& os, + const bool with_seekend, + const bool test_overwrite = false, + const int64_t seek_out = -1 +) +{ + if (with_seekend) + { + os.stdStream().seekp(0, std::ios_base::end); + // OR? os.seek_end(); + } + + printInfo(os); + + withHeader(os); + + if (test_overwrite && seek_out >= 0) + { + InfoErr<< "... seekp(" << seek_out << ")" << nl; + + auto& oss = os.stdStream(); + + // Actually std::streampos, but cannot increment that + + int64_t pos(seek_out); + + const int64_t tellp_end = oss.tellp(); + + if (pos >= 0 && pos < tellp_end) + { + InfoErr + << "... fill from " << label(pos) + << " to " << label(tellp_end) << nl; + + oss.seekp(pos); + + while (pos < tellp_end) + { + // Fill with char 'X', rely on streambuf buffering + oss << 'X'; + ++pos; + } + + oss.seekp(seek_out); + os << "More content [at " << seek_out << ']' << endl; + } + } + + generateLines(os, 4); + + printInfo(os) + << "... sleep" << endl; + + listFiles(os.name().path()); + + sleep(2); + + os << "[new content] +++++++++++++++++++++++++++++++++++" << endl; +} + + +template<class OSstreamType> +void generateOverwriteContent +( + OSstreamType& os, + const bool with_seekend, + const int64_t seek_out = -1 +) +{ + generateContent(os, with_seekend, true, seek_out); +} + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Main program: int main(int argc, char *argv[]) { argList::addBoolOption("gz", "Use compression"); - argList::addBoolOption("append", "Use append mode"); + argList::addBoolOption("append-app", "Use append app mode"); + argList::addBoolOption("append-ate", "Use append ate mode"); + argList::addBoolOption("seekend", "Seek to end after non-append open"); + argList::addOption("seek", "value", "Seek from start (default: 100)"); argList::addBoolOption("atomic", "Use atomic"); argList::addBoolOption("keep", "Do not remove test directory"); argList::addOption("write", "file", "test writing to file"); #include "setRootCase.H" + // Same time-stamp for all generated files + time_stamp = clock::dateTime(); + const fileName baseDir("Test-OFstream-directory"); Foam::mkDir(baseDir); InfoErr<< "mkdir: " << baseDir << endl; + Info<< "start:" << nl; + listFiles(baseDir); + + const bool with_seekend = args.found("seekend"); + + const int seek_out = args.getOrDefault<int>("seek", 100); + IOstreamOption streamOpt; if (args.found("gz")) @@ -83,10 +212,11 @@ int main(int argc, char *argv[]) IOstreamOption::appendType append = ( - args.found("append") - ? IOstreamOption::APPEND - : IOstreamOption::NON_APPEND + args.found("append-app") ? IOstreamOption::APPEND_APP + : args.found("append-ate") ? IOstreamOption::APPEND_ATE + : IOstreamOption::NO_APPEND ); + IOstreamOption::atomicType atomic = ( args.found("atomic") @@ -97,7 +227,6 @@ int main(int argc, char *argv[]) { OFstream(baseDir/"dummy")() << "Some file content" << endl; - Foam::ln("dummy", baseDir/"Test2.txt"); Foam::ln("dummy", baseDir/"Test3.txt"); Foam::ln("dummy", baseDir/"Test4.txt"); Foam::ln("dummy", baseDir/"Test4.txt.gz"); @@ -114,16 +243,31 @@ int main(int argc, char *argv[]) append ); - os << "=========================" << endl; + generateOverwriteContent(os, with_seekend, seek_out); + } - InfoErr<< "open: " << os.name() << endl; - InfoErr<< "... sleep" << endl; + { + OFstream os + ( + atomic, + baseDir/"Test1-app.txt", + streamOpt, + IOstreamOption::APPEND_APP + ); - listFiles(baseDir); + generateOverwriteContent(os, with_seekend, seek_out); + } - sleep(2); + { + OFstream os + ( + atomic, + baseDir/"Test1-ate.txt", + streamOpt, + IOstreamOption::APPEND_ATE + ); - os << "+++++++++++++++++++++++++++++++++++" << endl; + generateOverwriteContent(os, with_seekend, seek_out); } { @@ -132,39 +276,21 @@ int main(int argc, char *argv[]) atomic, baseDir/"Test2.txt", streamOpt - // NON_APPEND ); - os << "=========================" << endl; - - InfoErr<< "open: " << os.name() << endl; - InfoErr<< "... sleep" << endl; - - listFiles(baseDir); - - sleep(2); - - os << "+++++++++++++++++++++++++++++++++++" << endl; + generateContent(os, with_seekend); } + { OFstream os ( atomic, baseDir/"Test3.txt", streamOpt, - IOstreamOption::APPEND + IOstreamOption::APPEND_APP ); - os << "=========================" << endl; - - InfoErr<< "open: " << os.name() << endl; - InfoErr<< "... sleep" << endl; - - listFiles(baseDir); - - sleep(2); - - os << "+++++++++++++++++++++++++++++++++++" << endl; + generateContent(os, with_seekend, with_seekend); } { OFstream os @@ -174,35 +300,17 @@ int main(int argc, char *argv[]) IOstreamOption::COMPRESSED ); - os << "=========================" << endl; - - InfoErr<< "open: " << os.name() << endl; - InfoErr<< "... sleep" << endl; - - listFiles(baseDir); - - sleep(2); - - os << "+++++++++++++++++++++++++++++++++++" << endl; + // No seekend with COMPRESSED + generateContent(os, false); } { OFstream os ( IOstreamOption::ATOMIC, baseDir/"Test5.txt" - // ASCII UNCOMPRESSED NON_APPEND ); - os << "=========================" << endl; - - InfoErr<< "open: " << os.name() << endl; - InfoErr<< "... sleep" << endl; - - listFiles(baseDir); - - sleep(2); - - os << "+++++++++++++++++++++++++++++++++++" << endl; + generateContent(os, with_seekend); } Info<< nl << "done:" << endl; diff --git a/applications/test/PDRblockMesh/box0/system/PDRblockMeshDict b/applications/test/PDRblockMesh/box0/system/PDRblockMeshDict index cba7f4354bb704cea84f95f4822a5eea2c39a73a..e476cd9650ecdd160b70f7515c74510bab3fc5fc 100644 --- a/applications/test/PDRblockMesh/box0/system/PDRblockMeshDict +++ b/applications/test/PDRblockMesh/box0/system/PDRblockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/PDRblockMesh/box0/system/controlDict b/applications/test/PDRblockMesh/box0/system/controlDict index f1a3ed8af8c1970948220e299229cd10b5dfeff2..146750221a6228c971ffb1670176c11cf14dc713 100644 --- a/applications/test/PDRblockMesh/box0/system/controlDict +++ b/applications/test/PDRblockMesh/box0/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/PDRblockMesh/box0/system/fvSchemes b/applications/test/PDRblockMesh/box0/system/fvSchemes index d56caeca4f9ee20c134676c7b3397a92025cf9a5..4862a13b3d5aab46559aeb7dfb547f56beb0878f 100644 --- a/applications/test/PDRblockMesh/box0/system/fvSchemes +++ b/applications/test/PDRblockMesh/box0/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/PDRblockMesh/box0/system/fvSolution b/applications/test/PDRblockMesh/box0/system/fvSolution index 8eca38b352b10ab8996bf4a331b5b2bcc51e1694..eeec2dc69ebd1c4d70ce49e02d085da6fa269fe8 100644 --- a/applications/test/PDRblockMesh/box0/system/fvSolution +++ b/applications/test/PDRblockMesh/box0/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/PatchFunction1/function1Properties b/applications/test/PatchFunction1/function1Properties index 8f3cecb0e114d46cbc2eb64ea2cd3485b90285ea..57ade1f8320b4ee7752bca60dc6cd746394f2528 100644 --- a/applications/test/PatchFunction1/function1Properties +++ b/applications/test/PatchFunction1/function1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/PatchTools/Test-PatchTools.C b/applications/test/PatchTools/Test-PatchTools.C index c7222340060b583322cafd80a7d8a1af217ef0c2..f63cfeffcd34f3af60b3c08d5ebd522d8c528b53 100644 --- a/applications/test/PatchTools/Test-PatchTools.C +++ b/applications/test/PatchTools/Test-PatchTools.C @@ -67,8 +67,8 @@ using namespace Foam; // // (note:without calculating pointNormals // // to avoid them being stored) // -// tmp<pointField> textrudeN(new pointField(p.nPoints(), Zero)); -// pointField& extrudeN = textrudeN(); +// auto textrudeN = tmp<pointField>::New(p.nPoints(), Zero); +// auto& extrudeN = textrudeN.ref(); // { // const faceList& localFaces = p.localFaces(); // const vectorField& faceAreas = mesh.faceAreas(); @@ -201,7 +201,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - #include "addTimeOptions.H" argList::addArgument("patch"); #include "setRootCase.H" #include "createTime.H" diff --git a/applications/test/PtrList/Test-PtrList.C b/applications/test/PtrList/Test-PtrList.C index b10794ffb0933a420dd03aef5ea7c4cd210514ee..2df2c5cbf038e3fa16580531f28c4b0ffa17ec70 100644 --- a/applications/test/PtrList/Test-PtrList.C +++ b/applications/test/PtrList/Test-PtrList.C @@ -412,7 +412,7 @@ int main(int argc, char *argv[]) } { - Info<< "range-for of list (" << list1.count() << '/' + Info<< "range-for of list (" << list1.count_nonnull() << '/' << list1.size() << ") non-null entries" << nl << "(" << nl; for (const auto& item : list1) diff --git a/applications/test/boundaryMeshEntries/Test-boundaryMeshEntries.C b/applications/test/boundaryMeshEntries/Test-boundaryMeshEntries.C index 35b4248010fe551407100c2c7b0333bf217e171d..61fda465e1ec57fe7d43079986462d1026b79d70 100644 --- a/applications/test/boundaryMeshEntries/Test-boundaryMeshEntries.C +++ b/applications/test/boundaryMeshEntries/Test-boundaryMeshEntries.C @@ -53,46 +53,37 @@ int main(int argc, char *argv[]) #include "setRootCase.H" #include "createTime.H" - fileName coherentInst; + word coherentInst; coherentInst = ( runTime.findInstance ( polyMesh::meshSubDir, "coherent", - IOobject::READ_IF_PRESENT + IOobject::READ_IF_PRESENT, + word::null, // No stop instance + false // No "constant" fallback (word::null instead) ) ); - // Unfortunately with READ_IF_PRESENT, cannot tell if the file - // was actually found or not - - Info<< "check: " << (coherentInst/polyMesh::meshSubDir/"coherent") << nl; - - if (!Foam::isFile(coherentInst/polyMesh::meshSubDir/"coherent")) - { - coherentInst.clear(); - } - - Info<< "found coherent: " << coherentInst << nl; + Info<< "Found coherent \"" << coherentInst << '"' << nl; PtrList<entry> entries; if (!coherentInst.empty()) { - IOdictionary coherent - ( - IOobject + dictionary coherent = + IOdictionary::readContents ( - "coherent", - coherentInst, - polyMesh::meshSubDir, - runTime, - IOobject::MUST_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ) - ); + IOobject + ( + "coherent", + coherentInst, + polyMesh::meshSubDir, + runTime, + IOobject::MUST_READ + ) + ); ITstream& is = coherent.lookup("boundary"); is >> entries; @@ -105,7 +96,7 @@ int main(int argc, char *argv[]) Info<< "size: " << polyBoundaryMeshEntries::patchSizes(entries) << nl; Info<< nl; - fileName boundaryInst; + word boundaryInst; boundaryInst = ( runTime.findInstance @@ -116,7 +107,7 @@ int main(int argc, char *argv[]) ) ); - Info<< "found boundary: " << boundaryInst << nl; + Info<< "Found boundary: \"" << boundaryInst << '"' << nl; polyBoundaryMeshEntries pbm ( diff --git a/applications/test/checkDecomposePar/Test-checkDecomposePar.C b/applications/test/checkDecomposePar/Test-checkDecomposePar.C index 8019fd0d4594fba624b500b878a2105de0de9d05..6a15fdcc08356457e25face5fbf0ff236ef0587c 100644 --- a/applications/test/checkDecomposePar/Test-checkDecomposePar.C +++ b/applications/test/checkDecomposePar/Test-checkDecomposePar.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -24,7 +24,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Application - checkDecomposePar + Test-checkDecomposePar Group grpParallelUtilities @@ -35,8 +35,9 @@ Description \*---------------------------------------------------------------------------*/ -#include "OSspecific.H" -#include "fvCFD.H" +#include "argList.H" +#include "timeSelector.H" +#include "polyMesh.H" #include "cpuTime.H" #include "IFstream.H" #include "regionProperties.H" @@ -44,10 +45,14 @@ Description #include "decompositionInformation.H" #include "decompositionModel.H" +using namespace Foam; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // int main(int argc, char *argv[]) { + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( "Check decomposition from kaffpa (KaHIP) output" @@ -65,9 +70,6 @@ int main(int argc, char *argv[]) argList::addArgument("kaffpa-output-file"); - // Include explicit constant options, have zero from time range - timeSelector::addOptions(true, false); - #include "setRootCase.H" const auto decompFile = args.get<fileName>(1); @@ -75,8 +77,8 @@ int main(int argc, char *argv[]) // Set time from database #include "createTime.H" - // Allow override of time - instantList times = timeSelector::selectIfPresent(runTime, args); + // Allow override of time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); // Allow override of decomposeParDict location const fileName decompDictFile = @@ -95,7 +97,7 @@ int main(int argc, char *argv[]) Info<< "\n\nDecomposing mesh " << regionName << nl << endl; Info<< "Create mesh..." << flush; - fvMesh mesh + polyMesh mesh ( IOobject ( @@ -111,7 +113,7 @@ int main(int argc, char *argv[]) Info<< " nCells = " << mesh.nCells() << endl; // Expected format is a simple ASCII list - cellToProc.setSize(mesh.nCells()); + cellToProc.resize(mesh.nCells()); { IFstream is(decompFile); @@ -123,15 +125,9 @@ int main(int argc, char *argv[]) const label nDomains = max(cellToProc) + 1; + // Local mesh connectivity CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - false, - cellCells - ); + globalMeshData::calcCellCells(mesh, cellCells); decompositionInformation info ( diff --git a/applications/test/checkIOspeed/Make/files b/applications/test/checkIOspeed/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..67cce419cf05cc17c43473347c4ce90d5771eb95 --- /dev/null +++ b/applications/test/checkIOspeed/Make/files @@ -0,0 +1,3 @@ +Test-checkIOspeed.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-checkIOspeed diff --git a/applications/test/checkIOspeed/Make/options b/applications/test/checkIOspeed/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..18b23366ad857a602a75f3178b792eeb48561478 --- /dev/null +++ b/applications/test/checkIOspeed/Make/options @@ -0,0 +1,7 @@ +EXE_INC = \ + -I$(LIB_SRC)/finiteVolume/lnInclude \ + -I$(LIB_SRC)/mesh/blockMesh/lnInclude + +EXE_LIBS = \ + -lfiniteVolume \ + -lblockMesh diff --git a/applications/test/checkIOspeed/Test-checkIOspeed.cxx b/applications/test/checkIOspeed/Test-checkIOspeed.cxx new file mode 100644 index 0000000000000000000000000000000000000000..a92159dde3ba84d029ba5e679318013763f104f9 --- /dev/null +++ b/applications/test/checkIOspeed/Test-checkIOspeed.cxx @@ -0,0 +1,400 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Application + Test-checkIOspeed + +Description + Simple test of file writing, including timings + +\*---------------------------------------------------------------------------*/ + +#include "argList.H" +#include "profiling.H" +#include "clockTime.H" + +#include "fileName.H" +#include "fileOperation.H" +#include "IOstreams.H" +#include "OSspecific.H" +#include "globalIndex.H" +#include "volFields.H" +#include "IOField.H" +#include "PDRblock.H" + +// Not really great since CoherentMesh only works with reading! +#ifdef USE_COHERENT +#include "OFCstream.H" +#include "SliceStreamRepo.H" +#endif + +#include <numeric> + +using namespace Foam; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// Main program: + +int main(int argc, char *argv[]) +{ + argList::addNote("Rewrites fields multiple times"); + + argList::noFunctionObjects(); // Disallow function objects + argList::noCheckProcessorDirectories(); + + argList::addVerboseOption("additional verbosity"); + argList::addOption + ( + "output", + "N", + "Begin output iteration (default: 10000)" + ); + argList::addOption + ( + "count", + "N", + "Number of writes (default: 1)" + ); + argList::addOption + ( + "fields", + "N", + "Number of fields to write (default: 1)" + ); + argList::addOption + ( + "global", + "N", + "Global field size" + ); + argList::addOption + ( + "local", + "N", + "Local fields size (default: 1000)" + ); + argList::addOption + ( + "mesh", + "(nx ny nz)", + "Create with a mesh" + ); + argList::addOption + ( + "exclude", + "(int ... )", + "zero-sized on ranks with specified modulo" + ); + + argList::addBoolOption("coherent", "Force coherent output"); + + #include "setRootCase.H" + #include "createTime.H" + + const label firstOutput = args.getOrDefault("output", 10000); + const label nOutput = args.getOrDefault("count", 1); + const label nFields = args.getOrDefault("fields", 1); + labelVector meshCells(0, 0, 0); + + const int verbose = args.verbose(); + + const bool useCoherent = args.found("coherent"); + + labelList excludes; + args.readListIfPresent("exclude", excludes); + + bool writeOnProc = true; + + const label myProci = UPstream::myProcNo(); + + for (const label excl : excludes) + { + if (excl > 1 && myProci > 0 && (myProci % excl) == 0) + { + writeOnProc = false; + break; + } + } + + const label nProcsEff = + returnReduce((writeOnProc ? 1 : 0), sumOp<label>()); + + Info<< "Output " << nProcsEff + << "/" << UPstream::nProcs() + << " ranks" << nl; + + + if (args.readIfPresent("mesh", meshCells)) + { + if (!writeOnProc) + { + meshCells = Zero; + } + + PDRblock block(boundBox(point::zero, point::one), meshCells); + + // Advance time + // - coherent currently still needs to read the mesh itself! + runTime.setTime(firstOutput, firstOutput); + + IOobject meshIO + ( + polyMesh::defaultRegion, + runTime.timeName(), + runTime, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + + autoPtr<polyMesh> pmeshPtr(block.innerMesh(meshIO)); + + fvMesh mesh + ( + meshIO, + pointField(pmeshPtr->points()), + faceList(pmeshPtr->faces()), + labelList(pmeshPtr->faceOwner()), + labelList(pmeshPtr->faceNeighbour()) + ); + + pmeshPtr.reset(nullptr); + + const label fieldSize = mesh.nCells(); + + const globalIndex giCells(fieldSize); + + // Create fields + Info<< nl << "Create " << nFields << " fields" << nl + << "field-size:" << fieldSize + << " total-size:" << giCells.totalSize() << nl; + + // Dimensioned field (no proc boundaries) + + PtrList<volScalarField::Internal> fields(nFields); + + { + IOobject io + ( + "field", + runTime.timeName(), + runTime, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + + forAll(fields, fieldi) + { + io.resetHeader("field" + Foam::name(fieldi)); + + fields.set + ( + fieldi, + new volScalarField::Internal(io, mesh, dimless) + ); + + auto& fld = fields[fieldi]; + std::iota(fld.begin(), fld.end(), scalar(0)); + } + } + + IOstreamOption streamOpt(IOstreamOption::BINARY); + + if (useCoherent) + { + #ifdef USE_COHERENT + streamOpt.format(IOstreamOption::COHERENT); + runTime.writeFormat(IOstreamOption::COHERENT); + + mesh.writeObject(streamOpt, true); + + Info<< nl + << "Specified -coherent (instance: " + << mesh.pointsInstance() << ")" << endl; + + const auto& coherent = CoherentMesh::New(mesh); + + Info<< " points = " + << coherent.globalPointOffsets().totalSize() << nl + << " cells = " + << coherent.globalCellOffsets().totalSize() << nl + << " patches = " + << coherent.nNonProcessorPatches() << nl; + + #else + Info<< "Warning: -coherent ignored" << nl; + #endif + } + + Info<< nl + << "Writing " << nOutput << " times starting at " + << firstOutput << nl; + + clockTime timing; + + if (verbose) Info<< "Time:"; + + for + ( + label timeIndex = firstOutput, count = 0; + count < nOutput; + ++timeIndex, ++count + ) + { + runTime.setTime(timeIndex, timeIndex); + if (verbose) Info<< ' ' << runTime.timeName() << flush; + runTime.writeNow(); + + for (const auto& fld : fields) + { + fld.regIOobject::writeObject(streamOpt, writeOnProc); + } + } + + if (useCoherent) + { + #ifdef USE_COHERENT + SliceStreamRepo::closeInstance(); + #endif + } + + if (verbose) Info<< nl; + Info<< nl << "Writing took " + << timing.timeIncrement() << "s" << endl; + + Info<< nl + << "Cleanup newly generated files with" << nl << nl + << " foamListTimes -rm -time " + << firstOutput << ":" << nl + << " foamListTimes -processor -rm -time " + << firstOutput << ":" << nl; + } + else + { + label fieldSize = 1000; + + if (args.readIfPresent("global", fieldSize)) + { + fieldSize /= nProcsEff; + } + else + { + args.readIfPresent("local", fieldSize); + } + + if (!writeOnProc) + { + fieldSize = 0; + } + + const globalIndex giCells(fieldSize); + + // Create fields + Info<< nl << "Create " << nFields << " fields" << nl + << "field-size:" << fieldSize + << " total-size:" << giCells.totalSize() << nl; + + + PtrList<IOField<scalar>> fields(nFields); + + { + IOobject io + ( + "field", + runTime.timeName(), + runTime, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + + forAll(fields, fieldi) + { + io.resetHeader("field" + Foam::name(fieldi)); + + fields.set + ( + fieldi, + new IOField<scalar>(io, fieldSize) + ); + + auto& fld = fields[fieldi]; + std::iota(fld.begin(), fld.end(), scalar(0)); + } + } + + IOstreamOption streamOpt(IOstreamOption::BINARY); + + if (useCoherent) + { + Info<< "Warning: -coherent ignored" << nl; + } + + Info<< nl + << "Writing " << nOutput << " times starting at " + << firstOutput << nl; + + clockTime timing; + + if (verbose) Info<< "Time:"; + + for + ( + label timeIndex = firstOutput, count = 0; + count < nOutput; + ++timeIndex, ++count + ) + { + runTime.setTime(timeIndex, timeIndex); + if (verbose) Info<< ' ' << runTime.timeName() << flush; + runTime.writeNow(); + + for (const auto& fld : fields) + { + fld.regIOobject::writeObject(streamOpt, writeOnProc); + } + } + + if (verbose) Info<< nl; + Info<< nl << "Writing took " + << timing.timeIncrement() << "s" << endl; + + Info<< nl + << "Cleanup newly generated files with" << nl << nl + << " foamListTimes -rm -time " + << firstOutput << ":" << nl + << " foamListTimes -processor -rm -time " + << firstOutput << ":" << nl; + } + + + Info<< "\nEnd\n" << endl; + return 0; +} + + +// ************************************************************************* // diff --git a/applications/test/codeStream/codeStreamDict1 b/applications/test/codeStream/codeStreamDict1 index 56ed04cde34cc4469689332491e674cb6390bc56..29ad9906475a11f67b0e4ff430e05e18595c66ec 100644 --- a/applications/test/codeStream/codeStreamDict1 +++ b/applications/test/codeStream/codeStreamDict1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/compoundToken1/testDict1 b/applications/test/compoundToken1/testDict1 index b41a1c0f8163517c7c295fcd7aad34dd92a0a8b4..e66b1ac5588e50f399aa3ec3f120368099f210b8 100644 --- a/applications/test/compoundToken1/testDict1 +++ b/applications/test/compoundToken1/testDict1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/compoundToken1/testDict2 b/applications/test/compoundToken1/testDict2 index 36b1b81094e83803f8a7ada5475893d6e537a66b..f989f3e6a5511495fa0c0fd6b00cf359d7654cb4 100644 --- a/applications/test/compoundToken1/testDict2 +++ b/applications/test/compoundToken1/testDict2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCase0/constant/coordinateSystems b/applications/test/coordinateSystem/testCase0/constant/coordinateSystems index a76791014fb408eaa748c886cd6c7007d28e8243..3e88df8f6f54850c53f7c59ef9cbda8c680acae2 100644 --- a/applications/test/coordinateSystem/testCase0/constant/coordinateSystems +++ b/applications/test/coordinateSystem/testCase0/constant/coordinateSystems @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCase0/system/controlDict b/applications/test/coordinateSystem/testCase0/system/controlDict index 65a91311126c588944156180b479f92edfce3562..ac5d5639b5198afb548a80cdd0ad2889635d8f5e 100644 --- a/applications/test/coordinateSystem/testCase0/system/controlDict +++ b/applications/test/coordinateSystem/testCase0/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCase1/constant/coordinateSystems b/applications/test/coordinateSystem/testCase1/constant/coordinateSystems index 15c7d061d538744842519d83cdf408d55b498c84..0f507f8ae1513c28110e90ab28f7623e7dfed3ee 100644 --- a/applications/test/coordinateSystem/testCase1/constant/coordinateSystems +++ b/applications/test/coordinateSystem/testCase1/constant/coordinateSystems @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCase1/system/controlDict b/applications/test/coordinateSystem/testCase1/system/controlDict index 65a91311126c588944156180b479f92edfce3562..ac5d5639b5198afb548a80cdd0ad2889635d8f5e 100644 --- a/applications/test/coordinateSystem/testCase1/system/controlDict +++ b/applications/test/coordinateSystem/testCase1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCsys1 b/applications/test/coordinateSystem/testCsys1 index bb6752d23fce300518e6e6fc48ef4b47ba2a847e..3def73caa8bfc059af33f3caf730831b5760b068 100644 --- a/applications/test/coordinateSystem/testCsys1 +++ b/applications/test/coordinateSystem/testCsys1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/coordinateSystem/testCsys2 b/applications/test/coordinateSystem/testCsys2 index 4cddba27704353017de8f3fec20b06bd51a76c6a..18c24bdfe529d8b44f3e57aa203133a17304fd09 100644 --- a/applications/test/coordinateSystem/testCsys2 +++ b/applications/test/coordinateSystem/testCsys2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/cstring/Make/files b/applications/test/cstring/Make/files index eb7e33dc8bc8ccebb6c95b2cb39d023a011e2d23..f98b8f1b1a6a12fc8b7dbe72a9a92fd7ea733edc 100644 --- a/applications/test/cstring/Make/files +++ b/applications/test/cstring/Make/files @@ -1,3 +1,3 @@ -Test-cstring.C +Test-cstring.cxx EXE = $(FOAM_USER_APPBIN)/Test-cstring diff --git a/applications/test/cstring/Test-cstring.C b/applications/test/cstring/Test-cstring.cxx similarity index 87% rename from applications/test/cstring/Test-cstring.C rename to applications/test/cstring/Test-cstring.cxx index 095a2253a127d46f60fde973ec5ef35168396197..0adbb54d30d886ea25e38b185487fb84300ca6f6 100644 --- a/applications/test/cstring/Test-cstring.C +++ b/applications/test/cstring/Test-cstring.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2017 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -81,8 +81,7 @@ int print(char *argv[]) int main(int argc, char *argv[]) { - DynamicList<string> dynlst; - dynlst.reserve(16); + DynamicList<string> dynlst(16); dynlst.push_back("string1 with content"); dynlst.push_back("string2 other content"); @@ -104,6 +103,18 @@ int main(int argc, char *argv[]) Info<< nl; } + { + CStringList inC({ "string1", "string2", "string3", "end" }); + + Info<< "null-terminated string list from " << nl; + print(inC.strings()); + + Info<< "sublist: starting at " << inC.size()/2 << nl; + print(inC.strings(inC.size()/2)); + + Info<< nl; + } + { string testInput ( @@ -112,7 +123,7 @@ int main(int argc, char *argv[]) ); Info<< testInput << nl; - SubStrings<string> args = stringOps::splitSpace(testInput); + auto args = stringOps::splitSpace(testInput); Info<< "split into " << args.size() << " args" << nl; CStringList inC(args); @@ -124,7 +135,7 @@ int main(int argc, char *argv[]) Info<< nl; } - Info<<"command-line with " << CStringList::count(argv) << " items"<< endl; + Info<< "command-line with " << CStringList::count(argv) << " items" << nl; print(argc, argv); diff --git a/applications/test/dictionary/blockMeshDict1.calc b/applications/test/dictionary/blockMeshDict1.calc index 043d671ea5fc4ffb6ff527a99cb65e4665a820ca..90caf2a5ac79e5e7049651b550297aaf72ae2e77 100644 --- a/applications/test/dictionary/blockMeshDict1.calc +++ b/applications/test/dictionary/blockMeshDict1.calc @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/blockMeshDict1.eval b/applications/test/dictionary/blockMeshDict1.eval index 7081405017b191d76dd0ee77c1c6e5bd19abe360..96674468b1201852a23197c620b05f88bb878131 100644 --- a/applications/test/dictionary/blockMeshDict1.eval +++ b/applications/test/dictionary/blockMeshDict1.eval @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDict b/applications/test/dictionary/testDict index e6b042ba95aa3f66af3067556335e088ecd2bc98..ea4ef8abcace7d7d4d2cdce27375683722a2217d 100644 --- a/applications/test/dictionary/testDict +++ b/applications/test/dictionary/testDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDict2 b/applications/test/dictionary/testDict2 index d7794df3bef85976c584e6439a7e082bf5fdf08a..c92a7620e0d882567f58f506d71410a0d1241465 100644 --- a/applications/test/dictionary/testDict2 +++ b/applications/test/dictionary/testDict2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictAPI b/applications/test/dictionary/testDictAPI index 273abe443ca8e1e0c3e2aae1ffb3f7fac8ba9577..da455073518d298c08f01ee1932df350f380a9c9 100644 --- a/applications/test/dictionary/testDictAPI +++ b/applications/test/dictionary/testDictAPI @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictCalc1 b/applications/test/dictionary/testDictCalc1 index 5baa0ca844b1c111a53628969dc6222e0c4fae3b..4b4f0eae79f42b30865df28312cee1c2c854e9ce 100644 --- a/applications/test/dictionary/testDictCalc1 +++ b/applications/test/dictionary/testDictCalc1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictEval1 b/applications/test/dictionary/testDictEval1 index ddaf60300ffd72c665104a78776b7953ff26e7c7..e0389486930661147405f5333108124a2f4cd986 100644 --- a/applications/test/dictionary/testDictEval1 +++ b/applications/test/dictionary/testDictEval1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictEval2 b/applications/test/dictionary/testDictEval2 index 177d20b4914962f0f9e4c8d440f10affed8a7cdd..987b7a4f74ef134f15e96193e9017982cebc4c0e 100644 --- a/applications/test/dictionary/testDictEval2 +++ b/applications/test/dictionary/testDictEval2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictEval3 b/applications/test/dictionary/testDictEval3 index b1314d56b16c64a39fb271f1f00035b19d1d6ff7..1de245d0ec3969e1de2807c26d8ac97537b98b6e 100644 --- a/applications/test/dictionary/testDictEval3 +++ b/applications/test/dictionary/testDictEval3 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictEval4 b/applications/test/dictionary/testDictEval4 index 1861bc8242b0dca1f2b521db908adcee13fadc08..c0484eaf294866c28a489fa9e25050f8c3ad563a 100644 --- a/applications/test/dictionary/testDictEval4 +++ b/applications/test/dictionary/testDictEval4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictEval5 b/applications/test/dictionary/testDictEval5 index 01f27c7586d39d01084b7891758461896a352251..04cfadb2e404baa0924a508a2d10cbe286c03e29 100644 --- a/applications/test/dictionary/testDictEval5 +++ b/applications/test/dictionary/testDictEval5 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictList b/applications/test/dictionary/testDictList index 02b49a246e09d590774ee124a9192c00613683a1..e0afa733666b9262cd91ce7a20ae4d8b56e024e6 100644 --- a/applications/test/dictionary/testDictList +++ b/applications/test/dictionary/testDictList @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testDictRegex b/applications/test/dictionary/testDictRegex index 99cc374f61973a09e59391c1d208744673289489..eafc4ef03a12d7c02529e02afeafd89e64c9140d 100644 --- a/applications/test/dictionary/testDictRegex +++ b/applications/test/dictionary/testDictRegex @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testPrimitiveEntry b/applications/test/dictionary/testPrimitiveEntry index 3f295269158455c82de177fc215629e5c10264d8..fcfc01fe2e5e0a171aea9d4827b6599127f078f3 100644 --- a/applications/test/dictionary/testPrimitiveEntry +++ b/applications/test/dictionary/testPrimitiveEntry @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary/testSubkeyword b/applications/test/dictionary/testSubkeyword index 02351728c29e3ceb3fb0914ff4894ead70e40ac5..272f8d84b98e5e65590e2f4cee677a277f31c6ce 100644 --- a/applications/test/dictionary/testSubkeyword +++ b/applications/test/dictionary/testSubkeyword @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dictionary3/Test-dictionary3.cxx b/applications/test/dictionary3/Test-dictionary3.cxx index 425fbd1638282190642e1af756a4414be216b383..8dae613c9238c99937d71b767dace672b1145924 100644 --- a/applications/test/dictionary3/Test-dictionary3.cxx +++ b/applications/test/dictionary3/Test-dictionary3.cxx @@ -64,6 +64,7 @@ int main(int argc, char *argv[]) // Add some more entries { + label idx = 0; dictionary subdict; subdict.add("key", 100); @@ -72,23 +73,30 @@ int main(int argc, char *argv[]) subdict.add ( - new formattingEntry(10, "// comment - without newline.") + new formattingEntry(++idx, "// comment - without newline.") ); subdict.add ( // NB newline must be part of the content! - new formattingEntry(11, "// some comment - with newline?\n") + new formattingEntry(++idx, "// some comment - with newline?\n") ); subdict.add ( // NB newline must be part of the content! - new formattingEntry(12, "/* other comment */\n") + new formattingEntry(++idx, "/* other comment */\n") ); + // Other - invisible + subdict.add(new formattingEntry(++idx, token(123), false)); + + // Other - visible (probably not what anyone wants!) + subdict.add(new formattingEntry(++idx, token(456))); + subdict.add("val", 42); + Info<< "subdict keys:" << flatOutput(subdict.toc()) << nl; dict.add("subdict", std::move(subdict)); } diff --git a/applications/test/dictionaryCopy/testDictCopy b/applications/test/dictionaryCopy/testDictCopy index 2e07bea3dd2b1e80c1efa0a71ceebfde3b4381eb..8ba9475131a6825d691b3dfd4c96cd7e704cd83f 100644 --- a/applications/test/dictionaryCopy/testDictCopy +++ b/applications/test/dictionaryCopy/testDictCopy @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/dimField/Make/files b/applications/test/dimField/Make/files deleted file mode 100644 index 8289e2ec00d6a022bae5c79fa46f7ebd4951d48e..0000000000000000000000000000000000000000 --- a/applications/test/dimField/Make/files +++ /dev/null @@ -1,3 +0,0 @@ -Test-dimField.C - -EXE = $(FOAM_USER_APPBIN)/Test-dimField diff --git a/applications/test/dimField1/Make/files b/applications/test/dimField1/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..226fc66a5d62d1f362874e8608a5f059b8f39a27 --- /dev/null +++ b/applications/test/dimField1/Make/files @@ -0,0 +1,3 @@ +Test-dimField1.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-dimField1 diff --git a/applications/test/dimField/Make/options b/applications/test/dimField1/Make/options similarity index 100% rename from applications/test/dimField/Make/options rename to applications/test/dimField1/Make/options diff --git a/applications/test/dimField/Test-dimField.C b/applications/test/dimField1/Test-dimField1.cxx similarity index 80% rename from applications/test/dimField/Test-dimField.C rename to applications/test/dimField1/Test-dimField1.cxx index f711584883beb8f65912ece747f8242718e7a2d5..9eaf98fe95ac25584a4ad589ee4dcbebb6200ea3 100644 --- a/applications/test/dimField/Test-dimField.C +++ b/applications/test/dimField1/Test-dimField1.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -24,7 +24,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Application - Test-dimField + Test-dimField1 Description Simple tests for DimensionedField @@ -52,7 +52,12 @@ namespace Foam int main(int argc, char *argv[]) { + argList::addBoolOption("write", "write some test fields"); + #include "setRootCase.H" + + const bool doWrite = args.found("write"); + #include "createTime.H" #include "createMesh.H" @@ -60,19 +65,23 @@ int main(int argc, char *argv[]) Info<< "Tensor field\n" << endl; DimensionedField<tensor, volMesh> tensorfld ( - IOobject + mesh.newIOobject ( "tensor", - runTime.timeName(), - mesh, - { IOobject::READ_IF_PRESENT, IOobject::NO_REGISTER } + { IOobject::READ_IF_PRESENT, IOobject::NO_WRITE } ), mesh, dimensioned<tensor>(dimless, tensor(1,2,3,4,5,6,7,8,9)) ); - Info().beginBlock("transformed") - << tensorfld.T() << nl; + if (doWrite) + { + tensorfld.write(); + } + + + Info<< nl; + Info().beginBlock("transformed") << tensorfld.T(); Info().endBlock(); { @@ -84,8 +93,8 @@ int main(int argc, char *argv[]) dimensioned<scalar>(14) ); - Info().beginBlock(tfld().type()) - << tfld << nl; + Info<< nl; + Info().beginBlock(tfld().type()) << tfld; Info().endBlock(); } @@ -98,8 +107,8 @@ int main(int argc, char *argv[]) dimensioned<scalar>(5) ); - Info().beginBlock(tfld().type()) - << tfld() << nl; + Info<< nl; + Info().beginBlock(tfld().type()) << tfld(); Info().endBlock(); // From dissimilar types @@ -111,8 +120,8 @@ int main(int argc, char *argv[]) dimensioned<vector>(Zero) ); - Info().beginBlock(tfld2().type()) - << tfld2() << nl; + Info<< nl; + Info().beginBlock(tfld2().type()) << tfld2(); Info().endBlock(); } } @@ -122,20 +131,13 @@ int main(int argc, char *argv[]) Info<< "uint8 field\n" << endl; DimensionedField<uint8_t, volMesh> statefld ( - IOobject - ( - "state", - runTime.timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh.newIOobject("state") mesh, dimensioned<uint8_t>(dimless, uint8_t{100}) ); - Info().beginBlock("stateField") - << statefld << nl; + Info<< nl; + Info().beginBlock("stateField") << statefld; Info().endBlock(); } #endif diff --git a/applications/test/ensightFile/Make/files b/applications/test/ensightFile/Make/files deleted file mode 100644 index 856556c31697747e52200d5a0c9702ca2fb4a2d1..0000000000000000000000000000000000000000 --- a/applications/test/ensightFile/Make/files +++ /dev/null @@ -1,3 +0,0 @@ -Test-ensightFile.C - -EXE = $(FOAM_USER_APPBIN)/Test-ensightFile diff --git a/applications/test/ensightFile/Make/options b/applications/test/ensightFile/Make/options deleted file mode 100644 index 6684cce1e75ca7f6a55bc107f7e77e65fe4456a3..0000000000000000000000000000000000000000 --- a/applications/test/ensightFile/Make/options +++ /dev/null @@ -1,8 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/fileFormats/lnInclude \ - -I$(LIB_SRC)/meshTools/lnInclude \ - -I$(LIB_SRC)/conversion/lnInclude - -EXE_LIBS = \ - -lmeshTools \ - -lconversion diff --git a/applications/test/ensightFile1/Make/files b/applications/test/ensightFile1/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..aa5fb5615225105e72a63dca0df019c8d6ac2c00 --- /dev/null +++ b/applications/test/ensightFile1/Make/files @@ -0,0 +1,3 @@ +Test-ensightFile1.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-ensightFile1 diff --git a/applications/test/ensightFile1/Make/options b/applications/test/ensightFile1/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..7ce182425d9bee4bef91ba2a36b6b8475fc1aeb2 --- /dev/null +++ b/applications/test/ensightFile1/Make/options @@ -0,0 +1,5 @@ +EXE_INC = \ + -I$(LIB_SRC)/fileFormats/lnInclude + +EXE_LIBS = \ + -lfileFormats diff --git a/applications/test/ensightFile1/Test-ensightFile1.cxx b/applications/test/ensightFile1/Test-ensightFile1.cxx new file mode 100644 index 0000000000000000000000000000000000000000..9be1b4f3ab296ee65c7271e8a68ae008eff62658 --- /dev/null +++ b/applications/test/ensightFile1/Test-ensightFile1.cxx @@ -0,0 +1,137 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Application + Test-ensightFile + +Description + check cleanup of ensight file and variable names + +\*---------------------------------------------------------------------------*/ + +#include "argList.H" +#include "ensightFile.H" +#include "ensightGeoFile.H" +#include "Switch.H" +#include "IOstreams.H" + +using namespace Foam; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// Main program: + +int main(int argc, char *argv[]) +{ + argList::noBanner(); + argList::noParallel(); + argList::addBoolOption("ascii", "open as ascii instead of binary"); + argList::addBoolOption("binary", "(default)"); + argList::addBoolOption("clear", "force clear of time-steps"); + argList::addBoolOption("no-end", "skip use of endTimeStep"); + argList::addBoolOption("append", "open in append mode"); + argList::addOption("geom", "geometry file"); + argList::addOption("field", "field file"); + + #include "setRootCase.H" + + const bool with_ascii = args.found("ascii") && !args.found("binary"); + // const bool with_binary = args.found("binary"); + const bool with_append = args.found("append"); + const bool with_clear = args.found("clear"); + const bool without_end = args.found("no-end"); + + const IOstreamOption::streamFormat fmt = + ( + with_ascii + ? IOstreamOption::ASCII + : IOstreamOption::BINARY + ); + + const IOstreamOption::appendType append = + ( + with_append + ? IOstreamOption::APPEND_ATE + : IOstreamOption::NO_APPEND + ); + + + fileName file; + if (args.readIfPresent("geom", file)) + { + Info<< "Open " << file << " as geometry " + << " format:" << (with_ascii ? "ASCII" : "BINARY") + << " append:" << Switch::name(with_append) << nl; + + ensightGeoFile ensFile(append, file, fmt); + + if (append) + { + ensFile.beginTimeStep(); + + // At the moment need to pair begin/end time-step calls + if (!without_end) + { + ensFile.endTimeStep(); + } + } + + if (with_clear) + { + ensFile.clearTimeSteps(); + } + } + + if (args.readIfPresent("field", file)) + { + Info<< "Open " << file << " as field" + << " format:" << (with_ascii ? "ASCII" : "BINARY") + << " append:" << Switch::name(with_append) << nl; + + ensightFile ensFile(append, file, fmt); + + if (append) + { + ensFile.beginTimeStep(); + + // At the moment need to pair begin/end time-step calls + if (!without_end) + { + ensFile.endTimeStep(); + } + } + + if (with_clear) + { + ensFile.clearTimeSteps(); + } + } + + + Info<< "\nEnd\n" << endl; + return 0; +} + + +// ************************************************************************* // diff --git a/applications/test/ensightFileName/Make/files b/applications/test/ensightFileName/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..f2b4af2f482a03eabe5c78ead186b333f8689490 --- /dev/null +++ b/applications/test/ensightFileName/Make/files @@ -0,0 +1,3 @@ +Test-ensightFileName.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-ensightFileName diff --git a/applications/test/ensightFileName/Make/options b/applications/test/ensightFileName/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..7ce182425d9bee4bef91ba2a36b6b8475fc1aeb2 --- /dev/null +++ b/applications/test/ensightFileName/Make/options @@ -0,0 +1,5 @@ +EXE_INC = \ + -I$(LIB_SRC)/fileFormats/lnInclude + +EXE_LIBS = \ + -lfileFormats diff --git a/applications/test/ensightFile/Test-ensightFile.C b/applications/test/ensightFileName/Test-ensightFileName.cxx similarity index 96% rename from applications/test/ensightFile/Test-ensightFile.C rename to applications/test/ensightFileName/Test-ensightFileName.cxx index 927bb845452a6b29190c10390d579f0a7ff9578e..57bcc306a641ed95c1705f814fe85a52dbd40263 100644 --- a/applications/test/ensightFile/Test-ensightFile.C +++ b/applications/test/ensightFileName/Test-ensightFileName.cxx @@ -24,10 +24,10 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Application - Test-ensightFile + Test-ensightFileName Description - check cleanup of ensight file and variable names + Check cleanup of ensight file and variable names \*---------------------------------------------------------------------------*/ diff --git a/applications/test/exprEntry/testDict1 b/applications/test/exprEntry/testDict1 index e59409c464bcedbc107b9256b5614615ff69a598..3923565fb306fbfb665225b546abb6ee7455c498 100644 --- a/applications/test/exprEntry/testDict1 +++ b/applications/test/exprEntry/testDict1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/exprValue1/Test-exprValue1.cxx b/applications/test/exprValue1/Test-exprValue1.cxx index df77fd99567b06e44717983c3847c83b8a64056d..2a1f41564c1a42cc68d638cb965a7315ce896fda 100644 --- a/applications/test/exprValue1/Test-exprValue1.cxx +++ b/applications/test/exprValue1/Test-exprValue1.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -21,6 +21,8 @@ Description #include "argList.H" #include "IOstreams.H" #include "ITstream.H" +#include "OTstream.H" +#include "SpanStream.H" #include "exprValue.H" #include "Pstream.H" @@ -34,6 +36,41 @@ void printInfo(const expressions::exprValue& val) } +void write_read(const expressions::exprValue& val) +{ + OCharStream os; + os << val; + + ISpanStream is(os.view()); + expressions::exprValue val2; + is >> val2; + + Pout<< "wrote " << os.count() << " chars: " << os.str() << nl; + + printInfo(val); + printInfo(val2); + Pout<< "====" << nl; +} + + +tokenList tokens_of(const expressions::exprValue& val) +{ + OTstream toks; + toks << val; + + Pout<< "val with tokens: "; + toks.writeList(Pout, 0) << nl; + + for (const auto& t : toks) + { + Pout<< " " << t.info() << nl; + } + Pout<< nl; + + return toks; +} + + expressions::exprValue tryParse(const std::string& str) { expressions::exprValue val, val2; @@ -90,6 +127,7 @@ int main(int argc, char *argv[]) { expressions::exprValue value; + tokenList toks; Info<< "exprValue" << " sizeof:" << value.size_bytes() @@ -99,21 +137,31 @@ int main(int argc, char *argv[]) // Nothing printInfo(value); + toks = tokens_of(value); + write_read(value); value.set(scalar(100)); - printInfo(value); + printInfo(value); write_read(value); toks = tokens_of(value); + + value.set(scalar(100.01)); + printInfo(value); write_read(value); toks = tokens_of(value); value.set(vector(1,2,3)); - printInfo(value); + printInfo(value); write_read(value); toks = tokens_of(value); value = vector(4,5,6); - printInfo(value); + printInfo(value); write_read(value); toks = tokens_of(value); value = Zero; - printInfo(value); + printInfo(value); write_read(value); toks = tokens_of(value); value.clear(); + printInfo(value); write_read(value); toks = tokens_of(value); + + value.set<bool>(true); + printInfo(value); + printInfo(value); write_read(value); toks = tokens_of(value); if (UPstream::parRun()) { diff --git a/applications/test/exprValue2/Make/files b/applications/test/exprValue2/Make/files index c49a9ce705969bd29854da64b3919838a22b383a..42c8232f685915f48122a1f041736cf0eb8cf526 100644 --- a/applications/test/exprValue2/Make/files +++ b/applications/test/exprValue2/Make/files @@ -1,5 +1,3 @@ -exprValueFieldTag.cxx - Test-exprValue2.cxx EXE = $(FOAM_USER_APPBIN)/Test-exprValue2 diff --git a/applications/test/exprValue2/Test-exprValue2.cxx b/applications/test/exprValue2/Test-exprValue2.cxx index 93897ae321ea7221c117957cc6e84ce617eec193..49f75f24b4d37db001ea3de6873c79f5f8f66727 100644 --- a/applications/test/exprValue2/Test-exprValue2.cxx +++ b/applications/test/exprValue2/Test-exprValue2.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,7 +36,6 @@ Description #include "vectorField.H" #include "DynamicList.H" #include "Random.H" -#include "exprValue.H" #include "exprValueFieldTag.H" using namespace Foam; @@ -61,27 +60,81 @@ int main(int argc, char *argv[]) #include "setRootCase.H" + DynamicList<fieldTag> allTags; + { scalarField fld1(20); scalarField fld2a(20, Zero); scalarField fld2b(10, 3.10); scalarField fld3; - forAll(fld1, i) + for (auto& val : fld1) + { + val = rnd.position<scalar>(0, 20); + } + + if (!UPstream::master()) { - fld1[i] = rnd.position<scalar>(0, 20); + fld2b.resize(5); + fld2b *= 2; } fieldTag tag1(fld1.begin(), fld1.end()); fieldTag tag2a(fld2a.begin(), fld2a.end()); fieldTag tag2b(fld2b.begin(), fld2b.end()); fieldTag tag3(fld3.begin(), fld3.end()); + fieldTag tag4(fld3.begin(), fld3.end()); printInfo(tag1) << nl; printInfo(tag2a) << nl; printInfo(tag2b) << nl; printInfo(tag3) << nl; + { + Pout<< "Test reduce" << nl; + + fieldTag work(fld2b.begin(), fld2b.end()); + + Pout<< "Before" << nl; + printInfo(work) << nl; + + work.reduce(); + + Pout<< "After" << nl; + printInfo(work) << nl; + Pout<< "====" << nl; + } + + allTags.clear(); + allTags.push_back(tag1); + allTags.push_back(tag2a); + allTags.push_back(tag2b); + allTags.push_back(tag3); + allTags.push_back(tag4); + allTags.push_back(fieldTag::make_empty<tensor>()); + + + // Add some other types + { + vectorField vfld2a(20, vector::uniform(1.23)); + + allTags.emplace_back + ( + vfld2a.begin(), + vfld2a.end() + ); + allTags.emplace_back(vector(1.01, 2.02, 3.03)); + allTags.emplace_back(12.4); + + allTags.emplace_back().set_value(vector::uniform(2.0)); + allTags.back().set_empty(); + } + Info<< "all tags: " << allTags << nl; + + Foam::sort(allTags); + + Info<< "sorted: " << allTags << nl; + fieldTag result; result = fieldTag::combineOp{}(tag1, tag2a); diff --git a/applications/test/exprValue2/exprValueFieldTag.cxx b/applications/test/exprValue2/exprValueFieldTag.cxx deleted file mode 100644 index e30226107bc9b2946080e84bf8fd57d271679f88..0000000000000000000000000000000000000000 --- a/applications/test/exprValue2/exprValueFieldTag.cxx +++ /dev/null @@ -1,160 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | www.openfoam.com - \\/ M anipulation | -------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. - -\*---------------------------------------------------------------------------*/ - -#include "exprValueFieldTag.H" - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -bool Foam::expressions::exprValueFieldTag::empty() const noexcept -{ - return - ( - uniformity_ == Foam::Detail::ListPolicy::uniformity::EMPTY - ); -} - - -bool Foam::expressions::exprValueFieldTag::is_uniform() const noexcept -{ - return - ( - uniformity_ == Foam::Detail::ListPolicy::uniformity::UNIFORM - ); -} - - -bool Foam::expressions::exprValueFieldTag::is_nonuniform() const noexcept -{ - return - ( - uniformity_ == Foam::Detail::ListPolicy::uniformity::NONUNIFORM - ); -} - - -bool Foam::expressions::exprValueFieldTag::equal -( - const exprValueFieldTag& rhs -) const -{ - return (value_ == rhs.value_); -} - - -void Foam::expressions::exprValueFieldTag::set_nouniform() noexcept -{ - uniformity_ = Foam::Detail::ListPolicy::uniformity::NONUNIFORM; - value_ = Foam::zero{}; -} - - -void Foam::expressions::exprValueFieldTag::combine -( - const exprValueFieldTag& b -) -{ - if (b.empty()) - { - // no-op - return; - } - - exprValueFieldTag& a = *this; - - if (a.empty()) - { - a = b; - } - else if (a.is_nonuniform()) - { - // Already non-uniform/mixed - // a.uniformity_ |= b.uniformity_; - - a.value_ = Foam::zero{}; - } - else if (a.is_uniform() && b.is_uniform()) - { - // Both are uniform, but are they the same value? - if (!a.equal(b)) - { - a.set_nouniform(); - } - } -} - - -// * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // - -void Foam::expressions::exprValueFieldTag::read(Istream& is) -{ - label uniformTag; - - is >> uniformTag; - uniformity_ = int(uniformTag); - value_.read(is); -} - - -void Foam::expressions::exprValueFieldTag::write(Ostream& os) const -{ - os << label(uniformity_); - value_.write(os, false); // No pruning -} - - -void Foam::expressions::exprValueFieldTag::print(Ostream& os) const -{ - os << "{ uniform:" - << label(uniformity_) - << " type:" << label(value_.typeCode()) - << " value: " << value_ << " }"; -} - - -Foam::Istream& Foam::operator>> -( - Istream& is, - expressions::exprValueFieldTag& tag -) -{ - tag.read(is); - return is; -} - - -Foam::Ostream& Foam::operator<< -( - Ostream& os, - const expressions::exprValueFieldTag& tag -) -{ - tag.write(os); - return os; -} - - -// ************************************************************************* // diff --git a/applications/test/extendedStencil/Test-ExtendedStencil.C b/applications/test/extendedStencil/Test-ExtendedStencil.C index 6c76abfc368dfd76aebef8fa9a9001dd3f3c6cde..e876f079f16013df192c460a02d7f9f44e24ca96 100644 --- a/applications/test/extendedStencil/Test-ExtendedStencil.C +++ b/applications/test/extendedStencil/Test-ExtendedStencil.C @@ -32,6 +32,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "fvMesh.H" #include "volFields.H" #include "Time.H" @@ -126,14 +127,14 @@ void writeStencilStats(const labelListList& stencil) int main(int argc, char *argv[]) { - #include "addTimeOptions.H" + timeSelector::addOptions_singleTime(); // Single-time options + #include "setRootCase.H" #include "createTime.H" - // Get times list - instantList Times = runTime.times(); - #include "checkTimeOptions.H" - runTime.setTime(Times[startTime], startTime); + // Set time from specified time options, or force start from Time=0 + timeSelector::setTimeIfPresent(runTime, args, true); + #include "createMesh.H" // Force calculation of extended edge addressing diff --git a/applications/test/extendedStencil/Test-ExtendedStencil2.C b/applications/test/extendedStencil/Test-ExtendedStencil2.C index 3560a1d88414a8f153972858ef2398794d1b66c4..988caba77085369f93dbfd769adc8a523f5b8d78 100644 --- a/applications/test/extendedStencil/Test-ExtendedStencil2.C +++ b/applications/test/extendedStencil/Test-ExtendedStencil2.C @@ -32,6 +32,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "fvMesh.H" #include "volFields.H" #include "surfaceFields.H" @@ -107,14 +108,16 @@ void writeStencilStats(const labelListList& stencil) int main(int argc, char *argv[]) { - #include "addTimeOptions.H" + argList::noFunctionObjects(); // Never use function objects + + timeSelector::addOptions_singleTime(); // Single-time options + #include "setRootCase.H" #include "createTime.H" - // Get times list - instantList Times = runTime.times(); - #include "checkTimeOptions.H" - runTime.setTime(Times[startTime], startTime); + // Set time from specified time options, or force start from Time=0 + timeSelector::setTimeIfPresent(runTime, args, true); + #include "createMesh.H" diff --git a/applications/test/faMesh-try/Make/files b/applications/test/faMesh-try/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..30a5d9b42ebf1d1edf8f8a086ef71c8cfc89eca8 --- /dev/null +++ b/applications/test/faMesh-try/Make/files @@ -0,0 +1,3 @@ +Test-faMesh-try.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-faMesh-try diff --git a/applications/test/faMesh-try/Make/options b/applications/test/faMesh-try/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..b5b735e54b761c89412d7e0a8b7d3928bd3c7842 --- /dev/null +++ b/applications/test/faMesh-try/Make/options @@ -0,0 +1,7 @@ +EXE_INC = \ + -I$(LIB_SRC)/finiteArea/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude + +EXE_LIBS = \ + -lfiniteArea \ + -lmeshTools diff --git a/applications/test/faMesh-try/Test-faMesh-try.cxx b/applications/test/faMesh-try/Test-faMesh-try.cxx new file mode 100644 index 0000000000000000000000000000000000000000..783870b06ec4f2df3afd030773dcbad17f1055a1 --- /dev/null +++ b/applications/test/faMesh-try/Test-faMesh-try.cxx @@ -0,0 +1,63 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Application + Test-faMesh-try + +Description + Test for loading of faMesh + +\*---------------------------------------------------------------------------*/ + +#include "argList.H" +#include "faMesh.H" +#include "polyMesh.H" + +using namespace Foam; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +int main(int argc, char *argv[]) +{ + #include "addRegionOption.H" + #include "addFaRegionOption.H" + #include "setRootCase.H" + + #include "createTime.H" + #include "createNamedPolyMesh.H" + + #include "getFaRegionOption.H" + + autoPtr<faMesh> aMeshPtr = faMesh::TryNew(areaRegionName, mesh); + + Info<< "area-mesh: " << Switch::name(aMeshPtr) << nl; + + Info<< "\nEnd\n" << nl; + + return 0; +} + + +// ************************************************************************* // diff --git a/applications/test/faMeshesRegistry/Make/files b/applications/test/faMeshesRegistry/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..c393033c0b7f05886698fb4230c82e321f2f399e --- /dev/null +++ b/applications/test/faMeshesRegistry/Make/files @@ -0,0 +1,3 @@ +Test-faMeshesRegistry.cxx + +EXE = $(FOAM_USER_APPBIN)/Test-faMeshesRegistry diff --git a/applications/test/faMeshesRegistry/Make/options b/applications/test/faMeshesRegistry/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..b5b735e54b761c89412d7e0a8b7d3928bd3c7842 --- /dev/null +++ b/applications/test/faMeshesRegistry/Make/options @@ -0,0 +1,7 @@ +EXE_INC = \ + -I$(LIB_SRC)/finiteArea/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude + +EXE_LIBS = \ + -lfiniteArea \ + -lmeshTools diff --git a/applications/test/faMeshesRegistry/Test-faMeshesRegistry.cxx b/applications/test/faMeshesRegistry/Test-faMeshesRegistry.cxx new file mode 100644 index 0000000000000000000000000000000000000000..d58ffdad3256eb037410e614aece060b899df7fa --- /dev/null +++ b/applications/test/faMeshesRegistry/Test-faMeshesRegistry.cxx @@ -0,0 +1,68 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Application + Test-faMeshesRegistry + +Description + Basic tests for faMeshesRegistry + +\*---------------------------------------------------------------------------*/ + +#include "argList.H" +#include "faMesh.H" +#include "faMeshesRegistry.H" +#include "polyMesh.H" + +using namespace Foam; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +int main(int argc, char *argv[]) +{ + #include "setRootCase.H" + + #include "createTime.H" + #include "createPolyMesh.H" + + Info<< "mesh 0: " << mesh.sortedNames() << nl; + + faMeshesRegistry& reg = + const_cast<faMeshesRegistry&>(faMeshesRegistry::New(mesh)); + + // faMeshesRegistry faReg = faMeshesRegistry(mesh); + + faMesh mesh1(mesh, Foam::zero{}); + faMesh mesh2("mesh2", mesh, Foam::zero{}); + + reg.write(); + + Info<< "\nEnd\n" << nl; + + return 0; +} + + +// ************************************************************************* // diff --git a/applications/test/fieldMapping/Make/options b/applications/test/fieldMapping/Make/options index d840aaca0ba6197f1565c2c4105247d59467b219..8fee919326ddae214ccb1cddae0ca7e7e80b75c1 100644 --- a/applications/test/fieldMapping/Make/options +++ b/applications/test/fieldMapping/Make/options @@ -5,4 +5,5 @@ EXE_INC = \ EXE_LIBS = \ -lfiniteVolume \ + -lmeshTools \ -ldynamicMesh diff --git a/applications/test/fieldMapping/Test-fieldMapping.C b/applications/test/fieldMapping/Test-fieldMapping.C index 1e2cec44670ad9c3ff2b8f613656749a9e69b956..bb4ad0576bd62e65f3eabb101690980a8a227ee0 100644 --- a/applications/test/fieldMapping/Test-fieldMapping.C +++ b/applications/test/fieldMapping/Test-fieldMapping.C @@ -32,6 +32,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "fvMesh.H" #include "volFields.H" #include "Time.H" @@ -51,22 +52,33 @@ using namespace Foam; int main(int argc, char *argv[]) { - #include "addTimeOptions.H" - argList::addArgument("inflate (true|false)"); + timeSelector::addOptions_singleTime(); // Single-time options + + argList::addBoolOption + ( + "inflate", + "Use inflation/deflation for deleting cells" + ); + #include "setRootCase.H" #include "createTime.H" + + // Allow override of time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); + #include "createMesh.H" - const Switch inflate(args[1]); + const bool inflate = args.found("inflate"); if (inflate) { - Info<< "Deleting cells using inflation/deflation" << nl << endl; + Info<< "Deleting cells using inflation/deflation" + << nl << endl; } else { - Info<< "Deleting cells, introducing points at new position" << nl - << endl; + Info<< "Deleting cells, introducing points at new position" + << nl << endl; } diff --git a/applications/test/fieldMapping/pipe1D/constant/manualDecomposition b/applications/test/fieldMapping/pipe1D/constant/manualDecomposition index 75891bcfda48593c6c849007c834da114eb28714..4ca26d32ddb4b8f2c056d530d2f9f233d203d181 100644 --- a/applications/test/fieldMapping/pipe1D/constant/manualDecomposition +++ b/applications/test/fieldMapping/pipe1D/constant/manualDecomposition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fieldMapping/pipe1D/constant/transportProperties b/applications/test/fieldMapping/pipe1D/constant/transportProperties index b75993c5a8019225a41f373cf1c5587d4e0ea22f..871e36bb82ba3042deb8902e8235f19373ae2007 100644 --- a/applications/test/fieldMapping/pipe1D/constant/transportProperties +++ b/applications/test/fieldMapping/pipe1D/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fieldMapping/pipe1D/system/blockMeshDict b/applications/test/fieldMapping/pipe1D/system/blockMeshDict index f4a6b6cd702696a54967905b603e2d4e5f71fe23..d6672563677fcf8d123521a2bb9cc9a47c02a29e 100644 --- a/applications/test/fieldMapping/pipe1D/system/blockMeshDict +++ b/applications/test/fieldMapping/pipe1D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fieldMapping/pipe1D/system/controlDict b/applications/test/fieldMapping/pipe1D/system/controlDict index bada788be2520dc4a785573356ebe5cad246ba49..5ae3e4f247c05b353c369d7efd6544ad7069b9d5 100644 --- a/applications/test/fieldMapping/pipe1D/system/controlDict +++ b/applications/test/fieldMapping/pipe1D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fieldMapping/pipe1D/system/fvSchemes b/applications/test/fieldMapping/pipe1D/system/fvSchemes index 006d7ed2dfd10dc6f3d13769f2cf1faff2d2fb40..a7131dd6c4d9a753e917f18acf902781f4fd909c 100644 --- a/applications/test/fieldMapping/pipe1D/system/fvSchemes +++ b/applications/test/fieldMapping/pipe1D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fieldMapping/pipe1D/system/fvSolution b/applications/test/fieldMapping/pipe1D/system/fvSolution index 6059d89847c3d5645bd17925625f0ac35cf078ce..e8d26ebaf71bac3f235d8a26ed76b4237250ba79 100644 --- a/applications/test/fieldMapping/pipe1D/system/fvSolution +++ b/applications/test/fieldMapping/pipe1D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/fileHandler-ranks1/Test-fileHandler-ranks1.C b/applications/test/fileHandler-ranks1/Test-fileHandler-ranks1.C index 253553e7d6a400817e43ac59bded0e0c3f87e62e..2d038b580b3d222b8b974a7f511205fb2e29e8fa 100644 --- a/applications/test/fileHandler-ranks1/Test-fileHandler-ranks1.C +++ b/applications/test/fileHandler-ranks1/Test-fileHandler-ranks1.C @@ -47,7 +47,7 @@ using namespace Foam; template<class PrimitiveType> static List<PrimitiveType> splitStringToList(const std::string& str) { - const SubStrings<std::string> items = stringOps::splitAny(str, " ,;"); + const auto items = stringOps::splitAny(str, " ,;"); DynamicList<PrimitiveType> values(items.size()); diff --git a/applications/test/fileHandler-writing/Make/files b/applications/test/fileHandler-writing/Make/files index f85b2cccecdbd336133e104f5a16c2253a8ee587..df7161d2b9d704f4d606fe315aa28e967cd4fcf7 100644 --- a/applications/test/fileHandler-writing/Make/files +++ b/applications/test/fileHandler-writing/Make/files @@ -1,3 +1,3 @@ -Test-fileHandler-writing.C +Test-fileHandler-writing.cxx EXE = $(FOAM_USER_APPBIN)/Test-fileHandler-writing diff --git a/applications/test/fileHandler-writing/Test-fileHandler-writing.C b/applications/test/fileHandler-writing/Test-fileHandler-writing.cxx similarity index 95% rename from applications/test/fileHandler-writing/Test-fileHandler-writing.C rename to applications/test/fileHandler-writing/Test-fileHandler-writing.cxx index 03caeab26df147478482bf2e95d2b709e542a864..a029befb7b5bde73f2f2b584e0fa3ec8e4377221 100644 --- a/applications/test/fileHandler-writing/Test-fileHandler-writing.C +++ b/applications/test/fileHandler-writing/Test-fileHandler-writing.cxx @@ -56,8 +56,18 @@ int main(int argc, char *argv[]) argList::noFunctionObjects(); // Disallow function objects argList::addVerboseOption("additional verbosity"); - argList::addOption("output", "Begin output iteration (default: 10000)"); - argList::addOption("count", "Number of writes (default: 1)"); + argList::addOption + ( + "output", + "N", + "Begin output iteration (default: 10000)" + ); + argList::addOption + ( + "count", + "N", + "Number of writes (default: 1)" + ); #include "setRootCase.H" #include "createTime.H" diff --git a/applications/test/gatherValues1/Make/files b/applications/test/gatherValues1/Make/files index 31bbb718f07c5c733722d87a4605e1564e6da456..b5fc79cbe0972f19814ba5d7fbcf23d3a89a6599 100644 --- a/applications/test/gatherValues1/Make/files +++ b/applications/test/gatherValues1/Make/files @@ -1,3 +1,3 @@ -Test-gatherValues1.C +Test-gatherValues1.cxx EXE = $(FOAM_USER_APPBIN)/Test-gatherValues1 diff --git a/applications/test/gatherValues1/Test-gatherValues1.C b/applications/test/gatherValues1/Test-gatherValues1.cxx similarity index 81% rename from applications/test/gatherValues1/Test-gatherValues1.C rename to applications/test/gatherValues1/Test-gatherValues1.cxx index 69ce09ce1227a625a11eed11a936da14d96029aa..02bb8597edda92ea01fae581fd7a2a20fa6042ea 100644 --- a/applications/test/gatherValues1/Test-gatherValues1.C +++ b/applications/test/gatherValues1/Test-gatherValues1.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ int main(int argc, char *argv[]) const labelList localValues ( - identity(2 *(Pstream::myProcNo()+1), -5*Pstream::myProcNo()) + identity(2 *(UPstream::myProcNo()+1), -5*UPstream::myProcNo()) ); // Test resize @@ -76,8 +76,8 @@ int main(int argc, char *argv[]) // One-sided sizing! master only const globalIndex allProcAddr ( - sendData.size(), - globalIndex::gatherOnly{} + globalIndex::gatherOnly{}, + sendData.size() ); Pout<< "listGather sizes: " << flatOutput(allProcAddr.sizes()) << nl; @@ -98,8 +98,8 @@ int main(int argc, char *argv[]) // One-sided sizing! master only const globalIndex allProcAddr ( - sendData.size(), - globalIndex::gatherOnly{} + globalIndex::gatherOnly{}, + sendData.size() ); Pout<< "listGather sizes: " << flatOutput(allProcAddr.sizes()) << nl; @@ -116,7 +116,7 @@ int main(int argc, char *argv[]) { const labelList::subList& sendData = ( - Pstream::master() + UPstream::master() ? SubList<label>(localValues, 0) // exclude : SubList<label>(localValues) ); @@ -147,11 +147,11 @@ int main(int argc, char *argv[]) << UPstream::listScatterValues(subProcAddr.offsets()) << nl; - Pout<< endl << "local list [" << Pstream::myProcNo() << "] " + Pout<< endl << "local list [" << UPstream::myProcNo() << "] " << flatOutput(localValues) << nl; - Pout<< endl << "local send [" << Pstream::myProcNo() << "] " + Pout<< endl << "local send [" << UPstream::myProcNo() << "] " << sendSize << nl; @@ -163,7 +163,7 @@ int main(int argc, char *argv[]) Pout<< "off-proc: " << allValues << endl; - if (Pstream::master()) + if (UPstream::master()) { Info<< "master: " << flatOutput(localValues) << nl; @@ -196,7 +196,7 @@ int main(int argc, char *argv[]) { globalIndex glob ( - globalIndex:gatherNone{}, + globalIndex::gatherNone{}, labelList(Foam::one{}, 0) ); Info<< "single:" << nl; @@ -208,35 +208,37 @@ int main(int argc, char *argv[]) } } - // This will likely fail - not declared as is_contiguous - // Cannot even catch since it triggers an abort() - - #if 0 + // Non-contiguous gather - use Pstream, not UPstream! { - std::pair<label,vector> sendData(Pstream::myProcNo(), vector::one); + typedef std::pair<label,vector> valueType; - const bool oldThrowingError = FatalError.throwing(true); + valueType sendData(UPstream::myProcNo(), vector::one); - try - { - List<std::pair<label,vector>> countValues - ( - UPstream::listGatherValues<std::pair<label, vector>> - ( - sendData - ) - ); + List<valueType> countValues + ( + Pstream::listGatherValues(sendData) + ); - Pout<< "listGather: " << flatOutput(countValues) << nl; - } - catch (const Foam::error& err) + Pout<< "listGather: " << flatOutput(countValues) << nl; + } + + // Non-contiguous scatter - use Pstream, not UPstream! + { + List<fileName> allValues; + + if (UPstream::master()) { - Info<< err.message().c_str() << nl; + allValues.resize(UPstream::nProcs()); + forAll(allValues, proci) + { + allValues[proci] = "processor" + Foam::name(proci); + } } - FatalError.throwing(oldThrowingError); + fileName procName = Pstream::listScatterValues(allValues); + + Pout<< "listScatter: " << procName << nl; } - #endif Info<< "\nEnd\n" << endl; diff --git a/applications/test/gravityMeshObject/Test-gravityMeshObject.C b/applications/test/gravityMeshObject/Test-gravityMeshObject.C index f95a39fe49afcd50d420837cd78cabf8efbb4415..c6d93c7bc9d2c287bc580246622f6ed816b3bc15 100644 --- a/applications/test/gravityMeshObject/Test-gravityMeshObject.C +++ b/applications/test/gravityMeshObject/Test-gravityMeshObject.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,6 +50,9 @@ void printInfo(const meshObjects::gravity& g) int main(int argc, char *argv[]) { + argList::addBoolOption("checkout", "Test checkout with release"); + argList::addBoolOption("release", "Test release instead of delete"); + #include "setRootCase.H" #include "createTime.H" @@ -70,14 +73,81 @@ int main(int argc, char *argv[]) printInfo(g); } - Pout<< "registered:" << flatOutput(runTime.sortedToc()) << nl << endl; + Pout<< "registered:" + << flatOutput(runTime.sortedToc()) << nl << endl; + } + + std::unique_ptr<meshObjects::gravity> release1; + std::unique_ptr<meshObjects::gravity> release2; + + if (args.found("release")) + { + // Ugly! + typedef + MeshObject<Time, TopologicalMeshObject, meshObjects::gravity> + parent_type; + + release1 = meshObjects::gravity::Release("g", runTime); + release2 = meshObjects::gravity::Release("#none#", runTime); + + Info<< "release: " << Switch::name(bool(release1)) + << ", " << Switch::name(bool(release2)) << nl; + + Info<< "after Release: " + << flatOutput(runTime.sortedToc()) << endl; + + // Do checkout by hand (ugly) + if (args.found("checkout")) + { + if (release1) + { + release1->parent_type::checkOut(); + } + + if (release2) + { + release2->parent_type::checkOut(); + } + + Info<< "after checkout: " + << flatOutput(runTime.sortedToc()) << endl; + } + } + else if (args.found("checkout")) + { + // Do checkout as part of release + release1 = meshObjects::gravity::Release("g", runTime, true); + release2 = meshObjects::gravity::Release("#none#", runTime, true); + + Info<< "release: " << Switch::name(bool(release1)) + << ", " << Switch::name(bool(release2)) << nl; + + Info<< "after Release/Checkout(true) : " + << flatOutput(runTime.sortedToc()) << endl; + } + else + { + meshObjects::gravity::Delete("g", runTime); + meshObjects::gravity::Delete("#none#", runTime); + + Info<< "after Delete: " + << flatOutput(runTime.sortedToc()) << endl; } - meshObjects::gravity::Delete("g", runTime); - meshObjects::gravity::Delete("something-not-in-registry", runTime); - Info<< "after Delete" << nl; - Pout<< "registered:" << flatOutput(runTime.sortedToc()) << endl; + if (meshObjects::gravity::Store(std::move(release1))) + { + Info<< "Store pointer" << endl; + } + + if (release2) + { + release2.reset(); + Info<< "Clear pointer" << endl; + } + + Info<< "Before exit: " + << flatOutput(runTime.sortedToc()) << endl; Info<< "\nEnd\n" << endl; diff --git a/applications/test/gravityMeshObject/case1/constant/banana b/applications/test/gravityMeshObject/case1/constant/banana index 9b2d0cb8081706abf4427b8460b22d30026f253c..3e79cdd108e792b79599cada71c9a8e4f3ea8811 100644 --- a/applications/test/gravityMeshObject/case1/constant/banana +++ b/applications/test/gravityMeshObject/case1/constant/banana @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/gravityMeshObject/case1/constant/g b/applications/test/gravityMeshObject/case1/constant/g index f1f11742fbd6eeed1f4a33384f3c9babca82182d..ee1da146fdb46d82441319a86a9a2fecec928eba 100644 --- a/applications/test/gravityMeshObject/case1/constant/g +++ b/applications/test/gravityMeshObject/case1/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/gravityMeshObject/case1/constant/saturn b/applications/test/gravityMeshObject/case1/constant/saturn index 909ada6d3b7f4d4c51995bea04a626683a8deb73..c6e70e84e4775a7774bff8d27af080f08f8e276c 100644 --- a/applications/test/gravityMeshObject/case1/constant/saturn +++ b/applications/test/gravityMeshObject/case1/constant/saturn @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/gravityMeshObject/case1/system/controlDict b/applications/test/gravityMeshObject/case1/system/controlDict index f87a3b9a99d2133d5fea974514525e7fead42dea..06d786972f545dfadfeafc0534b69c1954275251 100644 --- a/applications/test/gravityMeshObject/case1/system/controlDict +++ b/applications/test/gravityMeshObject/case1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/Make/options b/applications/test/hexRef8/Make/options index d840aaca0ba6197f1565c2c4105247d59467b219..8fee919326ddae214ccb1cddae0ca7e7e80b75c1 100644 --- a/applications/test/hexRef8/Make/options +++ b/applications/test/hexRef8/Make/options @@ -5,4 +5,5 @@ EXE_INC = \ EXE_LIBS = \ -lfiniteVolume \ + -lmeshTools \ -ldynamicMesh diff --git a/applications/test/hexRef8/Test-hexRef8.C b/applications/test/hexRef8/Test-hexRef8.C index dd34e6608dbb3fd97b7677fcb25bab3af2728d3c..12c6d5e38e4eae9a4f2f73c04d73bfd3ae243a25 100644 --- a/applications/test/hexRef8/Test-hexRef8.C +++ b/applications/test/hexRef8/Test-hexRef8.C @@ -33,6 +33,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "Time.H" #include "volFields.H" #include "surfaceFields.H" @@ -52,21 +53,28 @@ using namespace Foam; // Main program: int main(int argc, char *argv[]) { - #include "addTimeOptions.H" - argList::addArgument("inflate (true|false)"); + timeSelector::addOptions_singleTime(); // Single-time options + + argList::addBoolOption + ( + "inflate", + "Use inflation/deflation for splitting/deleting cells" + ); + #include "setRootCase.H" #include "createTime.H" - #include "createMesh.H" + // Allow override of time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); - const pointConstraints& pc = pointConstraints::New(pointMesh::New(mesh)); + #include "createMesh.H" - const Switch inflate(args[1]); + const bool inflate = args.found("inflate"); if (inflate) { - Info<< "Splitting/deleting cells using inflation/deflation" << nl - << endl; + Info<< "Splitting/deleting cells using inflation/deflation" + << nl << endl; } else { @@ -75,6 +83,8 @@ int main(int argc, char *argv[]) } + const pointConstraints& pc = pointConstraints::New(pointMesh::New(mesh)); + Random rndGen(0); diff --git a/applications/test/hexRef8/block/constant/manualDecomposition b/applications/test/hexRef8/block/constant/manualDecomposition index 75891bcfda48593c6c849007c834da114eb28714..4ca26d32ddb4b8f2c056d530d2f9f233d203d181 100644 --- a/applications/test/hexRef8/block/constant/manualDecomposition +++ b/applications/test/hexRef8/block/constant/manualDecomposition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/block/constant/transportProperties b/applications/test/hexRef8/block/constant/transportProperties index b75993c5a8019225a41f373cf1c5587d4e0ea22f..871e36bb82ba3042deb8902e8235f19373ae2007 100644 --- a/applications/test/hexRef8/block/constant/transportProperties +++ b/applications/test/hexRef8/block/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/block/system/blockMeshDict b/applications/test/hexRef8/block/system/blockMeshDict index 2ca591b2c303307cba68f17ed1dc7790c513a1ff..460793d957763e6a734e9da733b3ca2cee144d2d 100644 --- a/applications/test/hexRef8/block/system/blockMeshDict +++ b/applications/test/hexRef8/block/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/block/system/controlDict b/applications/test/hexRef8/block/system/controlDict index e709979f885d1fccc98f4ff473808f689c06c7e3..2879c99ce298bece72b9e036cac96d1fee4157fd 100644 --- a/applications/test/hexRef8/block/system/controlDict +++ b/applications/test/hexRef8/block/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/block/system/fvSchemes b/applications/test/hexRef8/block/system/fvSchemes index 006d7ed2dfd10dc6f3d13769f2cf1faff2d2fb40..a7131dd6c4d9a753e917f18acf902781f4fd909c 100644 --- a/applications/test/hexRef8/block/system/fvSchemes +++ b/applications/test/hexRef8/block/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/hexRef8/block/system/fvSolution b/applications/test/hexRef8/block/system/fvSolution index 6059d89847c3d5645bd17925625f0ac35cf078ce..e8d26ebaf71bac3f235d8a26ed76b4237250ba79 100644 --- a/applications/test/hexRef8/block/system/fvSolution +++ b/applications/test/hexRef8/block/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/Test-mapDistributePolyMesh.C b/applications/test/mapDistributePolyMesh/Test-mapDistributePolyMesh.C index ea17c1a878a622142bc81f9dbf6d2b4f960fb5d6..315b14d1d03e107d7b85047eec65971bc31741a7 100644 --- a/applications/test/mapDistributePolyMesh/Test-mapDistributePolyMesh.C +++ b/applications/test/mapDistributePolyMesh/Test-mapDistributePolyMesh.C @@ -59,7 +59,7 @@ int main(int argc, char *argv[]) ( "procAddressing", instance, - fvMesh::meshSubDir, + polyMesh::meshSubDir, mesh, IOobject::MUST_READ, IOobject::NO_WRITE, diff --git a/applications/test/mapDistributePolyMesh/cavity/0/U b/applications/test/mapDistributePolyMesh/cavity/0/U index 71dbd146d6c6e50b5f058d6cb722969a6482c21f..b2fe3135a7c2c2516e1567264bf6ca0f4a0215a4 100644 --- a/applications/test/mapDistributePolyMesh/cavity/0/U +++ b/applications/test/mapDistributePolyMesh/cavity/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/0/p b/applications/test/mapDistributePolyMesh/cavity/0/p index 448b60413bedc8e18148a8801fb682ea20a3b873..ef4fcf836f6365c3cc11450d5ddf3f59808182b0 100644 --- a/applications/test/mapDistributePolyMesh/cavity/0/p +++ b/applications/test/mapDistributePolyMesh/cavity/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/0/phi b/applications/test/mapDistributePolyMesh/cavity/0/phi index 34461f9503f7430764ec2eab4d88df44b5f31248..807552eff614c07cd62bf07eba388500dfd3730e 100644 --- a/applications/test/mapDistributePolyMesh/cavity/0/phi +++ b/applications/test/mapDistributePolyMesh/cavity/0/phi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/constant/transportProperties b/applications/test/mapDistributePolyMesh/cavity/constant/transportProperties index b75993c5a8019225a41f373cf1c5587d4e0ea22f..871e36bb82ba3042deb8902e8235f19373ae2007 100644 --- a/applications/test/mapDistributePolyMesh/cavity/constant/transportProperties +++ b/applications/test/mapDistributePolyMesh/cavity/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/blockMeshDict b/applications/test/mapDistributePolyMesh/cavity/system/blockMeshDict index b968c8e83c08084dc4abb24f6e22251f1e1635e4..4cc52dc0b74cca2de12141f6c9a9c0762946a447 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/blockMeshDict +++ b/applications/test/mapDistributePolyMesh/cavity/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/controlDict b/applications/test/mapDistributePolyMesh/cavity/system/controlDict index 776c9a39459163c1d168845931fbbbed98b32e8a..88560e1e0ed86630b19b5df83e483ff1260c57a8 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/controlDict +++ b/applications/test/mapDistributePolyMesh/cavity/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/controlDict-latestTime b/applications/test/mapDistributePolyMesh/cavity/system/controlDict-latestTime index e5820c6d838bff2dbfedcf23fab27c1a94c1c13c..da24012b6ba6891bba68d87a439cfc9b3ba9c75b 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/controlDict-latestTime +++ b/applications/test/mapDistributePolyMesh/cavity/system/controlDict-latestTime @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/controlDict-startTime b/applications/test/mapDistributePolyMesh/cavity/system/controlDict-startTime index 776c9a39459163c1d168845931fbbbed98b32e8a..88560e1e0ed86630b19b5df83e483ff1260c57a8 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/controlDict-startTime +++ b/applications/test/mapDistributePolyMesh/cavity/system/controlDict-startTime @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict index 7752ce74f0d00eeb3c5d8c60326c75ff4aa94d87..5c82f89759d8f033b0de74be86aa72eb20bbb5aa 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict +++ b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-hierarchical b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-hierarchical index 27aa8e4a0493c367595c51ff68685cc2e9512f6c..d5306fb0c4bfcb61ace07f3fc63f160154080d74 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-hierarchical +++ b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-hierarchical @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-scotch b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-scotch index 4c888b43bf066f87c862b19eb7dd77accf2d746c..870efdf96771e6acafd9bc0bdf7eb6f827f9d271 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-scotch +++ b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict-scotch @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.2 b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.2 index 49c6b2a5a10e2c5407b7fad916a9d6aae5d348ba..28c9bd0655fa6116f32e5d90eab7a6935de96454 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.2 +++ b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.5 b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.5 index d310f61e5bc248c4201ca16a9739ae4e90127d21..6af33514f26ea5d8a59c73cd4f5f77b348a3744c 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.5 +++ b/applications/test/mapDistributePolyMesh/cavity/system/decomposeParDict.5 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/fvSchemes b/applications/test/mapDistributePolyMesh/cavity/system/fvSchemes index 51748f98addb1124e4052f9f06e625d4b83c752c..d98fb1d34a84bdff6f7d596c266fb5dd82eeb904 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/fvSchemes +++ b/applications/test/mapDistributePolyMesh/cavity/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/fvSolution b/applications/test/mapDistributePolyMesh/cavity/system/fvSolution index c524793be62970b34423d1db9118befebd35ff56..330d6a35fd08be816ba1b5ce9bcb1322f4250dfe 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/fvSolution +++ b/applications/test/mapDistributePolyMesh/cavity/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/processorField b/applications/test/mapDistributePolyMesh/cavity/system/processorField index 43fc261bb060ed116f26fbf6907f508c86617185..a2ba129d618eca08ee102d84ef7b4a798a075e5e 100644 --- a/applications/test/mapDistributePolyMesh/cavity/system/processorField +++ b/applications/test/mapDistributePolyMesh/cavity/system/processorField @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/mapDistributePolyMesh/cavity/system/renumberMeshDict-random b/applications/test/mapDistributePolyMesh/cavity/system/renumberMeshDict-random deleted file mode 100644 index d3d55f4fd1235396c0eb1b92f5c58ae95eab40c9..0000000000000000000000000000000000000000 --- a/applications/test/mapDistributePolyMesh/cavity/system/renumberMeshDict-random +++ /dev/null @@ -1,112 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | -| \\ / A nd | Website: www.openfoam.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh renumbering dictionary"; - object renumberMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Write maps from renumbered back to original mesh -writeMaps true; - -// Optional entry: sort cells on coupled boundaries to last for use with -// e.g. nonBlockingGaussSeidel. -sortCoupledFaceCells false; - -// Optional entry: renumber on a block-by-block basis. It uses a -// blockCoeffs dictionary to construct a decompositionMethod to do -// a block subdivision) and then applies the renumberMethod to each -// block in turn. This can be used in large cases to keep the blocks -// fitting in cache with all the cache misses bunched at the end. -// This number is the approximate size of the blocks - this gets converted -// to a number of blocks that is the input to the decomposition method. -//blockSize 1000; - -// Optional entry: sort points into internal and boundary points -//orderPoints false; - -// Optional: suppress renumbering cellSets,faceSets,pointSets -//renumberSets false; - - -//method CuthillMcKee; -//method Sloan; -//method manual; -method random; -//method structured; -//method spring; -//method zoltan; // only if compiled with zoltan support - -//CuthillMcKeeCoeffs -//{ -// // Reverse CuthillMcKee (RCM) or plain -// reverse true; -//} - -manualCoeffs -{ - // In system directory: new-to-original (i.e. order) labelIOList - dataFile "cellMap"; -} - - -// For extruded (i.e. structured in one direction) meshes -structuredCoeffs -{ - // Patches that mesh was extruded from. These determine the starting - // layer of cells - patches (movingWall); - // Method to renumber the starting layer of cells - method random; - - // Renumber in columns (depthFirst) or in layers - depthFirst true; - - // Reverse ordering - reverse false; -} - - -springCoeffs -{ - // Maximum jump of cell indices. Is fraction of number of cells - maxCo 0.01; - - // Limit the amount of movement; the fraction maxCo gets decreased - // with every iteration - freezeFraction 0.999; - - // Maximum number of iterations - maxIter 1000; -} - - -blockCoeffs -{ - method scotch; - //method hierarchical; - //hierarchicalCoeffs - //{ - // n (1 2 1); - // delta 0.001; - // order xyz; - //} -} - - -zoltanCoeffs -{ - ORDER_METHOD LOCAL_HSFC; -} - - -// ************************************************************************* // diff --git a/applications/test/mappedPatch/Test-MappedPatch.C b/applications/test/mappedPatch/Test-MappedPatch.C index c54fb264264fa40618c6c3d4efe323ecf855cf78..d62445ea24350f33f2ce1f606fb492801419b1fc 100644 --- a/applications/test/mappedPatch/Test-MappedPatch.C +++ b/applications/test/mappedPatch/Test-MappedPatch.C @@ -51,7 +51,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - #include "addTimeOptions.H" #include "setRootCase.H" #include "createTime.H" #include "createMesh.H" diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/T b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/T index 4848b1e6b3b41328d359f7444fd6413ecf0e0d02..f9ee66a651e311b6aa5ec5d52eb31adec3c69b34 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/T +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/U b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/U index 6dc2df1c5881f27587fa81aa791a2380ac4d4a1a..a1246f6443ba74f3fa2f0f758105e5c41347338d 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/U +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/epsilon b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/epsilon index 03942edf9c9183b535daa03e569c9fdf9aceb8ac..1eea0f7c7a63823bbf559356956e8b30abe2ed2c 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/epsilon +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/k b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/k index 63f289e2081ab8321e2c93e33a97136e9e5d5999..d11a43ee14679704acd72a493088d4b4b332fbcc 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/k +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p index 62072fd3a722d819fde1cac630f597204a22007a..a46390c250ca70ee3337c8f1172b3352032e715b 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p_rgh b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p_rgh index b07ef7b9beed00bc806533323bea7805347ba4f8..fce7509da2cc48c6f0e95176f750d7ac5fe26a73 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p_rgh +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/0/topAir/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/g b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/g +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/regionProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/regionProperties index 085c4927ef421f7431d3316c331918e78f9a7939..d69e9ef84d6bde66f0b1ad92250aa2ef69d4c989 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/regionProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/radiationProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/radiationProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/thermophysicalProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/thermophysicalProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/turbulenceProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/turbulenceProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/constant/topAir/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/controlDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/controlDict index fee5618da1f937079e248957c90a4989e9525cfb..bd6b19dd4e413d5f22c32d4d18132a7b23f37736 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/controlDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/decomposeParDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/decomposeParDict index e00f3cec98a349fc48cfdcd41093930bae29fe7d..86ffb4fba91b4e269323bc00fe5def947e4f15ea 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/decomposeParDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSchemes b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSchemes index 0bba64050811f41dab7d7bdfe517316e4d9148de..0d18e212eab7ebc6438cdeaed51484171091fa33 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSchemes +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSolution b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSolution index 1d96f891266cacef30d1318482b67ed548761c59..886d8b907296f28e37e12f0459a702618bd4a462 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSolution +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/topAir/blockMeshDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/topAir/blockMeshDict index c13fe6564d22a585d2f4b7588a343d06123c9a18..62fd33a385b765063e187353a3b83bfd7ca61762 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/topAir/blockMeshDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/fluid/system/topAir/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/T b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/T index a658657e05b39ee3006b297140cf6ecbd5c8b6c6..4a4041052f5f25d8abbaa4c2516640c3d1f0618b 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/T +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/p b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/p index 55c6ddb14ea9b34fa69642a48c6d9c698a433c54..2d379bf42c83d6398c1490fd6961fdb943106269 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/p +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/0/bottomSolid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/radiationProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/radiationProperties index cdf5c8901bc2649eb947dcb9ca30598e4ec64351..5cde2ae1222098950b2506ac957992eef315846b 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/radiationProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/thermophysicalProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/thermophysicalProperties index 088877f64fad574449b69284818ad38c61695c1c..5954c4103d193ce651fcf269127aca072fc5b05a 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/thermophysicalProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/bottomSolid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/g b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/g +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/regionProperties b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/regionProperties index fad6e94ce4a88bb24279e95fec77ff7a3e573c92..798b694942656f49273e48ffb84caed80440b6c4 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/regionProperties +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/blockMeshDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/blockMeshDict index b5fb65ae9f220f36a69f0a31bbf047e67fe1cc34..84d74dff2f97ea8ab307c908aaf27dfff3609518 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/blockMeshDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSchemes b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSchemes index dc9195c35e89c2136279db4ad03de7f2e3ecbd96..74c584a3323e5e98a431c0f7c345ba610398decc 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSchemes +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSolution b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSolution index 69ef7e610c42121d43b64695b9a13dc1fa7e4828..88b3f332a66154c3b71c21cd122c00f31934c153 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSolution +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/bottomSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/controlDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/controlDict index fee5618da1f937079e248957c90a4989e9525cfb..bd6b19dd4e413d5f22c32d4d18132a7b23f37736 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/controlDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/decomposeParDict b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/decomposeParDict index e00f3cec98a349fc48cfdcd41093930bae29fe7d..86ffb4fba91b4e269323bc00fe5def947e4f15ea 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/decomposeParDict +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSchemes b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSchemes index 204bf61ca984b213d64d75537e0cc4310ee7ba20..6b52e49180e75273299879175da9d41e5cf36f1f 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSchemes +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSolution b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSolution index 3d469994c9135ae25397359da2d7a7dd256cfb8b..bdb511f3c08002c5818e7f8cce59c44fe23170c5 100644 --- a/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSolution +++ b/applications/test/multiWorld/chtMultiRegionSimpleFoam/solid/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/0/T b/applications/test/multiWorld/solidFoam/solid1/0/T index 12287e6c310ec3611c31fd7a1dc5824c4666b7cf..7bc953313f716f67b195171987430c7975a35e7a 100644 --- a/applications/test/multiWorld/solidFoam/solid1/0/T +++ b/applications/test/multiWorld/solidFoam/solid1/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/0/p b/applications/test/multiWorld/solidFoam/solid1/0/p index eacb64e0af5d66dd3c11e2e53385ae2828629371..7bee48b936b3c5917742e86eab1976493955d8d4 100644 --- a/applications/test/multiWorld/solidFoam/solid1/0/p +++ b/applications/test/multiWorld/solidFoam/solid1/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/constant/g b/applications/test/multiWorld/solidFoam/solid1/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/applications/test/multiWorld/solidFoam/solid1/constant/g +++ b/applications/test/multiWorld/solidFoam/solid1/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/constant/radiationProperties b/applications/test/multiWorld/solidFoam/solid1/constant/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/applications/test/multiWorld/solidFoam/solid1/constant/radiationProperties +++ b/applications/test/multiWorld/solidFoam/solid1/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/constant/thermophysicalProperties b/applications/test/multiWorld/solidFoam/solid1/constant/thermophysicalProperties index 088877f64fad574449b69284818ad38c61695c1c..5954c4103d193ce651fcf269127aca072fc5b05a 100644 --- a/applications/test/multiWorld/solidFoam/solid1/constant/thermophysicalProperties +++ b/applications/test/multiWorld/solidFoam/solid1/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/system/blockMeshDict b/applications/test/multiWorld/solidFoam/solid1/system/blockMeshDict index 6b59b899c791da844d5bcce047fe0bd94d3908ef..ebe4fd109f45cecf7fcc61d797bc4d9fd0cd8084 100644 --- a/applications/test/multiWorld/solidFoam/solid1/system/blockMeshDict +++ b/applications/test/multiWorld/solidFoam/solid1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/system/controlDict b/applications/test/multiWorld/solidFoam/solid1/system/controlDict index 6411ee470439659d6e3fcc94ecc76fa5b4a6a3cc..5777bb4f15b5776f99ecde06e4a7708a13312f36 100644 --- a/applications/test/multiWorld/solidFoam/solid1/system/controlDict +++ b/applications/test/multiWorld/solidFoam/solid1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/system/decomposeParDict b/applications/test/multiWorld/solidFoam/solid1/system/decomposeParDict index e00f3cec98a349fc48cfdcd41093930bae29fe7d..86ffb4fba91b4e269323bc00fe5def947e4f15ea 100644 --- a/applications/test/multiWorld/solidFoam/solid1/system/decomposeParDict +++ b/applications/test/multiWorld/solidFoam/solid1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/system/fvSchemes b/applications/test/multiWorld/solidFoam/solid1/system/fvSchemes index cd57e16559434211c757341983f7b13391be75e0..1ea5e5c9ba3b34515559c63ce0fdf3bc1b98b0dd 100644 --- a/applications/test/multiWorld/solidFoam/solid1/system/fvSchemes +++ b/applications/test/multiWorld/solidFoam/solid1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1/system/fvSolution b/applications/test/multiWorld/solidFoam/solid1/system/fvSolution index c8aacc1f72bf0d5e621cbbc2896d5264414a1254..c810bcbef63bcf479e7c5946348a536abad3382b 100644 --- a/applications/test/multiWorld/solidFoam/solid1/system/fvSolution +++ b/applications/test/multiWorld/solidFoam/solid1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/T b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/T index 12287e6c310ec3611c31fd7a1dc5824c4666b7cf..7bc953313f716f67b195171987430c7975a35e7a 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/T +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/p b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/p index eacb64e0af5d66dd3c11e2e53385ae2828629371..7bee48b936b3c5917742e86eab1976493955d8d4 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/p +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid1/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/T b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/T index 022da3b3e119f4a159a0f036cda61e433eeaa109..280044f46c1ef6e86b1a95fce0f7d7b9b64b7f73 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/T +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/p b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/p index 41649262b7338bb3decacf032573a56aee38a6e2..39e1b174dc265d3e4c947e25466d1fea661f0ebf 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/p +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/0.orig/solid2/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/g b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/g +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/regionProperties b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/regionProperties index 34cb5058fff10141da5c61de17889ae77f306e66..76132afadcca4f6a74afadb42783bf3fb0aa546a 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/regionProperties +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/radiationProperties b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/radiationProperties +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/thermophysicalProperties b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/thermophysicalProperties index 088877f64fad574449b69284818ad38c61695c1c..5954c4103d193ce651fcf269127aca072fc5b05a 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/thermophysicalProperties +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/constant/solid1/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/controlDict b/applications/test/multiWorld/solidFoam/solid1_solid2/system/controlDict index 3aa721be88d66211b021dfc5b598c43f4b1c0222..1d6ed623791a5311c2294138c2ad4ea5e022c3aa 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/controlDict +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSchemes b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSchemes index cd57e16559434211c757341983f7b13391be75e0..1ea5e5c9ba3b34515559c63ce0fdf3bc1b98b0dd 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSchemes +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution index ac42485a2f7f921e7b186ae03f120be79c540ce8..3655bbbf2ffc0b807092cd53ceab5578a34f31b3 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution-energyCoupling b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution-energyCoupling index ac42485a2f7f921e7b186ae03f120be79c540ce8..3655bbbf2ffc0b807092cd53ceab5578a34f31b3 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution-energyCoupling +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/fvSolution-energyCoupling @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid1/blockMeshDict b/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid1/blockMeshDict index 3a84e9403efae0b42e82f354bfb1b72cc6632329..32669c88e97bb5d6288d3529d975fc53ef75ae9b 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid1/blockMeshDict +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid1/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid2/blockMeshDict b/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid2/blockMeshDict index ae93b55577d25bd482b12aa911ca20af59c8d08c..8af815d41c1d73746eb4ab8e36bd5e21ce0a8579 100644 --- a/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid2/blockMeshDict +++ b/applications/test/multiWorld/solidFoam/solid1_solid2/system/solid2/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid2/0/T b/applications/test/multiWorld/solidFoam/solid2/0/T index 022da3b3e119f4a159a0f036cda61e433eeaa109..280044f46c1ef6e86b1a95fce0f7d7b9b64b7f73 100644 --- a/applications/test/multiWorld/solidFoam/solid2/0/T +++ b/applications/test/multiWorld/solidFoam/solid2/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid2/0/p b/applications/test/multiWorld/solidFoam/solid2/0/p index 41649262b7338bb3decacf032573a56aee38a6e2..39e1b174dc265d3e4c947e25466d1fea661f0ebf 100644 --- a/applications/test/multiWorld/solidFoam/solid2/0/p +++ b/applications/test/multiWorld/solidFoam/solid2/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/multiWorld/solidFoam/solid2/system/blockMeshDict b/applications/test/multiWorld/solidFoam/solid2/system/blockMeshDict index df5378febfcae8358572cb551991e02c78bb798f..bcf42cf23bdf6eef99482de98fa64d86ca4d8aa4 100644 --- a/applications/test/multiWorld/solidFoam/solid2/system/blockMeshDict +++ b/applications/test/multiWorld/solidFoam/solid2/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/namedDictionary/Test-namedDictionary.C b/applications/test/namedDictionary/Test-namedDictionary.C index fc7e4185473e34ac0ac63ce2b48db21d6ee5a1c2..9a6b38c3d787a2a89bff1f47778769ac158331e7 100644 --- a/applications/test/namedDictionary/Test-namedDictionary.C +++ b/applications/test/namedDictionary/Test-namedDictionary.C @@ -66,13 +66,13 @@ int main(int argc, char *argv[]) for (const entry& dEntry : dict) { - if (!dEntry.isStream()) + if (dEntry.isStream()) { - continue; + List<namedDictionary> list(dEntry.stream()); + + Info<< "input: " << dEntry << nl + << "list: " << list << nl; } - Info<< "input: " << dEntry << nl; - List<namedDictionary> list(dEntry.stream()); - Info<< "list: " << list << nl; } } } diff --git a/applications/test/namedDictionary/testDict1 b/applications/test/namedDictionary/testDict1 index ba787f0f05d0f486ae35a0b3f4fa876229dd6bc9..adfc10ac26e848b3c02f4fa7609f4549cac8e1c2 100644 --- a/applications/test/namedDictionary/testDict1 +++ b/applications/test/namedDictionary/testDict1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/nullObject/Make/files b/applications/test/nullObject/Make/files index dffa06d74712a1c7bf3d4eaa480c6ca82768f622..fdd71c155e11dffcbe6104e17e546288030615a2 100644 --- a/applications/test/nullObject/Make/files +++ b/applications/test/nullObject/Make/files @@ -1,3 +1,3 @@ -Test-nullObject.C +Test-nullObject.cxx EXE = $(FOAM_USER_APPBIN)/Test-nullObject diff --git a/applications/test/nullObject/Test-nullObject.C b/applications/test/nullObject/Test-nullObject.cxx similarity index 83% rename from applications/test/nullObject/Test-nullObject.C rename to applications/test/nullObject/Test-nullObject.cxx index 5c86e4e50056b5a3ff926538a1637adb53f757ba..475a4e55b00f6cb7d6464bba011186d4e7a21125 100644 --- a/applications/test/nullObject/Test-nullObject.C +++ b/applications/test/nullObject/Test-nullObject.cxx @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,6 +37,7 @@ Description #include "HashSet.H" #include "faceList.H" #include "pointField.H" +#include "globalIndex.H" #include "IOstreams.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -48,7 +49,7 @@ class SimpleClass public: //- Default construct - SimpleClass() {} + SimpleClass() = default; }; @@ -73,9 +74,8 @@ void printInfo(const UList<T>& list) int main() { // Test pointer and reference to a class - - SimpleClass* ptrToClass = new SimpleClass; - SimpleClass& refToClass(*ptrToClass); + auto ptrToClass = autoPtr<SimpleClass>::New(); + auto& refToClass = ptrToClass.ref(); std::cout << "nullObject addr=" << name(&(nullObjectPtr)) << nl @@ -89,13 +89,13 @@ int main() << " pointer:" << name(nullObjectPtr->pointer()) << nl << " value:" << nullObjectPtr->value() << nl << nl; - if (notNull(ptrToClass)) + if (notNull(ptrToClass.get())) { Info<< "Pass: ptrToClass is not null" << nl; } else { - Info<< "FAIL: refToClass is null" << nl; + Info<< "FAIL: ptrToClass is null" << nl; } if (notNull(refToClass)) @@ -110,8 +110,8 @@ int main() // Test pointer and reference to the nullObject - const SimpleClass* ptrToNull(NullObjectPtr<SimpleClass>()); - const SimpleClass& refToNull(*ptrToNull); + const SimpleClass* ptrToNull = NullObjectPtr<SimpleClass>(); + const SimpleClass& refToNull = (*ptrToNull); if (isNull(ptrToNull)) { @@ -131,9 +131,6 @@ int main() Info<< "FAIL: refToNull is not null" << nl; } - // Clean-up - delete ptrToClass; - // Test List casting { @@ -152,7 +149,19 @@ int main() // Looks pretty ugly though! NullObject::nullObject = "hello world"; - NullObject::nullObject = labelList({1, 2, 3}); + NullObject::nullObject = Foam::identity(5); + + + { + const auto& gi = globalIndex::null(); + Info<< "globalIndex::null() => " + << " empty: " << gi.empty() + << " nProcs: " << gi.nProcs() + << " total-size: " << gi.totalSize() << nl; + + // Even this works + Info<< " offsets: " << gi.offsets() << nl; + } Info<< nl; diff --git a/applications/test/parallel-chunks/Test-parallel-chunks.C b/applications/test/parallel-chunks/Test-parallel-chunks.C index b5181bccec94cbdeffd908884b86c33139a5b2d7..30e71a12c51c187a92a636c892783697fe9cefaa 100644 --- a/applications/test/parallel-chunks/Test-parallel-chunks.C +++ b/applications/test/parallel-chunks/Test-parallel-chunks.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,175 +44,62 @@ Description using namespace Foam; -// Looks like Pstream::exchangeBuf -template<class T> -void do_exchangeBuf +//- Number of elements corresponding to max byte transfer. +// Normal upper limit is INT_MAX since MPI sizes are limited to <int>. +template<class Type> +inline std::size_t maxTransferCount ( - const label sendSize, - const char* sendData, - const label recvSize, - char* recvData, - const int tag, - const label comm, - const bool wait -) + const std::size_t max_bytes = std::size_t(0) +) noexcept { - const label startOfRequests = UPstream::nRequests(); - - // Set up receives - // ~~~~~~~~~~~~~~~ - - // forAll(recvSizes, proci) - { - // if (proci != Pstream::myProcNo(comm) && recvSizes[proci] > 0) - if (!Pstream::master(comm) && recvSize > 0) - { - UIPstream::read - ( - UPstream::commsTypes::nonBlocking, - UPstream::myProcNo(comm), // proci, - recvData, - recvSize*sizeof(T), - tag, - comm - ); - } - } - - - // Set up sends - // ~~~~~~~~~~~~ - - // forAll(sendBufs, proci) - for (const int proci : Pstream::subProcs(comm)) - { - if (sendSize > 0) - // if (proci != Pstream::myProcNo(comm) && sendSizes[proci] > 0) - { - if - ( - !UOPstream::write - ( - UPstream::commsTypes::nonBlocking, - proci, - sendData, - sendSize*sizeof(T), - tag, - comm - ) - ) - { - FatalErrorInFunction - << "Cannot send outgoing message. " - << "to:" << proci << " nBytes:" - << label(sendSize*sizeof(T)) - << Foam::abort(FatalError); - } - } - } - - - // Wait for all to finish - // ~~~~~~~~~~~~~~~~~~~~~~ - - if (wait) - { - UPstream::waitRequests(startOfRequests); - } + return + ( + (max_bytes == 0) // ie, unlimited + ? (std::size_t(0)) // + : (max_bytes > std::size_t(INT_MAX)) // MPI limit is <int> + ? (std::size_t(INT_MAX) / sizeof(Type)) // + : (max_bytes > sizeof(Type)) // require an integral number + ? (max_bytes / sizeof(Type)) // + : (std::size_t(1)) // min of one element + ); } -// Looks like Pstream::exchangeContainer -template<class Container, class T> -void do_exchangeContainer +//- Upper limit on number of transfer bytes. +// Max bytes is normally INT_MAX since MPI sizes are limited to <int>. +// Negative values indicate a subtraction from INT_MAX. +inline std::size_t PstreamDetail_maxTransferBytes ( - const Container& sendData, - const label recvSize, - Container& recvData, - const int tag, - const label comm, - const bool wait -) + const int64_t max_bytes +) noexcept { - const label startOfRequests = UPstream::nRequests(); - - // Set up receives - // ~~~~~~~~~~~~~~~ - - // for (const int proci : Pstream::allProcs(comm)) - { - if (!Pstream::master(comm) && recvSize > 0) - // if (proci != Pstream::myProcNo(comm) && recvSize > 0) - { - UIPstream::read - ( - UPstream::commsTypes::nonBlocking, - UPstream::myProcNo(comm), // proci, - recvData.data_bytes(), - recvSize*sizeof(T), - tag, - comm - ); - } - } - - - // Set up sends - // ~~~~~~~~~~~~ - - if (Pstream::master(comm) && sendData.size() > 0) - { - for (const int proci : Pstream::subProcs(comm)) - { - if - ( - !UOPstream::write - ( - UPstream::commsTypes::nonBlocking, - proci, - sendData.cdata_bytes(), - sendData.size_bytes(), - tag, - comm - ) - ) - { - FatalErrorInFunction - << "Cannot send outgoing message. " - << "to:" << proci << " nBytes:" - << label(sendData.size_bytes()) - << Foam::abort(FatalError); - } - } - } - - // Wait for all to finish - // ~~~~~~~~~~~~~~~~~~~~~~ - - if (wait) - { - UPstream::waitRequests(startOfRequests); - } + return + ( + (max_bytes < 0) // (numBytes fewer than INT_MAX) + ? std::size_t(INT_MAX + max_bytes) + : std::size_t(max_bytes) + ); } -template<class Container, class T> +template<class Container, class Type> void broadcast_chunks ( Container& sendData, const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm, - const bool wait = true + const label comm = UPstream::worldComm + const int64_t maxComms_bytes = UPstream::maxCommsSize ) { // OR static_assert(is_contiguous<T>::value, "Contiguous data only!") - if (!is_contiguous<T>::value) + if (!is_contiguous<Type>::value) { FatalErrorInFunction - << "Contiguous data only." << sizeof(T) << Foam::abort(FatalError); + << "Contiguous data only." << sizeof(Type) + << Foam::abort(FatalError); } - if (UPstream::maxCommsSize <= 0) + if (maxComms_bytes == 0) { // Do in one go Info<< "send " << sendData.size() << " elements in one go" << endl; @@ -227,93 +114,90 @@ void broadcast_chunks sendData.resize_nocopy(recvSize); // A no-op on master - // Determine the number of chunks to send. Note that we - // only have to look at the sending data since we are - // guaranteed that some processor's sending size is some other - // processor's receive size. Also we can ignore any local comms. - // We need to send chunks so the number of iterations: - // maxChunkSize iterations - // ------------ ---------- - // 0 0 - // 1..maxChunkSize 1 - // maxChunkSize+1..2*maxChunkSize 2 - // ... - - const label maxChunkSize + // The chunk size (number of elements) corresponding to max byte transfer + // Is zero for non-chunked exchanges. + const std::size_t chunkSize ( - max + PstreamDetail_maxTransferCount<Type> ( - static_cast<label>(1), - static_cast<label>(UPstream::maxCommsSize/sizeof(T)) + PstreamDetail_maxTransferBytes(maxComms_bytes) ) ); - label nChunks(0); - { - // Get max send count (elements) - // forAll(sendBufs, proci) - // { - // if (proci != Pstream::myProcNo(comm)) - // { - // nChunks = max(nChunks, sendBufs[proci].size()); - // } - // } - nChunks = sendSize; + if (chunkSize) + { // Convert from send count (elements) to number of chunks. // Can normally calculate with (count-1), but add some safety - if (nChunks) - { - nChunks = 1 + (nChunks/maxChunkSize); - } - reduce(nChunks, maxOp<label>(), tag, comm); + label nChunks = 1 + (sendSize/label(chunkSize)); Info << "send " << sendSize << " elements (" - << (sendSize*sizeof(T)) << " bytes) in " << nChunks - << " chunks of " << maxChunkSize << " elements (" - << (maxChunkSize*sizeof(T)) << " bytes) for maxCommsSize:" - << Pstream::maxCommsSize + << (sendSize*sizeof(Type)) << " bytes) in " << nChunks + << " chunks of " << label(chunkSize) << " elements (" + << label(chunkSize*sizeof(Type)) << " bytes) for maxCommsSize:" + << label(maxComms_bytes) << endl; } + // stress-test with shortened sendSize // will produce useless loops, but no calls // sendSize /= 2; - label nSend(0); - label startSend(0); - char* charPtrSend; + typedef stdFoam::span<Type> sendType; - for (label iter = 0; iter < nChunks; ++iter) + do { - nSend = min - ( - maxChunkSize, - sendSize-startSend - ); + sendType payload(sendData.data(), sendData.size()); - charPtrSend = - ( - nSend > 0 - ? reinterpret_cast<char*>(&(sendData[startSend])) - : nullptr - ); + if (!chunkSize) + { + UPstream::broadcast + ( + payload.data_bytes(), + payload.size_bytes(), + comm + ); + break; + } - Info<< "iter " << iter - << ": beg=" << startSend << " len=" << nSend - << " (" << (nSend*sizeof(T)) << " bytes)" << endl; + // Dispatch chunk-wise until there is nothing left + for (int iter = 0; /*true*/; ++iter) + { + // The begin/end for the data window + const std::size_t beg = (std::size_t(iter)*chunkSize); + const std::size_t end = (std::size_t(iter+1)*chunkSize); - UPstream::broadcast(charPtrSend, nSend*sizeof(T), comm); + if (payload.size() <= beg) + { + // No more data windows + break; + } - // forAll(nSend, proci) - { - startSend += nSend; + sendType window + ( + (end < payload.size()) + ? payload.subspan(beg, end - beg) + : payload.subspan(beg) + ); + + Info<< "iter " << iter + << ": beg=" << label(beg) << " len=" << label(window.size()) + << " (" << label(window.size_bytes()) << " bytes)" << endl; + + UPstream::broadcast + ( + window.data_bytes(), + window.size_bytes(), + comm + ); } } + while (false); - Info<< "final: " << startSend << endl; + Info<< "final" << endl; } @@ -333,7 +217,7 @@ int main(int argc, char *argv[]) } labelList input1; - if (Pstream::master()) + if (UPstream::master()) { input1 = identity(500); } @@ -348,7 +232,7 @@ int main(int argc, char *argv[]) // Mostly the same with PstreamBuffers if (false) { - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; labelList sendData; if (Pstream::master()) diff --git a/applications/test/parallel-comm1/Test-parallel-comm1.C b/applications/test/parallel-comm1/Test-parallel-comm1.C index ed8ce38516877eac45cd5ff02f66bd2d4a47cd29..33a6bd5bdcb54a81a0abd1eb98a01eb22d412026 100644 --- a/applications/test/parallel-comm1/Test-parallel-comm1.C +++ b/applications/test/parallel-comm1/Test-parallel-comm1.C @@ -50,37 +50,37 @@ scalar sumReduce ) { scalar sum = 0; - if (Pstream::parRun()) + if (UPstream::parRun()) { if (UPstream::master(comm)) { - // Add master value and all slaves + // Add master value and all sub-procs sum = localValue; - for (const int slave : UPstream::subProcs(comm)) + for (const int proci : UPstream::subProcs(comm)) { - scalar slaveValue; + scalar procValue; UIPstream::read ( - Pstream::commsTypes::blocking, - slave, - reinterpret_cast<char*>(&slaveValue), + UPstream::commsTypes::buffered, + proci, + reinterpret_cast<char*>(&procValue), sizeof(scalar), UPstream::msgType(), // tag comm // communicator ); - sum += slaveValue; + sum += procValue; } - // Send back to slaves + // Send back - for (const int slave : UPstream::subProcs(comm)) + for (const int proci : UPstream::subProcs(comm)) { UOPstream::write ( - UPstream::commsTypes::blocking, - slave, + UPstream::commsTypes::buffered, + proci, reinterpret_cast<const char*>(&sum), sizeof(scalar), UPstream::msgType(), // tag @@ -93,7 +93,7 @@ scalar sumReduce { UOPstream::write ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::buffered, UPstream::masterNo(), reinterpret_cast<const char*>(&localValue), sizeof(scalar), @@ -105,7 +105,7 @@ scalar sumReduce { UIPstream::read ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::buffered, UPstream::masterNo(), reinterpret_cast<char*>(&sum), sizeof(scalar), diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/0/T b/applications/test/parallel-comm1/oneBlock_cyclic/0/T index 8460cc6cf9c60c7ac8b33e60c4ffd0f13c96fe75..25bb850ce60b35acc264b3211d93d0f8b782d758 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/0/T +++ b/applications/test/parallel-comm1/oneBlock_cyclic/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/constant/transportProperties b/applications/test/parallel-comm1/oneBlock_cyclic/constant/transportProperties index 5d74f54db0765a340acb2bd1087a06665d32af55..39f9579daa9a80142e7865307d119d8f260ab7f2 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/constant/transportProperties +++ b/applications/test/parallel-comm1/oneBlock_cyclic/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/system/blockMeshDict b/applications/test/parallel-comm1/oneBlock_cyclic/system/blockMeshDict index d6025ee7cfb1044fd2740a27606f427976e03f3a..0717d45c2561a4e27730719be109ec9bd10278ca 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/system/blockMeshDict +++ b/applications/test/parallel-comm1/oneBlock_cyclic/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/system/controlDict b/applications/test/parallel-comm1/oneBlock_cyclic/system/controlDict index 9ad032b48ce562da060b78f52e1ab5cc3aef1bb3..2731f22f2d091b622df1bcbcb01590d9f9b51523 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/system/controlDict +++ b/applications/test/parallel-comm1/oneBlock_cyclic/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/system/decomposeParDict b/applications/test/parallel-comm1/oneBlock_cyclic/system/decomposeParDict index 8e8ac9d16bd11e7f388290ed1707377a5f752fb0..4bad0dfc917746a1a2a92315d38a3535f07fc4f6 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/system/decomposeParDict +++ b/applications/test/parallel-comm1/oneBlock_cyclic/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSchemes b/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSchemes index 6ca6eae217e86b9679556cbe296ccabae8fff0d7..cc30cf8904ea10c653b0c145cdd74e79cef014bc 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSchemes +++ b/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSolution b/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSolution index d12ab2519c5c2fdd756f71d6824fd956c936109f..782b71974f40ecff90bc4b8c9ca7d7e2d44fe7a4 100644 --- a/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSolution +++ b/applications/test/parallel-comm1/oneBlock_cyclic/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/T b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/T index d57a1d9af0e5ce83890077b4930c4e1ef6ff0f85..b412c656e65d6b41aba6607831a04e9fbc52f0b1 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/T +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/cellToRegion b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/cellToRegion index 3e8b23d6a1971b7a71b010986b2055564154b7c2..17560e6e5d0660e93451cf66d120efc03fc6e666 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/cellToRegion +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/cellToRegion @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/processorID b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/processorID index 2be2281188e98d5785da4930c50499ddee360fa3..b4e207a07f47987f5bb9599ac00de09829b0bb87 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/processorID +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/0/processorID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/constant/transportProperties b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/constant/transportProperties index 5d74f54db0765a340acb2bd1087a06665d32af55..39f9579daa9a80142e7865307d119d8f260ab7f2 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/constant/transportProperties +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/blockMeshDict b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/blockMeshDict index 126c34e4bafed4008d85e37a0cc9791661dc4d91..234c4cdbdde24648753a6afb63d1e7f84512681a 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/blockMeshDict +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/controlDict b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/controlDict index 9ad032b48ce562da060b78f52e1ab5cc3aef1bb3..2731f22f2d091b622df1bcbcb01590d9f9b51523 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/controlDict +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/decomposeParDict b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/decomposeParDict index 019150f5139912e9fa03133a1c32ca4a6f708732..d9f27c5d3427eeb5a693ef1f63f715e2ba98a553 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/decomposeParDict +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSchemes b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSchemes index 6ca6eae217e86b9679556cbe296ccabae8fff0d7..cc30cf8904ea10c653b0c145cdd74e79cef014bc 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSchemes +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSolution b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSolution index d12ab2519c5c2fdd756f71d6824fd956c936109f..782b71974f40ecff90bc4b8c9ca7d7e2d44fe7a4 100644 --- a/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSolution +++ b/applications/test/parallel-comm1/twoBlocks_cyclicAMI/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallel-comm2/Test-parallel-comm2.C b/applications/test/parallel-comm2/Test-parallel-comm2.C index 6da3b03faaef51b62cb939c8b9f07a18d57b80fc..5b28c75b7c9bf5a7be4be1db750a21f5e7468599 100644 --- a/applications/test/parallel-comm2/Test-parallel-comm2.C +++ b/applications/test/parallel-comm2/Test-parallel-comm2.C @@ -41,14 +41,7 @@ Description #include "PstreamReduceOps.H" #include "SHA1.H" -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "openfoam_mpi.H" using namespace Foam; diff --git a/applications/test/parallel-comm3a/Test-parallel-comm3a.C b/applications/test/parallel-comm3a/Test-parallel-comm3a.C index 2dc745988be51582e74d61c9a2089679f5bb8461..c0eb29074f046f931e9f40f6f1684093dead57cf 100644 --- a/applications/test/parallel-comm3a/Test-parallel-comm3a.C +++ b/applications/test/parallel-comm3a/Test-parallel-comm3a.C @@ -41,14 +41,7 @@ Description #include "StringStream.H" #include "Random.H" -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "openfoam_mpi.H" using namespace Foam; diff --git a/applications/test/parallel-comm3b/Test-parallel-comm3b.C b/applications/test/parallel-comm3b/Test-parallel-comm3b.C index 0bbcc5da5e1f381da4e6d9fdcd18907a1bde8787..ea64880146d0e46d41e94b1d95cff6be770d2500 100644 --- a/applications/test/parallel-comm3b/Test-parallel-comm3b.C +++ b/applications/test/parallel-comm3b/Test-parallel-comm3b.C @@ -130,7 +130,7 @@ int main(int argc, char *argv[]) for (bool barrier_active = false, done = false; !done; /*nil*/) { - std::pair<int, int> probed = + std::pair<int, int64_t> probed = UPstream::probeMessage ( UPstream::commsTypes::nonBlocking, @@ -143,8 +143,8 @@ int main(int argc, char *argv[]) { // Message found and had size: receive it - const label proci = probed.first; - const label count = probed.second; + const label proci(probed.first); + const label count(probed.second); recvBufs(proci).resize_nocopy(count); recvFromProc(recvRequests.size()) = proci; diff --git a/applications/test/parallel-external-init/Test-parallel-external-init.C b/applications/test/parallel-external-init/Test-parallel-external-init.C index 6c1af9fedc03113a1d89617c062ac26142242ee6..626c4902bbaa214a7f2642c9fe7ce978dfe89646 100644 --- a/applications/test/parallel-external-init/Test-parallel-external-init.C +++ b/applications/test/parallel-external-init/Test-parallel-external-init.C @@ -40,14 +40,7 @@ Description #include "Pstream.H" #include <iostream> -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "openfoam_mpi.H" using namespace Foam; diff --git a/applications/test/parallel-nbx2/Test-parallel-nbx2.C b/applications/test/parallel-nbx2/Test-parallel-nbx2.C index 27bb661e0d2c7fd8aa44b68b292f3c1b5760f308..9919c42c90b0379c7d88474834ab6d1a8b3bb14a 100644 --- a/applications/test/parallel-nbx2/Test-parallel-nbx2.C +++ b/applications/test/parallel-nbx2/Test-parallel-nbx2.C @@ -119,7 +119,7 @@ int main(int argc, char *argv[]) for (bool barrier_active = false, done = false; !done; /*nil*/) { - std::pair<int, int> probed = + std::pair<int, int64_t> probed = UPstream::probeMessage ( UPstream::commsTypes::nonBlocking, @@ -132,14 +132,14 @@ int main(int argc, char *argv[]) { // Message found and had size: receive it - const label proci = probed.first; - const label count = probed.second; + const label proci(probed.first); + const label count(probed.second); if (optNonBlocking) { recvBufs(proci).resize_nocopy(count); - // Non-blocking read + // Non-blocking read - MPI_Irecv() UIPstream::read ( recvRequests.emplace_back(), @@ -155,9 +155,9 @@ int main(int argc, char *argv[]) { IPstream is ( - UPstream::commsTypes::scheduled, - probed.first, - probed.second, + UPstream::commsTypes::scheduled, // ie, MPI_Recv() + proci, + count, // bufSize tag, comm ); diff --git a/applications/test/parallel-nonBlocking/Test-parallel-nonBlocking.C b/applications/test/parallel-nonBlocking/Test-parallel-nonBlocking.C index ce00f4d8cbe0f8c4da50cc7d53049b9214a44e21..e5ec8bd2b6ce3c79800936aa90265f565b9fe601 100644 --- a/applications/test/parallel-nonBlocking/Test-parallel-nonBlocking.C +++ b/applications/test/parallel-nonBlocking/Test-parallel-nonBlocking.C @@ -66,7 +66,7 @@ int main(int argc, char *argv[]) Pstream::myProcNo() ); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; if (!Pstream::master()) { @@ -150,7 +150,7 @@ int main(int argc, char *argv[]) // Do a non-blocking send inbetween { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; for (const int proci : Pstream::allProcs()) { diff --git a/applications/test/parallel/Test-parallel.C b/applications/test/parallel/Test-parallel.C index 580ae453a8ac75694f0bc61c3ccf1498752b3fe7..fa6ab72bee0c4196f14c88e7ea3797846236d6e8 100644 --- a/applications/test/parallel/Test-parallel.C +++ b/applications/test/parallel/Test-parallel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,27 +52,27 @@ void testMapDistribute() // Generate random data. List<Tuple2<label, List<scalar>>> complexData(100); - forAll(complexData, i) + for (auto& data : complexData) { - complexData[i].first() = rndGen.position(0, Pstream::nProcs()-1); - complexData[i].second().setSize(3); - complexData[i].second()[0] = 1; - complexData[i].second()[1] = 2; - complexData[i].second()[2] = 3; + data.first() = rndGen.position(0, UPstream::nProcs()-1); + data.second().resize(3); + data.second()[0] = 1; + data.second()[1] = 2; + data.second()[2] = 3; } // Send all ones to processor indicated by .first() // Count how many to send - labelList nSend(Pstream::nProcs(), Zero); - forAll(complexData, i) + labelList nSend(UPstream::nProcs(), Foam::zero{}); + for (const auto& data : complexData) { - const label proci = complexData[i].first(); + const label proci = data.first(); nSend[proci]++; } // Collect items to be sent - labelListList sendMap(Pstream::nProcs()); + labelListList sendMap(UPstream::nProcs()); forAll(sendMap, proci) { sendMap[proci].resize_nocopy(nSend[proci]); @@ -116,40 +116,35 @@ void testTransfer(const T& input) { T data = input; - if (Pstream::master()) + if (UPstream::master()) { Perr<<"test transfer (" << (typeid(T).name()) << "): "; perrInfo(data) << nl << endl; - } - if (Pstream::master()) - { - for (const int slave : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - Perr<< "master receiving from slave " << slave << endl; - IPstream fromSlave(Pstream::commsTypes::blocking, slave); - fromSlave >> data; + Perr<< "master receiving from proc:" << proci << endl; + IPstream::recv(data, proci); perrInfo(data) << endl; } - for (const int slave : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - Perr<< "master sending to slave " << slave << endl; - OPstream toSlave(Pstream::commsTypes::blocking, slave); - toSlave << data; + Perr<< "master sending to proc:" << proci << endl; + OPstream os(UPstream::commsTypes::buffered, proci); + os << data; } } else { { - Perr<< "slave sending to master " << Pstream::masterNo() << endl; - OPstream toMaster(Pstream::commsTypes::blocking, Pstream::masterNo()); - toMaster << data; + Perr<< "proc sending to master" << endl; + OPstream os(UPstream::commsTypes::buffered, UPstream::masterNo()); + os << data; } - Perr<< "slave receiving from master " << Pstream::masterNo() << endl; - IPstream fromMaster(Pstream::commsTypes::blocking, Pstream::masterNo()); - fromMaster >> data; + Perr<< "proc receiving from master" << endl; + IPstream::recv(data, UPstream::masterNo()); perrInfo(data) << endl; } } @@ -160,49 +155,35 @@ void testTokenized(const T& data) { token tok; - if (Pstream::master()) + if (UPstream::master()) { - Perr<<"test tokenized \"" << data << "\"" << nl << endl; - } + Perr<< "test tokenized \"" << data << "\"" << nl << endl; - if (Pstream::master()) - { - for (const int slave : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - Perr<< "master receiving from slave " << slave << endl; - IPstream fromSlave(Pstream::commsTypes::blocking, slave); - fromSlave >> tok; + Perr<< "master receiving from proc:" << proci << endl; + IPstream::recv(tok, proci); Perr<< tok.info() << endl; } - for (const int slave : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - Perr<< "master sending to slave " << slave << endl; - OPstream toSlave(Pstream::commsTypes::blocking, slave); - toSlave << data; + Perr<< "master sending to proc:" << proci << endl; + OPstream os(UPstream::commsTypes::buffered, proci); + os << tok; } } else { { - Perr<< "slave sending to master " << Pstream::masterNo() << endl; - OPstream toMaster - ( - Pstream::commsTypes::blocking, - Pstream::masterNo() - ); - - toMaster << data; + Perr<< "proc sending to master" << endl; + OPstream os(UPstream::commsTypes::buffered, UPstream::masterNo()); + os << tok; } - Perr<< "slave receiving from master " << Pstream::masterNo() << endl; - IPstream fromMaster - ( - Pstream::commsTypes::blocking, - Pstream::masterNo() - ); + Perr<< "proc receiving from master" << endl; + IPstream::recv(tok, UPstream::masterNo()); - fromMaster >> tok; Perr<< tok.info() << endl; } } @@ -212,12 +193,14 @@ void testTokenized(const T& data) int main(int argc, char *argv[]) { + argList::noCheckProcessorDirectories(); + #include "setRootCase.H" #include "createTime.H" testMapDistribute(); - if (!Pstream::parRun()) + if (!UPstream::parRun()) { Info<< "\nWarning: not parallel - skipping further tests\n" << endl; return 0; diff --git a/applications/test/parallelOverset/Make/options b/applications/test/parallelOverset/Make/options index b0aa2ef220daef87bf34aed01ad5ceef9cc4e607..db6c073e474b7e76ac88d5d351daee0c65e45e6f 100644 --- a/applications/test/parallelOverset/Make/options +++ b/applications/test/parallelOverset/Make/options @@ -7,5 +7,6 @@ EXE_INC = \ EXE_LIBS = \ -lfiniteVolume \ + -ldynamicFvMesh \ -lsampling \ -loverset diff --git a/applications/test/parallelOverset/heatTransfer/0.orig/T b/applications/test/parallelOverset/heatTransfer/0.orig/T index 4b9f8117500234c1081f67d1a7dd284452f74129..833a8ce584ccd08d183a3f3e953b806eefc46b1a 100644 --- a/applications/test/parallelOverset/heatTransfer/0.orig/T +++ b/applications/test/parallelOverset/heatTransfer/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/0.orig/pointDisplacement b/applications/test/parallelOverset/heatTransfer/0.orig/pointDisplacement index 5d75e0d5e761a7cb92ad92f21f8546dedf1acf09..ccc10feff4cfe059588701e2c9c6439780ffd30d 100644 --- a/applications/test/parallelOverset/heatTransfer/0.orig/pointDisplacement +++ b/applications/test/parallelOverset/heatTransfer/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/0.orig/zoneID b/applications/test/parallelOverset/heatTransfer/0.orig/zoneID index 36201b2e4e731ffd4e06dcbed9b7a98d0f065a6e..9235ad3aeb56df14fc7bd5725edf908fddc0fe8e 100644 --- a/applications/test/parallelOverset/heatTransfer/0.orig/zoneID +++ b/applications/test/parallelOverset/heatTransfer/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/constant/dynamicMeshDict b/applications/test/parallelOverset/heatTransfer/constant/dynamicMeshDict index 238f0ef8e6b25e4483e2116e8c1a64f0f2f878bf..71ac63592adc13407cc0480607f31b0dcf02ef80 100644 --- a/applications/test/parallelOverset/heatTransfer/constant/dynamicMeshDict +++ b/applications/test/parallelOverset/heatTransfer/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/constant/transportProperties b/applications/test/parallelOverset/heatTransfer/constant/transportProperties index 7f89780e5d41ff234ae592e624ba16410a3e8ee4..baa2904b081f5ed55a8cb5b44f86f43c3b32c0d0 100644 --- a/applications/test/parallelOverset/heatTransfer/constant/transportProperties +++ b/applications/test/parallelOverset/heatTransfer/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/blockMeshDict b/applications/test/parallelOverset/heatTransfer/system/blockMeshDict index 7e71841d3d16ddf473c2bb16e0d4c2f701dd3989..276b56bf9a716a2ee960e5a4a73fc5f76c4bb595 100644 --- a/applications/test/parallelOverset/heatTransfer/system/blockMeshDict +++ b/applications/test/parallelOverset/heatTransfer/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/controlDict b/applications/test/parallelOverset/heatTransfer/system/controlDict index ee167aaafc6056a351617d7145d10620de3b44d8..afa6e27e88065988983344393697029b02241a32 100644 --- a/applications/test/parallelOverset/heatTransfer/system/controlDict +++ b/applications/test/parallelOverset/heatTransfer/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/decomposeParDict b/applications/test/parallelOverset/heatTransfer/system/decomposeParDict index cf5d134fa1bfcca69c44242884012886138f5bbe..ba0ea0351a353cba9b229116181a3b5aa9380a81 100644 --- a/applications/test/parallelOverset/heatTransfer/system/decomposeParDict +++ b/applications/test/parallelOverset/heatTransfer/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/fvSchemes b/applications/test/parallelOverset/heatTransfer/system/fvSchemes index 5802dfc133d185278948b1a6b00764687b599c0c..85dd06cce54044e3f6a1cbc204a1f2eb6064e647 100644 --- a/applications/test/parallelOverset/heatTransfer/system/fvSchemes +++ b/applications/test/parallelOverset/heatTransfer/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/fvSolution b/applications/test/parallelOverset/heatTransfer/system/fvSolution index d42b7ed6889dfb1614e1bc37c79ceed2aca202e7..425ece7ffa14541091f0ca3836cf9ac5536e366a 100644 --- a/applications/test/parallelOverset/heatTransfer/system/fvSolution +++ b/applications/test/parallelOverset/heatTransfer/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/postProcessingDict b/applications/test/parallelOverset/heatTransfer/system/postProcessingDict index 6bbc6214d4ed8a9cd4bfe521c4df1b8f31ab3e73..82e626844ab87c0c87824a10ddc33edf837e035e 100644 --- a/applications/test/parallelOverset/heatTransfer/system/postProcessingDict +++ b/applications/test/parallelOverset/heatTransfer/system/postProcessingDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/processorField b/applications/test/parallelOverset/heatTransfer/system/processorField index e643c18384165edda935195d37aed557da53c8ad..b1fc0f49db9a0afff2d2c1859bee1b9969b9b1b0 100644 --- a/applications/test/parallelOverset/heatTransfer/system/processorField +++ b/applications/test/parallelOverset/heatTransfer/system/processorField @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/setFieldsDict b/applications/test/parallelOverset/heatTransfer/system/setFieldsDict index c9334c623aba15c4e6948540ec80e911d6ed4448..2f92137b3f093c78adfa4cd8edfacf6c60603e6c 100644 --- a/applications/test/parallelOverset/heatTransfer/system/setFieldsDict +++ b/applications/test/parallelOverset/heatTransfer/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/heatTransfer/system/topoSetDict b/applications/test/parallelOverset/heatTransfer/system/topoSetDict index 635f7268b630402dea808fdeee497a35137329df..e54e2d61d4987e78e2c60c10e491fd81486a846f 100644 --- a/applications/test/parallelOverset/heatTransfer/system/topoSetDict +++ b/applications/test/parallelOverset/heatTransfer/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/parallelOverset/laplacianDyMFoam.C b/applications/test/parallelOverset/laplacianDyMFoam.C index 997ef3f590e5a2abceedf40823e5d3d01d153e08..f94bbd2cafeb52e1883648a31a93dfdbc11451c4 100644 --- a/applications/test/parallelOverset/laplacianDyMFoam.C +++ b/applications/test/parallelOverset/laplacianDyMFoam.C @@ -56,6 +56,7 @@ Description #include "fvCFD.H" #include "simpleControl.H" +#include "predicates.H" #include "dynamicFvMesh.H" #include "dynamicOversetFvMesh.H" @@ -97,6 +98,7 @@ int main(int argc, char *argv[]) component(T.ref(), mesh.C(), 1); // Interpolate + halo swap T.correctBoundaryConditions(); + // T.boundaryFieldRef().evaluate_if(predicates::always{}); // Check halo swap dynamicOversetFvMesh::checkCoupledBC(T); } diff --git a/applications/test/patchRegion/cavity_pinched/constant/transportProperties b/applications/test/patchRegion/cavity_pinched/constant/transportProperties index b75993c5a8019225a41f373cf1c5587d4e0ea22f..871e36bb82ba3042deb8902e8235f19373ae2007 100644 --- a/applications/test/patchRegion/cavity_pinched/constant/transportProperties +++ b/applications/test/patchRegion/cavity_pinched/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/blockMeshDict b/applications/test/patchRegion/cavity_pinched/system/blockMeshDict index a2e490626eeddb38008238711df38bbf3de4ddab..5648392987975b6d5eb248ba1cd32a4aae642779 100644 --- a/applications/test/patchRegion/cavity_pinched/system/blockMeshDict +++ b/applications/test/patchRegion/cavity_pinched/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/collapseDict b/applications/test/patchRegion/cavity_pinched/system/collapseDict index 41372f5bd907b0b6ff172fa362426024a183bcab..ec549fbf4603a7492fb697c0703d7d691981156f 100644 --- a/applications/test/patchRegion/cavity_pinched/system/collapseDict +++ b/applications/test/patchRegion/cavity_pinched/system/collapseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/controlDict b/applications/test/patchRegion/cavity_pinched/system/controlDict index 8327fcb45ba37efb762c21f659d1e30a09ee5a48..4503cc9de894067615d61af96684d2b5c887dd2b 100644 --- a/applications/test/patchRegion/cavity_pinched/system/controlDict +++ b/applications/test/patchRegion/cavity_pinched/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/decomposeParDict b/applications/test/patchRegion/cavity_pinched/system/decomposeParDict index f0d6557eb3c22b3a25529f7e2ad5b12f351899bc..d23c935022a44c52125114cb7104d711da327013 100644 --- a/applications/test/patchRegion/cavity_pinched/system/decomposeParDict +++ b/applications/test/patchRegion/cavity_pinched/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/fvSchemes b/applications/test/patchRegion/cavity_pinched/system/fvSchemes index c0f00b28b74b85b8175f08dce6e66efecac4e49e..3edc14892c0c264cc5af6465cc737e8ba68a7af9 100644 --- a/applications/test/patchRegion/cavity_pinched/system/fvSchemes +++ b/applications/test/patchRegion/cavity_pinched/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/patchRegion/cavity_pinched/system/fvSolution b/applications/test/patchRegion/cavity_pinched/system/fvSolution index 98ae6de448cfc948a2803f506525878bc5d9c25b..68b888be0cbbba20b54431d78341c4a9453f5135 100644 --- a/applications/test/patchRegion/cavity_pinched/system/fvSolution +++ b/applications/test/patchRegion/cavity_pinched/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/processorTopology/Test-processorTopology.C b/applications/test/processorTopology/Test-processorTopology.C index 786e5bf07086218c92caccc3d5255ab1d439fe8a..ef3622556cc5187fbf424ab9cf0a8e5cc6f53e17 100644 --- a/applications/test/processorTopology/Test-processorTopology.C +++ b/applications/test/processorTopology/Test-processorTopology.C @@ -34,14 +34,7 @@ Description #include "globalMeshData.H" #include "OFstream.H" -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "openfoam_mpi.H" using namespace Foam; diff --git a/applications/test/readBroadcast1/Test-readBroadcast1.C b/applications/test/readBroadcast1/Test-readBroadcast1.C index fc9821593a56d094a0349b00907361bdb6cd3d6e..c5538f029f1e212f6c4f43073828aa3b43879dd5 100644 --- a/applications/test/readBroadcast1/Test-readBroadcast1.C +++ b/applications/test/readBroadcast1/Test-readBroadcast1.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,219 +29,12 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" -#include "OSspecific.H" // For fileSize() #include "Fstream.H" #include "Pstream.H" #include "SpanStream.H" -#include <limits> using namespace Foam; -// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // - -bool optUseSeek = false; -bool optVerbose = false; - -// Get file contents. Usually master-only and broadcast -static List<char> slurpFile -( - const fileName& pathname, - const bool parallel = UPstream::parRun(), - const bool masterOnly = true -) -{ - Info<< "slurp master-only:" << masterOnly - << " broadcast:" << (masterOnly && parallel) - << " seek:" << optUseSeek - << " file: " << pathname << nl; - - if (optUseSeek) - { - Info<< "Rewinding gzstream does not work..." << nl; - } - - // ------------------------- - - List<char> buffer; - - ifstreamPointer ifp; - - if (UPstream::master() || !masterOnly) - { - ifp.open(pathname); - } - - if (ifp && ifp->good()) - { - Info<< "compressed:" - << (IOstreamOption::COMPRESSED == ifp.whichCompression()) << nl; - - #if 0 - uint64_t inputSize = Foam::fileSize(pathname); - - if (IOstreamOption::COMPRESSED == ifp.whichCompression()) - { - ifp->ignore(std::numeric_limits<std::streamsize>::max()); - - const std::streamsize nread = ifp->gcount(); - - if (nread == std::numeric_limits<std::streamsize>::max()) - { - FatalErrorInFunction - << "Failed call to ignore()" << nl - << exit(FatalError); - } - inputSize = ifp->gcount(); - - if (optUseSeek) - { - // Rewinding gzstream does not really work... - ifp->rdbuf()->pubseekpos(0, std::ios_base::in); - } - else - { - // Open it again - gzstream rewinding is unreliable... - ifp.open(pathname); - } - } - - buffer.resize(label(inputSize)); - ifp->read(buffer.data(), buffer.size_bytes()); - - const std::streamsize nread = ifp->gcount(); - - if (nread == std::numeric_limits<std::streamsize>::max()) - { - FatalErrorInFunction - << "Failed call to read()" << nl - << exit(FatalError); - } - - buffer.resize(label(nread)); // Extra safety (paranoid) - - #else - - if (IOstreamOption::COMPRESSED == ifp.whichCompression()) - { - // For compressed files we do not have any idea how large - // the result will be. So read chunk-wise. - // Using the compressed size for the chunk size: - // 50% compression = 2 iterations - // 66% compression = 3 iterations - // ... - - const auto inputSize = Foam::fileSize(pathname + ".gz"); - - const uint64_t chunkSize = - ( - (inputSize <= 1024) - ? uint64_t(4096) - : uint64_t(2*inputSize) - ); - - uint64_t beg = 0; - - bool normalExit = false; - - for (int iter = 1; iter < 100000; ++iter) - { - if (optVerbose) - { - Info<< "iter " << iter << nl; - Info<< "chunk " << label(chunkSize) << nl; - Info<< "size " << label(iter * chunkSize) << nl; - } - - buffer.resize(label(iter * chunkSize)); - ifp->read(buffer.data() + beg, chunkSize); - - const std::streamsize nread = ifp->gcount(); - - if (optVerbose) - { - Info<< "nread: " << nread << nl; - } - - if - ( - nread < 0 - || nread == std::numeric_limits<std::streamsize>::max() - ) - { - if (iter == 0) - { - FatalErrorInFunction - << "Failed call to read()" << nl - << exit(FatalError); - } - break; - } - else - { - beg += uint64_t(nread); - if (nread >= 0 && uint64_t(nread) < chunkSize) - { - normalExit = true; - if (optVerbose) - { - Info<< "stopped after " - << iter << " iterations" << nl; - } - buffer.resize(label(beg)); - break; - } - } - } - - if (!normalExit) - { - FatalErrorInFunction - << "Abnormal exit" << nl - << exit(FatalError); - } - } - else - { - const auto inputSize = Foam::fileSize(pathname); - - if (inputSize >= 0) - { - buffer.resize(label(inputSize)); - ifp->read(buffer.data(), buffer.size_bytes()); - - const std::streamsize nread = ifp->gcount(); - - if - ( - nread < 0 - || nread == std::numeric_limits<std::streamsize>::max() - ) - { - FatalErrorInFunction - << "Failed call to read()" << nl - << exit(FatalError); - } - - buffer.resize(label(nread)); // Extra safety (paranoid) - } - } - #endif - } - - // Done with input file - ifp.reset(nullptr); - - if (parallel && masterOnly) - { - // On the assumption of larger files, - // prefer two broadcasts instead of serialization - Pstream::broadcastList(buffer); - } - - return buffer; -} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Main program: @@ -250,9 +43,8 @@ int main(int argc, char *argv[]) argList::noBanner(); argList::noFunctionObjects(); argList::noCheckProcessorDirectories(); - argList::addBoolOption("seek", "seek with gzstream (fails!)"); - argList::addVerboseOption("addition information"); - argList::addBoolOption("seek", "seek with gzstream"); + argList::addVerboseOption("additional information"); + argList::addBoolOption("fail", "fail if file cannot be opened"); argList::addBoolOption("no-broadcast", "suppress broadcast contents"); argList::addNote("Test master-only reading (with broadcast)"); @@ -262,8 +54,7 @@ int main(int argc, char *argv[]) #include "setRootCase.H" const bool syncPar = (UPstream::parRun() && !args.found("no-broadcast")); - optUseSeek = args.found("seek"); - optVerbose = args.verbose(); + const bool optFail = args.found("fail"); auto srcName = args.get<fileName>(1); @@ -276,7 +67,33 @@ int main(int argc, char *argv[]) ICharStream is; { - List<char> buffer(slurpFile(srcName, syncPar)); + DynamicList<char> buffer; + if (UPstream::master() || !syncPar) + { + if (optFail) + { + IFstream ifs(srcName, IOstreamOption::BINARY); + + if (!ifs.good()) + { + FatalIOErrorInFunction(srcName) + << "Cannot open file " << srcName + << exit(FatalIOError); + } + + buffer = IFstream::readContents(ifs); + } + else + { + buffer = IFstream::readContents(srcName); + } + } + + if (syncPar) + { + // Prefer two broadcasts instead of serialize/de-serialize + Pstream::broadcastList(buffer); + } is.swap(buffer); } diff --git a/applications/test/reconstructedDistanceFunction/case1/0.orig/U b/applications/test/reconstructedDistanceFunction/case1/0.orig/U index c7bcee4ec4504094ada08fc4f6fcb3d494fb13a9..6c3f2d2a3545c46cba27f0e0ea2940651dc2cb19 100644 --- a/applications/test/reconstructedDistanceFunction/case1/0.orig/U +++ b/applications/test/reconstructedDistanceFunction/case1/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/0.orig/alpha1 b/applications/test/reconstructedDistanceFunction/case1/0.orig/alpha1 index 16bc634c7c749d05b47d1e6bc8bbf78b1875550d..afd0eb8095969dc28e96358f0d4a7c6ca0068a87 100644 --- a/applications/test/reconstructedDistanceFunction/case1/0.orig/alpha1 +++ b/applications/test/reconstructedDistanceFunction/case1/0.orig/alpha1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/0.orig/markedCells b/applications/test/reconstructedDistanceFunction/case1/0.orig/markedCells index c2f0a272749564310e14a53f9432d01f9485034d..2898ebebe9c794f7fe6a30aba99599909dfe44d5 100644 --- a/applications/test/reconstructedDistanceFunction/case1/0.orig/markedCells +++ b/applications/test/reconstructedDistanceFunction/case1/0.orig/markedCells @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/constant/g b/applications/test/reconstructedDistanceFunction/case1/constant/g index de6f46aebb179ae49d8ae70e3af19d1c4c9a8bba..d42c18970d2e12edd3b08a89dbf28cf88b349df9 100644 --- a/applications/test/reconstructedDistanceFunction/case1/constant/g +++ b/applications/test/reconstructedDistanceFunction/case1/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/constant/transportProperties b/applications/test/reconstructedDistanceFunction/case1/constant/transportProperties index b1eaa54ec4801ef6396083c55eba455cee01300f..4b75367d32660095390a8a1f723d0da157cbdd49 100644 --- a/applications/test/reconstructedDistanceFunction/case1/constant/transportProperties +++ b/applications/test/reconstructedDistanceFunction/case1/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/constant/turbulenceProperties b/applications/test/reconstructedDistanceFunction/case1/constant/turbulenceProperties index f363405209c3a26ca4d50261a0ca9e45a2ee4498..388becd7687197651f88ddbc8506db0e2bda2b75 100644 --- a/applications/test/reconstructedDistanceFunction/case1/constant/turbulenceProperties +++ b/applications/test/reconstructedDistanceFunction/case1/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/blockMeshDict b/applications/test/reconstructedDistanceFunction/case1/system/blockMeshDict index 918f164af0e7e335504711593f6d4eb744d31037..51f6a9d8d0d689e0b71e9727659f72e7367ca1dc 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/blockMeshDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/changeDictionaryDict b/applications/test/reconstructedDistanceFunction/case1/system/changeDictionaryDict index 225c56400c9a3eb1a7418158be2762e5cd0c8364..5f4a18e53e0cef7cf79c4bc9b641be584ad2debf 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/changeDictionaryDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/controlDict b/applications/test/reconstructedDistanceFunction/case1/system/controlDict index af0b66889774050c38ed7ddbafd2c0d4d391c604..051435b41f201af60be87d6bd76268cddcbe3350 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/controlDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/decomposeParDict b/applications/test/reconstructedDistanceFunction/case1/system/decomposeParDict index d91b61b42c0846a50cddb93e45fd6f75c747761c..a59a86b4105725aab1b8d7142ca8df0c4a2f5bfd 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/decomposeParDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/fvSchemes b/applications/test/reconstructedDistanceFunction/case1/system/fvSchemes index f42b99fa234c1d0c452128a07e5907b9f3967de8..5365d72478dcdc0aa87f20f16f423c88f54ada4b 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/fvSchemes +++ b/applications/test/reconstructedDistanceFunction/case1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/fvSolution b/applications/test/reconstructedDistanceFunction/case1/system/fvSolution index 4d2436c51a0a48c70ae063c5ef81982db572eae6..819c85d4309b9c64039781fbd5a5330d5500d4cc 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/fvSolution +++ b/applications/test/reconstructedDistanceFunction/case1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/isoSurfDict b/applications/test/reconstructedDistanceFunction/case1/system/isoSurfDict index 05f0838e939f9b6d84f04db82775083c5346978a..5369d845ed6a07f743be15d4f9bafd9e8365c478 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/isoSurfDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/isoSurfDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/setAlphaFieldDict b/applications/test/reconstructedDistanceFunction/case1/system/setAlphaFieldDict index 3dca4107dcb009b964dfe4eddfcdb0eba233766b..c31426fcac954718eb73cd8fe873d0ada08dcf38 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/setAlphaFieldDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/setAlphaFieldDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/reconstructedDistanceFunction/case1/system/topoSetDict b/applications/test/reconstructedDistanceFunction/case1/system/topoSetDict index 0d6fd73ae07b0036318b532da192c35b21986274..29adbd5729a1eaa88254b426bac3cef174e0e513 100644 --- a/applications/test/reconstructedDistanceFunction/case1/system/topoSetDict +++ b/applications/test/reconstructedDistanceFunction/case1/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/regex1/testRegexps b/applications/test/regex1/testRegexps index a3dd95a9af11737ea35504b8e35ca2f0d6367eef..4d39ee8e8cc882b7e514335cc2d9e05b203fa51d 100644 --- a/applications/test/regex1/testRegexps +++ b/applications/test/regex1/testRegexps @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/regex1/testRegexps2 b/applications/test/regex1/testRegexps2 index 1550d1cdf5d9673d1b6e93e3fab4f5a5439b9d5f..3fc88e8eb46dc934a0a37721e9e4ab27e6c78c2f 100644 --- a/applications/test/regex1/testRegexps2 +++ b/applications/test/regex1/testRegexps2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/router/Gather/Gather.H b/applications/test/router/Gather.H similarity index 82% rename from applications/test/router/Gather/Gather.H rename to applications/test/router/Gather.H index 9fefcac0be0e7c3b3e0a064abef5fcd77dfb28d4..af08cf8b04885d60b8504f9db5480b195da3d877 100644 --- a/applications/test/router/Gather/Gather.H +++ b/applications/test/router/Gather.H @@ -30,16 +30,15 @@ Description Gather data from all processors onto all processors. SourceFiles - Gather.C + Gather.txx \*---------------------------------------------------------------------------*/ -#ifndef Gather_H -#define Gather_H +#ifndef Foam_TestGather_H +#define Foam_TestGather_H #include "List.H" #include "labelList.H" -#include "GatherBase.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -50,34 +49,34 @@ namespace Foam Class Gather Declaration \*---------------------------------------------------------------------------*/ -template<class T0> +template<class Type> class Gather : - public GatherBase, - public List<T0> + public List<Type> { - // Private data + // Private Data //- Number of processors (1 for sequential) label nProcs_; - //- Storage of type 0 - //List<T0> data0_; + //- Storage + //List<Type> list_; + public: // Constructors //- Construct from containers across processors - Gather(const T0&, const bool redistribute=true); + Gather(const Type& localData, const bool redistribute=true); // Member Functions -// const List<T0>& data0() const -// { -// return data0_; -// } + List<Type>& list() noexcept { return *this; } + const List<Type>& list() const noexcept { return *this; } + // List<Type>& list() noexcept { return list_; } + // const List<Type>& list() const noexcept { return list_; } }; diff --git a/applications/test/router/Gather/Gather.txx b/applications/test/router/Gather.txx similarity index 54% rename from applications/test/router/Gather/Gather.txx rename to applications/test/router/Gather.txx index cf3542edad26a95f736fe95f1186b6dead97b5ee..b8ac980ad941662a77579a4d94e57095200029d2 100644 --- a/applications/test/router/Gather/Gather.txx +++ b/applications/test/router/Gather.txx @@ -30,96 +30,71 @@ License #include "IPstream.H" #include "OPstream.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -// Construct from component -template<class T0> -Gather<T0>::Gather(const T0& localData, const bool redistribute) +template<class Type> +Foam::Gather<Type>::Gather(const Type& localData, const bool redistribute) : - List<T0>(0), - nProcs_(max(1, Pstream::nProcs())) + nProcs_(Foam::max(1, UPstream::nProcs())) { - this->setSize(nProcs_); + this->list().resize(nProcs_); // // Collect sizes on all processor // - if (Pstream::parRun()) + if (UPstream::parRun()) { - if (Pstream::master()) + if (UPstream::master()) { - auto outIter = this->begin(); - *outIter = localData; + auto iter = this->list().begin(); + *iter = localData; // Receive data - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromSlave(Pstream::commsTypes::scheduled, proci); - fromSlave >> *(++outIter); + ++iter; + IPstream::recv(*iter, proci); } // Send data - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - OPstream toSlave(Pstream::commsTypes::scheduled, proci); - if (redistribute) { - toSlave << *this; + OPstream::send(*this, proci); } else { - // Dummy send just to balance sends/receives - toSlave << 0; + // Dummy send (to balance sends/receives) + OPstream::send(label(0), proci); } } } else { - // Slave: send my local data to master - { - OPstream toMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); - toMaster << localData; - } + // Send my local data to master + OPstream::send(localData, UPstream::masterNo()); // Receive data from master + if (redistribute) { - IPstream fromMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); - if (redistribute) - { - fromMaster >> *this; - } - else - { - label dummy; - fromMaster >> dummy; - } + IPstream::recv(*this, UPstream::masterNo()); + } + else + { + // Dummy receive + label dummy; + IPstream::recv(dummy, UPstream::masterNo()); } } } else { - this->operator[](0) = localData; + this->list().resize(1); + this->list()[0] = localData; } } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - // ************************************************************************* // diff --git a/applications/test/router/routerDict b/applications/test/router/routerDict index 764026f1ba5ec73a1f975e214508b21c9cd25800..4a1ca0b2cedb40245c613fdbde2d2da56403c6cb 100644 --- a/applications/test/router/routerDict +++ b/applications/test/router/routerDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/0.orig/T b/applications/test/setAlphaField/case1/0.orig/T index d2e6d5c78d9e0521930ea11cbb84ad363ee7cd36..f03b7913d91ab30d011101504348a79bb385466d 100644 --- a/applications/test/setAlphaField/case1/0.orig/T +++ b/applications/test/setAlphaField/case1/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/0.orig/U b/applications/test/setAlphaField/case1/0.orig/U index 9a0d9c8fea1f0f139c3b9ae175b2482b64f8efb1..466eb67c4f9f847dd6ef7e51f3d913503394fe1d 100644 --- a/applications/test/setAlphaField/case1/0.orig/U +++ b/applications/test/setAlphaField/case1/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/0.orig/alpha.water b/applications/test/setAlphaField/case1/0.orig/alpha.water index 391af85a141500cdf8febe0f2f97f44d3d2e1615..fdd195c0d60b88db15fea2128c8bf640d01486a3 100644 --- a/applications/test/setAlphaField/case1/0.orig/alpha.water +++ b/applications/test/setAlphaField/case1/0.orig/alpha.water @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/0.orig/p b/applications/test/setAlphaField/case1/0.orig/p index e72aa9d41fae2700f9b33fd90f9c50e3112bee20..76617fbcddb46ef281102ff66b551d8e51917472 100644 --- a/applications/test/setAlphaField/case1/0.orig/p +++ b/applications/test/setAlphaField/case1/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/0.orig/p_rgh b/applications/test/setAlphaField/case1/0.orig/p_rgh index c54fc336947f7d1c9b88ea96368ec5cbe2860bdb..83b752acd9950cfd0903fe5a30ecd9678f507134 100644 --- a/applications/test/setAlphaField/case1/0.orig/p_rgh +++ b/applications/test/setAlphaField/case1/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/constant/g b/applications/test/setAlphaField/case1/constant/g index f1f11742fbd6eeed1f4a33384f3c9babca82182d..ee1da146fdb46d82441319a86a9a2fecec928eba 100644 --- a/applications/test/setAlphaField/case1/constant/g +++ b/applications/test/setAlphaField/case1/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/constant/thermophysicalProperties b/applications/test/setAlphaField/case1/constant/thermophysicalProperties index 161577e76cc11fa9c525180d5154516d9adc9451..32c5e631d7aded47b7554822d9dbf260f3d5a623 100644 --- a/applications/test/setAlphaField/case1/constant/thermophysicalProperties +++ b/applications/test/setAlphaField/case1/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/constant/thermophysicalProperties.air b/applications/test/setAlphaField/case1/constant/thermophysicalProperties.air index 0dbc1f07da02b552720b72e95dd3511a0f7756e0..6e58d575e5f90ef4fabee3172aa853cf90f717c1 100644 --- a/applications/test/setAlphaField/case1/constant/thermophysicalProperties.air +++ b/applications/test/setAlphaField/case1/constant/thermophysicalProperties.air @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/constant/thermophysicalProperties.water b/applications/test/setAlphaField/case1/constant/thermophysicalProperties.water index 6353366cea8cbe13135c325dcee7ced2132085af..48befb92cb2ecce93c34e27edf545a4af217e6b2 100644 --- a/applications/test/setAlphaField/case1/constant/thermophysicalProperties.water +++ b/applications/test/setAlphaField/case1/constant/thermophysicalProperties.water @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/constant/turbulenceProperties b/applications/test/setAlphaField/case1/constant/turbulenceProperties index f85e5058aaa45a41bf617cefaece2431cf261077..f64cea1e5e358eddb2bccd9c97c58e159608c37d 100644 --- a/applications/test/setAlphaField/case1/constant/turbulenceProperties +++ b/applications/test/setAlphaField/case1/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/blockMeshDict b/applications/test/setAlphaField/case1/system/blockMeshDict index dae7eb2b2e9a57d79285b0ee700a08c5f7d9a061..f9c3fdf08c6aefa095372e27d8e35752a2ed0f89 100644 --- a/applications/test/setAlphaField/case1/system/blockMeshDict +++ b/applications/test/setAlphaField/case1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/controlDict b/applications/test/setAlphaField/case1/system/controlDict index c464b38f25d69a3b8c097561146aaa06f7871561..d6cb0aad12a9b2de624999fb6ed08e2aaac8b775 100644 --- a/applications/test/setAlphaField/case1/system/controlDict +++ b/applications/test/setAlphaField/case1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/decomposeParDict b/applications/test/setAlphaField/case1/system/decomposeParDict index 7b6c40eb7f8c563f308e5a02e1f0ad4449bd0a90..941f69efe7537c9b1b02a49d44c8e13e7a14a021 100644 --- a/applications/test/setAlphaField/case1/system/decomposeParDict +++ b/applications/test/setAlphaField/case1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/fvSchemes b/applications/test/setAlphaField/case1/system/fvSchemes index c97f3d2f91ebf159f251fa1071f3226c529e7bab..e15abe1769f47d22dce23f41188e484e9b403eec 100644 --- a/applications/test/setAlphaField/case1/system/fvSchemes +++ b/applications/test/setAlphaField/case1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/fvSolution b/applications/test/setAlphaField/case1/system/fvSolution index 7e88cfb61ca5e9bc7311c294230b75d33e4a99e6..ce7eb4904e503bcf6e72c7545f8dae7516a3c64c 100644 --- a/applications/test/setAlphaField/case1/system/fvSolution +++ b/applications/test/setAlphaField/case1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/setAlphaField/case1/system/setAlphaFieldDict b/applications/test/setAlphaField/case1/system/setAlphaFieldDict index 897db58953d03a359c6eaa8aee437abf7ab58daf..b121e7b6d428f842813d613f900f603f7b72a409 100644 --- a/applications/test/setAlphaField/case1/system/setAlphaFieldDict +++ b/applications/test/setAlphaField/case1/system/setAlphaFieldDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/spline/test-splines b/applications/test/spline/test-splines index e3ab656fcea2b77de5197019d4a4713e4a213e4c..6b2c2287593e7806691db4e415275c5eb6592d78 100644 --- a/applications/test/spline/test-splines +++ b/applications/test/spline/test-splines @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/string/Test-string.C b/applications/test/string/Test-string.C index 587eb2e3149174a9b46a7dd4fed827d1d3ce7805..72cd2ab17801bb6cb570d39a45182632f326ca57 100644 --- a/applications/test/string/Test-string.C +++ b/applications/test/string/Test-string.C @@ -148,7 +148,7 @@ int main(int argc, char *argv[]) Info<< "input: " << input << nl << "expand: " << output << nl - << "split: " << stringOps::split(output, "/") << nl << nl; + << "split: " << stringOps::split(output, '/') << nl << nl; } } diff --git a/applications/test/stringSplit/Test-stringSplit.C b/applications/test/stringSplit/Test-stringSplit.C index 2dc4e6ab98e65e9d11de540e1102887b7196cbb4..bc12f4b1660d9704f60a0533e9ce92f930ea5216 100644 --- a/applications/test/stringSplit/Test-stringSplit.C +++ b/applications/test/stringSplit/Test-stringSplit.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,6 +34,7 @@ Description #include "argList.H" #include "fileName.H" #include "stringOps.H" +#include "Switch.H" using namespace Foam; @@ -65,6 +66,9 @@ int main(int argc, char *argv[]) { argList::noBanner(); argList::noParallel(); + argList::noMandatoryArgs(); + argList::addArgument("string .. stringN"); + argList::addOption ( "any", @@ -89,6 +93,12 @@ int main(int argc, char *argv[]) "int", "test split on fixed width" ); + argList::addOption + ( + "begin", + "int", + "begin offset for splits" + ); argList::addBoolOption ( "slash", @@ -104,18 +114,25 @@ int main(int argc, char *argv[]) "empty", "preserve empty strings in split" ); - argList args(argc, argv, false, true); + + argList args(argc, argv); if (args.size() <= 1 && args.options().empty()) { args.printUsage(); } + const label beginOffset = args.getOrDefault<label>("begin", 0); + const bool keepEmpty = args.found("empty"); + Info<< "begin offset: " << beginOffset << nl; + Info<< "keep empty : " << Switch::name(keepEmpty) << nl; + const label nopts = args.count({"any", "slash", "space", "sub", "fixed", "char"}); + if (args.found("any")) { const std::string& str = args["any"]; @@ -125,7 +142,7 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::splitAny(args[argi], str); + auto split = stringOps::splitAny(args[argi], str, beginOffset); printSubStrings(args[argi], split); } @@ -144,7 +161,7 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::split(args[argi], str); + auto split = stringOps::split(args[argi], str, beginOffset); printSubStrings(args[argi], split); } @@ -161,7 +178,11 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::splitSpace(args[argi]); + auto split = stringOps::splitSpace(args[argi], beginOffset); + printSubStrings(args[argi], split); + + Info<< "pop_front(2)" << nl; + split.pop_front(2); printSubStrings(args[argi], split); } @@ -180,7 +201,8 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::split(args[argi], delim, keepEmpty); + auto split = + stringOps::split(args[argi], delim, beginOffset, keepEmpty); printSubStrings(args[argi], split); } @@ -199,7 +221,7 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::splitFixed(args[argi], width); + auto split = stringOps::splitFixed(args[argi], width, beginOffset); printSubStrings(args[argi], split); } @@ -219,7 +241,8 @@ int main(int argc, char *argv[]) for (label argi=1; argi < args.size(); ++argi) { - const auto split = stringOps::split(args[argi], delim, keepEmpty); + auto split = + stringOps::split(args[argi], delim, beginOffset, keepEmpty); printSubStrings(args[argi], split); } } diff --git a/applications/test/surface-sampling/mydebugSurfaceWriter.H b/applications/test/surface-sampling/mydebugSurfaceWriter.H index 825cde7e4ff6b7ac10b8929c526d772b23d4fe04..cfaea6f8084f1dc022500350f98ea222f88d3540 100644 --- a/applications/test/surface-sampling/mydebugSurfaceWriter.H +++ b/applications/test/surface-sampling/mydebugSurfaceWriter.H @@ -44,7 +44,7 @@ Description Format options: \table Property | Description | Required | Default - commsType | blocking/nonBlocking/scheduled | no | scheduled + commsType | scheduled/nonBlocking/buffered | no | scheduled merge | Enable geometry/field merging | no | true write | Write file(s) | no | false narrow | Communicate with narrowed values | no | false diff --git a/applications/test/syncTools/block_2x2x1/constant/transportProperties b/applications/test/syncTools/block_2x2x1/constant/transportProperties index 81751433add7024256d4bef17106be60be2f9d59..3213de39bebdabb8ebe819cb7e087f8647142975 100644 --- a/applications/test/syncTools/block_2x2x1/constant/transportProperties +++ b/applications/test/syncTools/block_2x2x1/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/syncTools/block_2x2x1/system/blockMeshDict b/applications/test/syncTools/block_2x2x1/system/blockMeshDict index 9f09d1d008713317ef4494354adb7fd1ba60da2f..573ec056a1ae16e3b7340bb2299639763a6c9914 100644 --- a/applications/test/syncTools/block_2x2x1/system/blockMeshDict +++ b/applications/test/syncTools/block_2x2x1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/syncTools/block_2x2x1/system/controlDict b/applications/test/syncTools/block_2x2x1/system/controlDict index 67583ffe687146b8c60f6fe72ecd6e53e3193931..990b3a08ceff75c2a9d3939d2352a22b052233e9 100644 --- a/applications/test/syncTools/block_2x2x1/system/controlDict +++ b/applications/test/syncTools/block_2x2x1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/syncTools/block_2x2x1/system/decomposeParDict b/applications/test/syncTools/block_2x2x1/system/decomposeParDict index b7fb4d5f7eeb6984216d350de4cd05a3a2aaaf02..013a59430db6ec816f6778999b0f4664a4e79bb4 100644 --- a/applications/test/syncTools/block_2x2x1/system/decomposeParDict +++ b/applications/test/syncTools/block_2x2x1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/syncTools/block_2x2x1/system/fvSchemes b/applications/test/syncTools/block_2x2x1/system/fvSchemes index 51748f98addb1124e4052f9f06e625d4b83c752c..d98fb1d34a84bdff6f7d596c266fb5dd82eeb904 100644 --- a/applications/test/syncTools/block_2x2x1/system/fvSchemes +++ b/applications/test/syncTools/block_2x2x1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/syncTools/block_2x2x1/system/fvSolution b/applications/test/syncTools/block_2x2x1/system/fvSolution index e19b1d15604c8dce018e3fc4af17f77ddd37a135..ae01a253720d54147edd21b28b0d8c82480ce804 100644 --- a/applications/test/syncTools/block_2x2x1/system/fvSolution +++ b/applications/test/syncTools/block_2x2x1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/token/Test-token.cxx b/applications/test/token/Test-token.cxx index 055833fbbb8a6ed60c54143c708ee889da2080bb..52b2eb75712475ac641542fc8c5b54741036a351 100644 --- a/applications/test/token/Test-token.cxx +++ b/applications/test/token/Test-token.cxx @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,6 +35,9 @@ Description #include "labelList.H" #include "scalarList.H" #include "DynamicList.H" +#include "labelField.H" +#include "scalarField.H" +#include "SubField.H" #include "SpanStream.H" #include "formattingEntry.H" @@ -90,7 +93,7 @@ int main(int argc, char *argv[]) { // This also works, but not actually using the autoPtr directly - autoPtr<token::Compound<labelList>> ptr + autoPtr<token::compound> ptr ( new token::Compound<labelList>(identity(10, -9)) ); @@ -131,44 +134,50 @@ int main(int argc, char *argv[]) Info<< "resized: " << ctok1.info() << nl << ctok1 << endl; - const scalarList* listptr = ctok1.compoundToken().isA<scalarList>(); - if (listptr) { - for (scalar& val : const_cast<scalarList&>(*listptr)) + // Using isA<> on compoundToken() + const auto* listptr = ctok1.compoundToken().isA<scalarList>(); + if (listptr) { - val *= 5; - } + // sneaky, SubField bypasses const! + scalarField::subField fld(*listptr); + fld *= 5; - Info<< "multiplied List<scalar>: " - << ctok1.info() << nl << ctok1 << endl; + Info<< "multiplied List<scalar>: " + << ctok1.info() << nl << ctok1 << endl; + } } - listptr = ctok1.isCompound<scalarList>(); - if (listptr) { - for (scalar& val : const_cast<scalarList&>(*listptr)) + // Using isCompound<...> - combined check + + const auto* listptr = ctok1.isCompound<scalarList>(); + if (listptr) { - val /= 2; - } + scalarField::subField fld(*listptr); + fld /= 2; - Info<< "divided List<scalar>: " - << ctok1.info() << nl << ctok1 << endl; + Info<< "divided List<scalar>: " + << ctok1.info() << nl << ctok1 << endl; + } } - const labelList* listptr2 = ctok1.isCompound<labelList>(); - if (listptr2) { - for (label& val : const_cast<labelList&>(*listptr2)) + // Using isCompound<...> - combined check + + const auto* listptr = ctok1.isCompound<labelList>(); + if (listptr) { - val /= 2; - } + labelField::subField fld(*listptr); + fld /= 2; - Info<< "divided List<label>: " - << ctok1.info() << nl << ctok1 << endl; - } - else - { - Info<< "compound is not List<label>" << nl; + Info<< "divided List<label>: " + << ctok1.info() << nl << ctok1 << endl; + } + else + { + Info<< "compound is not List<label>" << nl; + } } Info<< "Before fill_zero: " << ctok1 << endl; @@ -183,57 +192,33 @@ int main(int argc, char *argv[]) auto& ct = ctok1.refCompoundToken(); ct.resize(20); - bool handled = true; + bool handled = false; switch (ct.typeCode()) { - case token::tokenType::BOOL : - { - UList<bool> cmpts - ( - reinterpret_cast<bool*>(ct.data_bytes()), - label(ct.size_bytes() / sizeof(bool)) - ); - cmpts = false; + #undef doLocalCode + #define doLocalCode(TokenType, cmptType, cmptValue) \ + \ + case TokenType : \ + { \ + UList<cmptType> cmpts \ + ( \ + reinterpret_cast<cmptType*>(ct.data_bytes()), \ + label(ct.size_bytes() / sizeof(cmptType)) \ + ); \ + cmpts = cmptValue; \ + handled = true; \ + break; \ } - break; - - case token::tokenType::LABEL : - { - UList<label> cmpts - ( - reinterpret_cast<label*>(ct.data_bytes()), - label(ct.size_bytes() / sizeof(label)) - ); - cmpts = 123; - } - break; - - case token::tokenType::FLOAT : - { - UList<float> cmpts - ( - reinterpret_cast<float*>(ct.data_bytes()), - label(ct.size_bytes() / sizeof(float)) - ); - cmpts = 2.7; - } - break; - - case token::tokenType::DOUBLE : - { - UList<double> cmpts - ( - reinterpret_cast<double*>(ct.data_bytes()), - label(ct.size_bytes() / sizeof(double)) - ); - cmpts = 3.1415; - } - break; - default: - handled = false; - break; + doLocalCode(token::tokenType::BOOL, bool, false); + doLocalCode(token::tokenType::LABEL, label, 123); + doLocalCode(token::tokenType::FLOAT, float, 2.7); + doLocalCode(token::tokenType::DOUBLE, double, 3.1415); + + #undef doLocalCode + + default : break; } @@ -241,6 +226,10 @@ int main(int argc, char *argv[]) { Info<< "assigned: " << ctok1 << nl; } + else + { + Info<< "Warning: not handled!" << nl; + } } } @@ -327,6 +316,65 @@ int main(int argc, char *argv[]) Info<< "content" << nl << entry3 << nl; } + + { + primitiveEntry entry0("entry"); + + Info<< "empty: " << entry0 << nl; + + // populate + { + tokenList& toks = entry0.stream(); + toks.resize(2); + toks[0] = word("nonuniform"); + toks[1] = token::Compound<scalarList>::New(10, scalar(1)); + } + + Info<< entry0 << nl; + + // Modify contents + for (auto& tok : entry0.stream()) + { + if (tok.isCompound<scalarList>()) + { + tok.refCompoundToken<scalarList>() = 2; + } + } + + Info<< entry0 << nl; + + + // Find and 'capture' contents + + { + typedef List<scalar> ListType; + + auto* inputDataPtr = + const_cast<ListType*>(entry0.stream().findCompound<ListType>()); + + if (inputDataPtr) + { + Info<< "found input data" << nl; + Info<< entry0 << nl; + + ListType inputData(std::move(*inputDataPtr)); + + Info<< "input data, after move" << nl; + Info<< entry0 << nl; + + ListType replaceData(5, scalar(3.145)); + + // some manipulation + replaceData.back() = scalar(1.414); + + inputDataPtr->swap(replaceData); + Info<< "with replaced values" << nl; + } + } + + Info<< entry0 << nl; + } + return 0; } diff --git a/applications/test/treeComms/Test-treeComms.C b/applications/test/treeComms/Test-treeComms.C index 94588bd797664bff8e5d7dc6038f4982a20353d8..832f1459f7ab8557a3791c33f1a31aa5310fa9e5 100644 --- a/applications/test/treeComms/Test-treeComms.C +++ b/applications/test/treeComms/Test-treeComms.C @@ -51,7 +51,7 @@ void printConnection(Ostream& os, const label proci, const labelUList& below) // The number of receives - as per gatherList (v2112) void printRecvCount_gatherList ( - const List<UPstream::commsStruct>& comms, + const UList<UPstream::commsStruct>& comms, const label comm = UPstream::worldComm ) { @@ -91,7 +91,7 @@ void printRecvCount_gatherList // The number of sends - as per scatterList (v2112) void printSendCount_scatterList ( - const List<UPstream::commsStruct>& comms, + const UList<UPstream::commsStruct>& comms, const label comm = UPstream::worldComm ) { @@ -131,7 +131,7 @@ void printSendCount_scatterList // Transmission widths (contiguous data) void printWidths ( - const List<UPstream::commsStruct>& comms, + const UList<UPstream::commsStruct>& comms, const label comm = UPstream::worldComm ) { @@ -206,8 +206,8 @@ int main(int argc, char *argv[]) for (const int proci : UPstream::subProcs()) { - IPstream fromProc(UPstream::commsTypes::scheduled, proci); - labelList below(fromProc); + labelList below; + IPstream::recv(below, proci); printConnection(os, proci, below); } @@ -222,13 +222,7 @@ int main(int argc, char *argv[]) } else { - OPstream toMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); - - toMaster << myComm.below(); + OPstream::send(myComm.below(), UPstream::masterNo()); // Pout<< flatOutput(myComm.allBelow()) << nl; } diff --git a/applications/test/volField/Test-volField.C b/applications/test/volField/Test-volField.C index 8979532bbdf62e69611ee9f8b69d367b695c516c..813a8b58e1f17ccbd83a1ba98a77a022c92f45cf 100644 --- a/applications/test/volField/Test-volField.C +++ b/applications/test/volField/Test-volField.C @@ -118,7 +118,8 @@ PtrList<GeoField> create ( word("cmpt." + name(i)), mesh, - dimensioned<typename GeoField::value_type>(Zero) + Foam::zero{}, // value + dimless ).ptr() ); } diff --git a/applications/test/volField/cavity/0/U b/applications/test/volField/cavity/0/U index a05106777f806649b41d9423ddbc94cfb37266bd..b6b2a8c0d5481aaa6ef36701358b40a34d1ffd0f 100644 --- a/applications/test/volField/cavity/0/U +++ b/applications/test/volField/cavity/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/0/p b/applications/test/volField/cavity/0/p index f8937723c81e00a203bd824fd60c0034c43b9699..750b989d54040fa4fa7d9ec1eb20f0ac009c0af7 100644 --- a/applications/test/volField/cavity/0/p +++ b/applications/test/volField/cavity/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/constant/transportProperties b/applications/test/volField/cavity/constant/transportProperties index b75993c5a8019225a41f373cf1c5587d4e0ea22f..871e36bb82ba3042deb8902e8235f19373ae2007 100644 --- a/applications/test/volField/cavity/constant/transportProperties +++ b/applications/test/volField/cavity/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/system/blockMeshDict b/applications/test/volField/cavity/system/blockMeshDict index 2cb9240ee8596cc614117d466b673052d77d0d44..3460c49fb9e6fa923b06356e6cfd63c07128c67f 100644 --- a/applications/test/volField/cavity/system/blockMeshDict +++ b/applications/test/volField/cavity/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/system/controlDict b/applications/test/volField/cavity/system/controlDict index 776c9a39459163c1d168845931fbbbed98b32e8a..88560e1e0ed86630b19b5df83e483ff1260c57a8 100644 --- a/applications/test/volField/cavity/system/controlDict +++ b/applications/test/volField/cavity/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/system/fvSchemes b/applications/test/volField/cavity/system/fvSchemes index 25648eaf7cd099012389068231504b5d3cfa9d31..251e5e8c468017c85b20679f3c142bc313881147 100644 --- a/applications/test/volField/cavity/system/fvSchemes +++ b/applications/test/volField/cavity/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/volField/cavity/system/fvSolution b/applications/test/volField/cavity/system/fvSolution index 3ca12dcaedc4f65fd890153eaf0738c862d8cd27..2a9649991feeae1fe87d7554c459bd11578b327a 100644 --- a/applications/test/volField/cavity/system/fvSolution +++ b/applications/test/volField/cavity/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/wordRe/testRegexps b/applications/test/wordRe/testRegexps index ea9a14f8a65cdc2af92383d5535d18bcb2f28310..a4b9ccd768e9de0ae4355b8d5b2fb57237e5b70a 100644 --- a/applications/test/wordRe/testRegexps +++ b/applications/test/wordRe/testRegexps @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/blockMeshDict b/applications/test/zoneDistribute/case1/system/blockMeshDict index c1f5b953cb0c59ef0e4142493153d06a460a28f4..fa0ff0d902d6966d6afea36dd417040f66f50218 100644 --- a/applications/test/zoneDistribute/case1/system/blockMeshDict +++ b/applications/test/zoneDistribute/case1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/controlDict b/applications/test/zoneDistribute/case1/system/controlDict index 9540e2617b71f7d8f8462c05de4c2fef742fabc0..136e87b1d506dd237f379fb87b1dc5579478eca6 100644 --- a/applications/test/zoneDistribute/case1/system/controlDict +++ b/applications/test/zoneDistribute/case1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/decomposeParDict b/applications/test/zoneDistribute/case1/system/decomposeParDict index d33d460f02e37c7a85c349ec657d6ce784e57d2f..d73c8f7447c19e431c853a443ef9915f8adcb768 100644 --- a/applications/test/zoneDistribute/case1/system/decomposeParDict +++ b/applications/test/zoneDistribute/case1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/fvSchemes b/applications/test/zoneDistribute/case1/system/fvSchemes index 93b107859b03b5abb861e8e691f5d2b1ecf78639..998f1e8ef8b845450a77663830809b3c9f1ba575 100644 --- a/applications/test/zoneDistribute/case1/system/fvSchemes +++ b/applications/test/zoneDistribute/case1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/fvSolution b/applications/test/zoneDistribute/case1/system/fvSolution index 8eca38b352b10ab8996bf4a331b5b2bcc51e1694..eeec2dc69ebd1c4d70ce49e02d085da6fa269fe8 100644 --- a/applications/test/zoneDistribute/case1/system/fvSolution +++ b/applications/test/zoneDistribute/case1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/meshQualityDict b/applications/test/zoneDistribute/case1/system/meshQualityDict index bb4ca5ee2bcc5b4167f3110533a19fcc8dafb00d..e010357d6421f398b8bf5b59a31461bbb9cf6658 100644 --- a/applications/test/zoneDistribute/case1/system/meshQualityDict +++ b/applications/test/zoneDistribute/case1/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/snappyHexMeshDict b/applications/test/zoneDistribute/case1/system/snappyHexMeshDict index 5e073d35c013782bf6fad9b001a6b972eb7647a2..bdf0175f961b34e4a2ee87b8641b386d0fcc4f47 100644 --- a/applications/test/zoneDistribute/case1/system/snappyHexMeshDict +++ b/applications/test/zoneDistribute/case1/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/test/zoneDistribute/case1/system/surfaceFeatureExtractDict b/applications/test/zoneDistribute/case1/system/surfaceFeatureExtractDict index bd1bb96620a7f9cfec240c5a24d9cd648b8cae9f..7dbb7225bfb2ccaae4baa95777d7ee7b2517f9d8 100644 --- a/applications/test/zoneDistribute/case1/system/surfaceFeatureExtractDict +++ b/applications/test/zoneDistribute/case1/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/finiteArea/checkFaMesh/checkFaMesh.C b/applications/utilities/finiteArea/checkFaMesh/checkFaMesh.C index a31468da21f7d58f17417c928327437dab463dfc..e335c087b7c217326a8548652e6a6926193af899 100644 --- a/applications/utilities/finiteArea/checkFaMesh/checkFaMesh.C +++ b/applications/utilities/finiteArea/checkFaMesh/checkFaMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,6 +77,7 @@ int main(int argc, char *argv[]) ); #include "addRegionOption.H" + #include "addFaRegionOption.H" #include "setRootCase.H" #include "createTime.H" #include "createNamedPolyMesh.H" @@ -90,8 +91,7 @@ int main(int argc, char *argv[]) faMesh::geometryOrder(geometryOrder); } - // Create - faMesh aMesh(mesh); + #include "createNamedFaMesh.H" Info<< "Time = " << runTime.timeName() << nl << endl; diff --git a/applications/utilities/finiteArea/makeFaMesh/decomposeFaFields.H b/applications/utilities/finiteArea/makeFaMesh/decomposeFaFields.H index fd5840f30ea4ab9066c84f97f84c7cf7848e2066..e7110f47fb01ce13b14da8b1b879edb1414ae11f 100644 --- a/applications/utilities/finiteArea/makeFaMesh/decomposeFaFields.H +++ b/applications/utilities/finiteArea/makeFaMesh/decomposeFaFields.H @@ -55,7 +55,7 @@ do bitSet haveMeshOnProc; std::unique_ptr<faMeshSubset> subsetter; - IOobjectList objects(0); + IOobjectList objects; refPtr<fileOperation> newHandler(fileOperation::NewUncollated()); @@ -70,7 +70,13 @@ do const bool oldParRun = UPstream::parRun(false); - objects = IOobjectList(serialMesh.time(), runTime.timeName()); + objects = IOobjectList + ( + serialMesh.time(), + runTime.timeName(), + serialMesh.dbDir(), + IOobjectOption::NO_REGISTER + ); UPstream::parRun(oldParRun); } diff --git a/applications/utilities/finiteArea/makeFaMesh/findMeshDefinitionDict.H b/applications/utilities/finiteArea/makeFaMesh/findMeshDefinitionDict.H index e1638a77ee85505a3f69a7de4f934a912d9b54ba..80b2b6577017a12faafe15febdb6276ba6fd0f04 100644 --- a/applications/utilities/finiteArea/makeFaMesh/findMeshDefinitionDict.H +++ b/applications/utilities/finiteArea/makeFaMesh/findMeshDefinitionDict.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -18,7 +18,8 @@ Required Classes - Foam::IOdictionary Required Variables - - regionName [word] + - regionName [word] (the polyMesh region) + - areaRegionName [word] (the areaMesh region) - args [argList] - runTime [Time] @@ -35,6 +36,7 @@ autoPtr<IOdictionary> meshDictPtr; { fileName dictPath; const word& regionDir = Foam::polyMesh::regionName(regionName); + const word& areaRegionDir = Foam::polyMesh::regionName(areaRegionName); if (args.readIfPresent("dict", dictPath)) { @@ -47,38 +49,30 @@ autoPtr<IOdictionary> meshDictPtr; } else if ( - // Check global location - exists + // Dictionary under system/faMeshDefinition ? + // (v2312 and earlier) + + areaRegionDir.empty() + && exists ( - runTime.path()/runTime.caseConstant() + runTime.path()/runTime.caseSystem() / regionDir/faMesh::meshSubDir/dictName ) ) { - // Dictionary present in constant faMesh directory (old-style) - - dictPath = - ( - runTime.constant() - / regionDir/faMesh::meshSubDir/dictName - ); + // Dictionary present directly in system/ (v2312 and earlier) - // Warn that constant/faMesh/faMeshDefinition was used - // instead of system/faMeshDefinition - #if 0 - WarningIn(args.executable()) - << "Using the old faMeshDefinition location: " - << dictPath << nl - << " instead of default location: " - << runTime.system()/regionDir/dictName << nl - << endl; - #endif + dictPath = runTime.system()/regionDir/dictName; } else { - // Assume dictionary is in the system directory + // Use system/finite-area/ directory, with region qualifications - dictPath = runTime.system()/regionDir/dictName; + dictPath = + ( + runTime.system()/regionDir + / faMesh::prefix()/areaRegionDir/dictName + ); } IOobject meshDictIO diff --git a/applications/utilities/finiteArea/makeFaMesh/makeFaMesh.C b/applications/utilities/finiteArea/makeFaMesh/makeFaMesh.C index 2d96b0d1b5334db02d0bba44f0d538422c556554..91d74391e0553aca1fc95ae6de8525021c31209b 100644 --- a/applications/utilities/finiteArea/makeFaMesh/makeFaMesh.C +++ b/applications/utilities/finiteArea/makeFaMesh/makeFaMesh.C @@ -104,10 +104,13 @@ int main(int argc, char *argv[]) ); #include "addRegionOption.H" + #include "addFaRegionOption.H" #include "setRootCase.H" #include "createTime.H" #include "createNamedPolyMesh.H" + #include "getFaRegionOption.H" + const bool doDecompose = !args.found("no-decompose"); const bool doDecompFields = !args.found("no-fields"); @@ -133,8 +136,15 @@ int main(int argc, char *argv[]) // Preliminary checks #include "checkPatchTopology.H" + Info << "Create areaMesh"; + if (!Foam::polyMesh::regionName(areaRegionName).empty()) + { + Foam::Info << ' ' << areaRegionName; + } + Info << " for polyMesh at time = " << runTime.timeName() << nl; + // Create - faMesh aMesh(mesh, meshDefDict); + faMesh aMesh(areaRegionName, mesh, meshDefDict); // Mesh information (less verbose) faMeshTools::printMeshChecks(aMesh, 0); @@ -155,8 +165,8 @@ int main(int argc, char *argv[]) } else { - // Set the precision of the points data to 10 - IOstream::defaultPrecision(10); + // More precision (for points data) + IOstream::minPrecision(10); Info<< nl << "Write finite area mesh." << nl; aMesh.write(); diff --git a/applications/utilities/mesh/advanced/snappyRefineMesh/snappyRefineMesh.C b/applications/utilities/mesh/advanced/snappyRefineMesh/snappyRefineMesh.C index 7d1db05860b7242e355d5075f0a50780b3612713..6aa76e6653ea319e9209d0355e15fcfca25a96bf 100644 --- a/applications/utilities/mesh/advanced/snappyRefineMesh/snappyRefineMesh.C +++ b/applications/utilities/mesh/advanced/snappyRefineMesh/snappyRefineMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -551,9 +551,13 @@ void subsetMesh Info<< "Writing refined mesh to time " << runTime.timeName() << nl << endl; - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + const auto oldPrec = IOstream::minPrecision(10); + mesh.write(); refLevel.write(); + + IOstream::defaultPrecision(oldPrec); } // Update cutCells for removed cells. @@ -922,9 +926,13 @@ int main(int argc, char *argv[]) Info<< " Writing refined mesh to time " << runTime.timeName() << nl << endl; - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + const auto oldPrec = IOstream::minPrecision(10); + mesh.write(); refLevel.write(); + + IOstream::defaultPrecision(oldPrec); } // Update mesh edge stats. @@ -993,20 +1001,29 @@ int main(int argc, char *argv[]) << endl; // Write final mesh - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + + // More precision (for points data) + const auto oldPrec = IOstream::minPrecision(10); + mesh.write(); refLevel.write(); + IOstream::defaultPrecision(oldPrec); } else if (!writeMesh) { + // Write final mesh. (will have been written already if writeMesh=true) + Info<< "Writing refined mesh to time " << runTime.timeName() << nl << endl; - // Write final mesh. (will have been written already if writeMesh=true) - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + const auto oldPrec = IOstream::minPrecision(10); + mesh.write(); refLevel.write(); + + IOstream::defaultPrecision(oldPrec); } diff --git a/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L b/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L index 715a9a17e6c87c00297b162370897a1b5b738969..5838ed309f9ca5cf735ae94b8eb56766222ba025 100644 --- a/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L +++ b/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -704,8 +704,8 @@ int main(int argc, char *argv[]) } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing polyMesh" << endl; pShapeMesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/ccm/ccmToFoam/ccmToFoam.C b/applications/utilities/mesh/conversion/ccm/ccmToFoam/ccmToFoam.C index 677da42c09022943a1afa471e727949e9598ebf0..ac147c740bbfc9f8d1551ccaae54f0f3b86efeab 100644 --- a/applications/utilities/mesh/conversion/ccm/ccmToFoam/ccmToFoam.C +++ b/applications/utilities/mesh/conversion/ccm/ccmToFoam/ccmToFoam.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -198,8 +198,8 @@ int main(int argc, char *argv[]) : IOstreamOption::BINARY ); - // Increase the precision of the points data - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); // Read control options diff --git a/applications/utilities/mesh/conversion/ccm/foamToCcm/foamToCcm.C b/applications/utilities/mesh/conversion/ccm/foamToCcm/foamToCcm.C index 88dd59676d40334921c04edd6fa21157c0b8a50e..2cb76091385d24e77105b05dcbfc9d7f59b14a74 100644 --- a/applications/utilities/mesh/conversion/ccm/foamToCcm/foamToCcm.C +++ b/applications/utilities/mesh/conversion/ccm/foamToCcm/foamToCcm.C @@ -157,7 +157,7 @@ int main(int argc, char *argv[]) // // skip over time=0, unless some other time option has been specified // if // ( -// !args.found("zeroTime") +// !args.found("noZero") // && !args.found("time") // && !args.found("latestTime") // && Times.size() > 2 diff --git a/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C b/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C index 536e7dd8a96abe640732f6cb6ffceee6b947c276..c8294f55be99c0a70eee8872afd2683b2d7e39d8 100644 --- a/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C +++ b/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -756,8 +756,8 @@ int main(int argc, char *argv[]) defaultFacesType ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing polyMesh" << endl; pShapeMesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/ensightToFoam/ensightMeshReader.C b/applications/utilities/mesh/conversion/ensightToFoam/ensightMeshReader.C index 91be645d68589f546f84ef19f3222463fd386219..85de4979915372a0a44518e10be82a57e09e3d6d 100644 --- a/applications/utilities/mesh/conversion/ensightToFoam/ensightMeshReader.C +++ b/applications/utilities/mesh/conversion/ensightToFoam/ensightMeshReader.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -93,29 +93,34 @@ void Foam::fileFormats::ensightMeshReader::readIDs ( ensightReadFile& is, const bool doRead, - const label nShapes, + const label elemCount, labelList& foamToElem, Map<label>& elemToFoam ) const { - const label sz = foamToElem.size(); - foamToElem.resize(sz+nShapes); + const label begElem = foamToElem.size(); + const label endElem = begElem + elemCount; + + foamToElem.resize(foamToElem.size()+elemCount); + if (doRead) { - elemToFoam.reserve(elemToFoam.size()+nShapes); - for (label shapei = 0; shapei < nShapes; shapei++) + elemToFoam.reserve(elemToFoam.size()+elemCount); + + for (label elemi = begElem; elemi < endElem; ++elemi) { - label elemi; - is.read(elemi); - foamToElem[sz+shapei] = elemi; - elemToFoam.insert(elemi, sz+shapei); + label id; + is.read(id); + foamToElem[elemi] = id; + elemToFoam.insert(id, elemi); } } else { - for (label shapei = 0; shapei < nShapes; shapei++) + // identity + for (label elemi = begElem; elemi < endElem; ++elemi) { - foamToElem[sz+shapei] = sz+shapei; + foamToElem[elemi] = elemi; } } } @@ -209,37 +214,54 @@ bool Foam::fileFormats::ensightMeshReader::readGoldPart // Work DynamicList<label> verts; - string line; + string buffer; while (is.good()) { do { - is.readKeyword(line); + // Get entire line/string + is.read(buffer); } - while (line.empty() && is.good()); + while (buffer.empty() && is.good()); - const auto split = stringOps::splitSpace(line); + if (!is.good()) + { + break; + } + else if (buffer.contains("BEGIN TIME STEP")) + { + // Graciously handle a miscued start + continue; + } + else if (buffer.contains("END TIME STEP")) + { + // END TIME STEP is a valid means to terminate input + break; + } + const auto split = stringOps::splitSpace(buffer); - if (split.size() == 0) + if (split.empty()) { continue; } - if (split[0] == "part") + const auto keyword(split[0].str()); + + if (keyword == "part") { return false; } - else if (split[0] == "node_ids") + else if (keyword == "node_ids") { const label nPoints = points.size(); - // Ignore for now - for (label i = 0; i < nPoints; i++) + // Ignore point ids + for (label pointi = 0; pointi < nPoints; ++pointi) { - label index; - is.read(index); + label id; + is.read(id); } } - else if (split[0] == "coordinates") + else if (keyword == "coordinates") { label nPoints; is.read(nPoints); @@ -257,207 +279,205 @@ bool Foam::fileFormats::ensightMeshReader::readGoldPart nodeIdToPoints ); - points.setSize(nPoints); - for (label pointi = 0; pointi < nPoints; pointi++) - { - is.read(points[pointi].x()); - } - for (label pointi = 0; pointi < nPoints; pointi++) - { - is.read(points[pointi].y()); - } - for (label pointi = 0; pointi < nPoints; pointi++) - { - is.read(points[pointi].z()); - } + is.readPoints(nPoints, points); } - else if (split[0] == "tetra4") + else if (keyword == "tetra4") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent<< "tetra4 " << nShapes + Pout<< indent<< "tetra4 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label celli = cells.size(); - cells.resize(celli+nShapes); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, cellToElemIds, elemIdToCells ); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + cells.resize(startElemi+elemCount); + faceListList::subList myElements = cells.slice(startElemi); + const auto& model = cellModel::ref(cellModel::TET); - for (label shapei = 0; shapei < nShapes; shapei++) + for (auto& cellFaces : myElements) { readVerts(is, 4, nodeIdToPoints, verts); if (setHandedness_) { setHandedness(model, verts, points); } - const cellShape cellVerts(model, verts); - cells[celli+shapei] = cellVerts.faces(); + cellFaces = cellShape(model, verts).faces(); } } - else if (split[0] == "pyramid5") + else if (keyword == "pyramid5") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent<< "pyramid5 " << nShapes + Pout<< indent<< "pyramid5 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label celli = cells.size(); - cells.resize(celli+nShapes); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, cellToElemIds, elemIdToCells ); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + cells.resize(startElemi+elemCount); + faceListList::subList myElements = cells.slice(startElemi); + const auto& model = cellModel::ref(cellModel::PYR); - for (label shapei = 0; shapei < nShapes; shapei++) + for (auto& cellFaces : myElements) { readVerts(is, 5, nodeIdToPoints, verts); if (setHandedness_) { setHandedness(model, verts, points); } - const cellShape cellVerts(model, verts); - cells[celli+shapei] = cellVerts.faces(); + cellFaces = cellShape(model, verts).faces(); } } - else if (split[0] == "penta6") + else if (keyword == "penta6") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent<< "penta6 " << nShapes + Pout<< indent<< "penta6 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label celli = cells.size(); - cells.resize(celli+nShapes); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, cellToElemIds, elemIdToCells ); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + cells.resize(startElemi+elemCount); + faceListList::subList myElements = cells.slice(startElemi); + const auto& model = cellModel::ref(cellModel::PRISM); - for (label shapei = 0; shapei < nShapes; shapei++) + for (auto& cellFaces : myElements) { readVerts(is, 6, nodeIdToPoints, verts); if (setHandedness_) { setHandedness(model, verts, points); } - const cellShape cellVerts(model, verts); - cells[celli+shapei] = cellVerts.faces(); + cellFaces = cellShape(model, verts).faces(); } } - else if (split[0] == "hexa8") + else if (keyword == "hexa8") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent<< "hexa8 " << nShapes + Pout<< indent<< "hexa8 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label celli = cells.size(); - cells.resize(celli+nShapes); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, cellToElemIds, elemIdToCells ); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + cells.resize(startElemi+elemCount); + faceListList::subList myElements = cells.slice(startElemi); + const auto& model = cellModel::ref(cellModel::HEX); - for (label shapei = 0; shapei < nShapes; shapei++) + for (auto& cellFaces : myElements) { readVerts(is, 8, nodeIdToPoints, verts); if (setHandedness_) { setHandedness(model, verts, points); } - const cellShape cellVerts(model, verts); - cells[celli+shapei] = cellVerts.faces(); + cellFaces = cellShape(model, verts).faces(); } } - else if (split[0] == "nfaced") + else if (keyword == "nfaced") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent<< "nfaced " << nShapes + Pout<< indent<< "nfaced " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label celli = cells.size(); - cells.resize(celli+nShapes); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, cellToElemIds, elemIdToCells ); - for (label shapei = 0; shapei < nShapes; shapei++) + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + cells.resize(startElemi+elemCount); + faceListList::subList myElements = cells.slice(startElemi); + + for (auto& cellFaces : myElements) { label nFaces; is.read(nFaces); - faceList& cellFaces = cells[celli+shapei]; - cellFaces.setSize(nFaces); + cellFaces.resize(nFaces); } - for (label shapei = 0; shapei < nShapes; shapei++) + for (auto& cellFaces : myElements) { - faceList& cellFaces = cells[celli+shapei]; - forAll(cellFaces, cellFacei) + for (face& f : cellFaces) { label nVerts; is.read(nVerts); - cellFaces[cellFacei].setSize(nVerts); + f.resize(nVerts); } } - for (label shapei = 0; shapei < nShapes; shapei++) + for (faceList& cellFaces : myElements) { - faceList& cellFaces = cells[celli+shapei]; - forAll(cellFaces, cellFacei) + for (face& f : cellFaces) { - face& f = cellFaces[cellFacei]; readVerts(is, f.size(), nodeIdToPoints, verts); f.labelList::operator=(verts); + } + } - forAll(f, fp) + // Full check + forAll(myElements, elemi) + { + for (const face& f : myElements[elemi]) + { + for (label pointi : f) { - if (f[fp] < 0 || f[fp] >= points.size()) + if (pointi < 0 || pointi >= points.size()) { - FatalErrorInFunction<< "Face:" << shapei + FatalErrorInFunction + << "Face:" << elemi << " verts:" << f << " indexes outside points:" << points.size() << exit(FatalError); @@ -466,107 +486,104 @@ bool Foam::fileFormats::ensightMeshReader::readGoldPart } } } - else if (split[0] == "tria3") + else if (keyword == "tria3") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent << "tria3 " << nShapes + Pout<< indent << "tria3 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label facei = faces.size(); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, faceToElemIDs, elemIdToFaces ); - faces.setSize(facei+nShapes); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + faces.resize(startElemi+elemCount, face(3)); // <- tria3 + faceList::subList myElements = faces.slice(startElemi); - for (label shapei = 0; shapei < nShapes; shapei++) + for (face& f : myElements) { - auto& f = faces[facei+shapei]; - f.setSize(3); readVerts(is, f.size(), nodeIdToPoints, verts); f.labelList::operator=(verts); } } - else if (split[0] == "quad4") + else if (keyword == "quad4") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent << "quad4 " << nShapes + Pout<< indent << "quad4 " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label facei = faces.size(); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, faceToElemIDs, elemIdToFaces ); - faces.setSize(facei+nShapes); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + faces.resize(startElemi+elemCount, face(4)); // <- quad4 + faceList::subList myElements = faces.slice(startElemi); - for (label shapei = 0; shapei < nShapes; shapei++) + for (face& f : myElements) { - auto& f = faces[facei+shapei]; - f.setSize(4); readVerts(is, f.size(), nodeIdToPoints, verts); f.labelList::operator=(verts); } } - else if (split[0] == "nsided") + else if (keyword == "nsided") { - label nShapes; - is.read(nShapes); + label elemCount; + is.read(elemCount); - Pout<< indent << "nsided " << nShapes + Pout<< indent << "nsided " << elemCount << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; - const label facei = faces.size(); - readIDs ( is, read_elem_ids, - nShapes, + elemCount, faceToElemIDs, elemIdToFaces ); - faces.setSize(facei+nShapes); + // Extend and fill the new trailing portion + const label startElemi = cells.size(); + faces.resize(startElemi+elemCount); + faceList::subList myElements = faces.slice(startElemi); - for (label shapei = 0; shapei < nShapes; shapei++) + for (face& f : myElements) { - auto& f = faces[facei+shapei]; label nVerts; is.read(nVerts); - f.setSize(nVerts); + f.resize(nVerts); } - for (label shapei = 0; shapei < nShapes; shapei++) + for (face& f : myElements) { - auto& f = faces[facei+shapei]; readVerts(is, f.size(), nodeIdToPoints, verts); f.labelList::operator=(verts); } } else { - WarningInFunction << "Unhandled key " << string(split[0]) - << " from line " << line + WarningInFunction << "Unhandled key " << keyword + << " from line " << buffer << " starting at line " << is.lineNumber() << " position " << is.stdStream().tellg() << endl; } @@ -584,16 +601,21 @@ bool Foam::fileFormats::ensightMeshReader::readGeometry const scalar scaleFactor ) { + // Auto-detect ascii/binary format, + // skips any initial "BEGIN TIME STEP" + ensightReadFile is(geometryFile_); - // Skip 'binary' tag - is.readBinaryHeader(); - string header; - is.read(header); - Info<< "Ensight : " << header << endl; - is.read(header); - Info<< "Ensight : " << header << endl; + string buffer; + + // Ensight Geometry File + is.read(buffer); + Info<< "Ensight : " << buffer << nl; + + // Description - 1 + is.read(buffer); + Info<< "Ensight : " << buffer << nl; bool read_node_ids = false; @@ -623,61 +645,72 @@ bool Foam::fileFormats::ensightMeshReader::readGeometry // Parse all - string line; + SubStrings<string> split; + while (is.good()) { do { - is.readKeyword(line); + // Get entire line/string + is.read(buffer); + } + while (buffer.empty() && is.good()); + if (buffer.contains("END TIME STEP")) + { + // END TIME STEP is a valid means to terminate input + break; } - while (line.empty() && is.good()); - const auto split = stringOps::splitSpace(line); + split = stringOps::splitSpace(buffer); - if (split[0] == "extents") + if (split.empty()) { - point min; - point max; - is.read(min.x()); - is.read(max.x()); - is.read(min.y()); - is.read(max.y()); - is.read(min.z()); - is.read(max.z()); - Pout<< indent - << "Read extents " << boundBox(min, max) - << endl; + continue; + } + + const auto keyword(split[0].str()); + + if (keyword == "extents") + { + // Optional extents (xmin, xmax, ymin, ymax, zmin, zmax) + + boundBox bb; + point& min = bb.min(); + point& max = bb.max(); + + is.read(min.x()); is.read(max.x()); + is.read(min.y()); is.read(max.y()); + is.read(min.z()); is.read(max.z()); + + Pout<< indent << "Read extents " << bb << endl; } - else if (split[0] == "node") + else if (keyword == "node") { - word id(split[1]); - word op(split[2]); + // "node id (off|assign|given|ignore)" + std::string op(split[2]); if (op == "given" || op == "ignore") { Pout<< indent << "Reading node ids" << endl; read_node_ids = true; } } - else if (split[0] == "element") + else if (keyword == "element") { - word id(split[1]); - word op(split[2]); + // "element id (off|assign|given|ignore)" + std::string op(split[2]); if (op == "given" || op == "ignore") { Pout<< indent << "Reading element ids" << endl; read_elem_ids = true; } } - else if (split[0] == "part") + else if (keyword == "part") { bool finished = false; do { - // Make space - partIDs.emplace_back(); - is.read(partIDs.back()); - - partNames.emplace_back(); - is.read(partNames.back()); + // Read part id and name + is.read(partIDs.emplace_back()); + is.read(partNames.emplace_back()); Pout<< indent << "Reading part " << partIDs.back() @@ -954,7 +987,7 @@ bool Foam::fileFormats::ensightMeshReader::readGeometry const face& f = rotateFace(cFaces[cFacei], rotatedFace); const auto fFnd = vertsToCell.find(f); - if (fFnd) + if (fFnd.good()) { // Already inserted. Internal face. vertsToCell.erase(fFnd); @@ -1026,7 +1059,12 @@ bool Foam::fileFormats::ensightMeshReader::readGeometry ) ); - if (!cAndF) + if (cAndF.good()) + { + partCellAndFace[patchFacei++] = cAndF.val(); + vertsToCell.erase(cAndF); + } + else { //WarningInFunction // << "Did not find face " << facei @@ -1036,11 +1074,6 @@ bool Foam::fileFormats::ensightMeshReader::readGeometry // << " in part " << parti // << endl; } - else - { - partCellAndFace[patchFacei++] = cAndF(); - vertsToCell.erase(cAndF); - } } partCellAndFace.setSize(patchFacei); } diff --git a/applications/utilities/mesh/conversion/ensightToFoam/ensightToFoam.C b/applications/utilities/mesh/conversion/ensightToFoam/ensightToFoam.C index dd9ce8ced93dc52efc086b4665a41955f7c9016b..a218198dc3beb6d017ff324db9780cb1cd2b48f2 100644 --- a/applications/utilities/mesh/conversion/ensightToFoam/ensightToFoam.C +++ b/applications/utilities/mesh/conversion/ensightToFoam/ensightToFoam.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -90,8 +90,8 @@ int main(int argc, char *argv[]) argList args(argc, argv); Time runTime(args.rootPath(), args.caseName()); - // Increase the precision of the points data - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); const fileName geomFile(args.get<fileName>(1)); diff --git a/applications/utilities/mesh/conversion/fireToFoam/fireToFoam.C b/applications/utilities/mesh/conversion/fireToFoam/fireToFoam.C index ed4a1de4eed2ed1eaf2d54740efcf43037a752d8..0f6877096af665a814742e9eddb40056bcd709e3 100644 --- a/applications/utilities/mesh/conversion/fireToFoam/fireToFoam.C +++ b/applications/utilities/mesh/conversion/fireToFoam/fireToFoam.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -97,8 +97,8 @@ int main(int argc, char *argv[]) : IOstreamOption::BINARY ); - // increase the precision of the points data - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); fileFormats::FIREMeshReader reader diff --git a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L index f46d9c2b8681a5cbb242308aa6b604c31113676c..7e0686d064f3bda5225b2cc4e32bb53c1f1a6526 100644 --- a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L +++ b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016,2022 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1430,8 +1430,8 @@ int main(int argc, char *argv[]) mesh.setInstance(runTime.constant()); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< nl << "Writing mesh to " << mesh.objectPath() << endl; mesh.write(); diff --git a/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L b/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L index d8e193f9a4452eca4ccbfe2e03f3550243c5d24c..d74f4ab01ca83d58a9676087141b79d1423183f8 100644 --- a/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L +++ b/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1550,8 +1550,8 @@ int main(int argc, char *argv[]) repatcher.repatch(); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); // Re-do face matching to write sets diff --git a/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L b/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L index 7d038faf495edc5edf385b5b13bc92fedcdbde59..c29bff53e584ae9ac6a2462c61461c6320fd7027 100644 --- a/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L +++ b/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -868,8 +868,8 @@ int main(int argc, char *argv[]) defaultFacesType ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing polyMesh" << endl; pShapeMesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C index 77331991ab9c37194051ce89865864456328933c..8e95e454a990f40b57e2f236c084c4dc044cc317 100644 --- a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C +++ b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -98,19 +98,6 @@ bool skipSection(IFstream& inFile) } -void renumber -( - const Map<label>& mshToFoam, - labelList& labels -) -{ - forAll(labels, labelI) - { - labels[labelI] = mshToFoam[labels[labelI]]; - } -} - - // Find face in pp which uses all vertices in meshF (in mesh point labels) label findFace(const primitivePatch& pp, const labelList& meshF) { @@ -587,7 +574,7 @@ void readCellsLegacy { lineStr >> triPoints[0] >> triPoints[1] >> triPoints[2]; - renumber(mshToFoam, triPoints); + inplaceRenumber(mshToFoam, triPoints); const auto regFnd = physToPatch.cfind(regPhys); @@ -620,7 +607,7 @@ void readCellsLegacy >> quadPoints[0] >> quadPoints[1] >> quadPoints[2] >> quadPoints[3]; - renumber(mshToFoam, quadPoints); + inplaceRenumber(mshToFoam, quadPoints); const auto regFnd = physToPatch.cfind(regPhys); @@ -662,7 +649,7 @@ void readCellsLegacy >> tetPoints[0] >> tetPoints[1] >> tetPoints[2] >> tetPoints[3]; - renumber(mshToFoam, tetPoints); + inplaceRenumber(mshToFoam, tetPoints); cells[celli++].reset(tet, tetPoints); @@ -683,7 +670,7 @@ void readCellsLegacy >> pyrPoints[0] >> pyrPoints[1] >> pyrPoints[2] >> pyrPoints[3] >> pyrPoints[4]; - renumber(mshToFoam, pyrPoints); + inplaceRenumber(mshToFoam, pyrPoints); cells[celli++].reset(pyr, pyrPoints); @@ -704,7 +691,7 @@ void readCellsLegacy >> prismPoints[0] >> prismPoints[1] >> prismPoints[2] >> prismPoints[3] >> prismPoints[4] >> prismPoints[5]; - renumber(mshToFoam, prismPoints); + inplaceRenumber(mshToFoam, prismPoints); cells[celli].reset(prism, prismPoints); @@ -745,7 +732,7 @@ void readCellsLegacy >> hexPoints[4] >> hexPoints[5] >> hexPoints[6] >> hexPoints[7]; - renumber(mshToFoam, hexPoints); + inplaceRenumber(mshToFoam, hexPoints); cells[celli].reset(hex, hexPoints); @@ -929,7 +916,7 @@ void readCells IStringStream lineStr(line); lineStr >> elemID >> triPoints[0] >> triPoints[1] >> triPoints[2]; - renumber(mshToFoam, triPoints); + inplaceRenumber(mshToFoam, triPoints); const auto regFnd = physToPatch.cfind(regPhys); @@ -967,7 +954,7 @@ void readCells >> quadPoints[0] >> quadPoints[1] >> quadPoints[2] >> quadPoints[3]; - renumber(mshToFoam, quadPoints); + inplaceRenumber(mshToFoam, quadPoints); const auto regFnd = physToPatch.cfind(regPhys); @@ -1017,7 +1004,7 @@ void readCells >> tetPoints[0] >> tetPoints[1] >> tetPoints[2] >> tetPoints[3]; - renumber(mshToFoam, tetPoints); + inplaceRenumber(mshToFoam, tetPoints); cells[celli++].reset(tet, tetPoints); } @@ -1044,7 +1031,7 @@ void readCells >> pyrPoints[0] >> pyrPoints[1] >> pyrPoints[2] >> pyrPoints[3] >> pyrPoints[4]; - renumber(mshToFoam, pyrPoints); + inplaceRenumber(mshToFoam, pyrPoints); cells[celli++].reset(pyr, pyrPoints); } @@ -1071,7 +1058,7 @@ void readCells >> prismPoints[0] >> prismPoints[1] >> prismPoints[2] >> prismPoints[3] >> prismPoints[4] >> prismPoints[5]; - renumber(mshToFoam, prismPoints); + inplaceRenumber(mshToFoam, prismPoints); cells[celli].reset(prism, prismPoints); @@ -1118,7 +1105,7 @@ void readCells >> hexPoints[4] >> hexPoints[5] >> hexPoints[6] >> hexPoints[7]; - renumber(mshToFoam, hexPoints); + inplaceRenumber(mshToFoam, hexPoints); cells[celli].reset(hex, hexPoints); @@ -1582,7 +1569,7 @@ int main(int argc, char *argv[]) //Get polyMesh to write to constant - runTime.setTime(instant(runTime.constant()), 0); + runTime.setTime(instant(0, runTime.constant()), 0); repatcher.repatch(); @@ -1704,8 +1691,8 @@ int main(int argc, char *argv[]) repatcher.changePatches(newPatches); } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); mesh.write(); diff --git a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C index 125995083d3d08c76738d121ca3d1dacdfef56ef..cfc923bcf30a7c5a60393e66f5266f42af53bc24 100644 --- a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C +++ b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -219,14 +219,14 @@ void readPoints << endl; } - point pt; is.getLine(line); - pt[0] = readUnvScalar(line.substr(0, 25)); - pt[1] = readUnvScalar(line.substr(25, 25)); - pt[2] = readUnvScalar(line.substr(50, 25)); - unvPointID.append(pointi); - points.append(pt); + unvPointID.push_back(pointi); + point& p = points.emplace_back(); + + p.x() = readUnvScalar(line.substr(0, 25)); + p.y() = readUnvScalar(line.substr(25, 25)); + p.z() = readUnvScalar(line.substr(50, 25)); } points.shrink(); @@ -847,7 +847,7 @@ int main(int argc, char *argv[]) labelList own(boundaryFaces.size(), -1); labelList nei(boundaryFaces.size(), -1); - Map<label> faceToCell[2]; + Pair<Map<label>> faceToCell; { // Can use face::symmHasher or use sorted indices instead @@ -996,12 +996,7 @@ int main(int argc, char *argv[]) labelHashSet alreadyOnBoundary; // Construct map from boundaryFaceIndices - Map<label> boundaryFaceToIndex(boundaryFaceIndices.size()); - - forAll(boundaryFaceIndices, i) - { - boundaryFaceToIndex.insert(boundaryFaceIndices[i], i); - } + Map<label> boundaryFaceToIndex(invertToMap(boundaryFaceIndices)); forAll(patchFaceVerts, patchi) { @@ -1216,20 +1211,13 @@ int main(int argc, char *argv[]) { const label old = oldIndizes[i]; label noveau = -1; - label c1 = -1, c2 = -1; - if (faceToCell[0].found(old)) - { - c1 = faceToCell[0][old]; - } - if (faceToCell[1].found(old)) - { - c2 = faceToCell[1][old]; - } + + label c1 = faceToCell[0].lookup(old, -1); + label c2 = faceToCell[1].lookup(old, -1); + if (c1 < c2) { - label tmp = c1; - c1 = c2; - c2 = tmp; + std::swap(c1, c2); } if (c2 == -1) { @@ -1280,8 +1268,8 @@ int main(int argc, char *argv[]) Info << endl; } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); mesh.write(); diff --git a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H index 3aabf9614af75a178aeead7e5ab8cc1198e096c8..9c85e36c019b37b5c180a1189fa03c423e6c7d05 100644 --- a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H +++ b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H @@ -569,8 +569,8 @@ polyMesh pShapeMesh defaultFacesType ); -// Set the precision of the points data to 10 -IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); +// More precision (for points data) +IOstream::minPrecision(10); Info << "Writing polyMesh" << endl; pShapeMesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C b/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C index 2da335492b74497be7da24b072174e4f51fe8da4..45246a242c71083ad964162ec5bc4ea925f513c6 100644 --- a/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C +++ b/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -161,8 +161,8 @@ int main(int argc, char *argv[]) wordList() ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing mesh ..." << endl; diff --git a/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C b/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C index 1b29209c13df0c881a4c19dc2e1b4e4812c95756..c9cbabe10b5adc574df3959fedb888ee54019559 100644 --- a/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C +++ b/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -318,8 +318,8 @@ int main(int argc, char *argv[]) patchPhysicalTypes ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing mesh ..." << endl; mesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/plot3dToFoam/plot3dToFoam.C b/applications/utilities/mesh/conversion/plot3dToFoam/plot3dToFoam.C index 840a847a6211d323d84c8cb94308b22f0004ca9e..681919ce9aa8ccf8ec099ff8d98932dc240ad40d 100644 --- a/applications/utilities/mesh/conversion/plot3dToFoam/plot3dToFoam.C +++ b/applications/utilities/mesh/conversion/plot3dToFoam/plot3dToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -264,8 +264,8 @@ int main(int argc, char *argv[]) patchPhysicalTypes ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing polyMesh" << endl; pShapeMesh.removeFiles(); diff --git a/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C b/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C index 41d4e2b08e66fe3acefb5b2f510a91b5054335cd..e486173ac88bb757b258f82780d6d03d3fc0d321 100644 --- a/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C +++ b/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -103,8 +103,8 @@ int main(int argc, char *argv[]) : IOstreamOption::BINARY ); - // Increase the precision of the points data - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); // Remove extensions and/or trailing '.' diff --git a/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C b/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C index 97c67c26a854171fc6e2837a9400d1c9af0464d5..6726474de902a5e4262a56bbf3c8b7bc3f6664b6 100644 --- a/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C +++ b/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2021 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -197,7 +197,7 @@ int main(int argc, char *argv[]) // pointField points(nNodes); - Map<label> nodeToPoint(nNodes); + Map<label> nodeToPoint(2*nNodes); { labelList pointIndex(nNodes); @@ -439,23 +439,16 @@ int main(int argc, char *argv[]) // Get Foam patchID and update region->patch table. - label patchi = 0; + label patchi = regionToPatch.lookup(region, -1); - const auto patchFind = regionToPatch.cfind(region); - - if (patchFind.good()) - { - patchi = *patchFind; - } - else + if (patchi < 0) { patchi = nPatches; + regionToPatch.insert(region, nPatches++); Info<< "Mapping tetgen region " << region << " to patch " << patchi << endl; - - regionToPatch.insert(region, nPatches++); } boundaryPatch[facei] = patchi; @@ -549,8 +542,8 @@ int main(int argc, char *argv[]) ); } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing mesh to " << runTime.constant() << endl << endl; diff --git a/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C b/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C index cb8f5577349c84fefc0aee28513f5a9af991864f..cdc97fab330e0eaaa98730b39b1066d42264b3fc 100644 --- a/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C +++ b/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -88,8 +88,8 @@ int main(int argc, char *argv[]) wordList() ); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing mesh ..." << endl; diff --git a/applications/utilities/mesh/generation/PDRblockMesh/PDRblockMesh.C b/applications/utilities/mesh/generation/PDRblockMesh/PDRblockMesh.C index f6907cad1c27f6590437c4c1ae6ca052742cc8d7..deff3eda0ba1cde45f4906cf64f1ed7c1b618f7f 100644 --- a/applications/utilities/mesh/generation/PDRblockMesh/PDRblockMesh.C +++ b/applications/utilities/mesh/generation/PDRblockMesh/PDRblockMesh.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -231,8 +231,8 @@ int main(int argc, char *argv[]) polyMesh& mesh = *meshPtr; - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< nl << "Writing polyMesh with " << mesh.cellZones().size() << " cellZones" << endl; diff --git a/applications/utilities/mesh/generation/blockMesh/blockMesh.C b/applications/utilities/mesh/generation/blockMesh/blockMesh.C index a09d631fd563f89b8e7aba8b0053004ceb8eecbb..1c8aeec6f88bf8f8eb2a60c9e19f1fb0343d5084 100644 --- a/applications/utilities/mesh/generation/blockMesh/blockMesh.C +++ b/applications/utilities/mesh/generation/blockMesh/blockMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -289,8 +289,8 @@ int main(int argc, char *argv[]) // Handle cyclic patches #include "handleCyclicPatches.H" - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< nl << "Writing polyMesh with " << mesh.cellZones().size() << " cellZones"; diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C index decbb1aa5668d4e852a9e2e65a6796ac486e2a83..f558637ce545b3ee2c44c11f441c1705041be4b3 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C @@ -1088,8 +1088,8 @@ tmp<pointField> calcOffset { vectorField::subField fc = pp.faceCentres(); - tmp<pointField> toffsets(new pointField(fc.size())); - pointField& offsets = toffsets.ref(); + auto toffsets = tmp<pointField>::New(fc.size()); + auto& offsets = toffsets.ref(); forAll(fc, i) { diff --git a/applications/utilities/mesh/generation/foamyMesh/cellSizeAndAlignmentGrid/cellSizeAndAlignmentGrid.C b/applications/utilities/mesh/generation/foamyMesh/cellSizeAndAlignmentGrid/cellSizeAndAlignmentGrid.C index 6d96b054a29c1c3c039e09fa54a0f58aec539431..6b8c08a947b39454c6724efc6d6d3fe87af652f7 100644 --- a/applications/utilities/mesh/generation/foamyMesh/cellSizeAndAlignmentGrid/cellSizeAndAlignmentGrid.C +++ b/applications/utilities/mesh/generation/foamyMesh/cellSizeAndAlignmentGrid/cellSizeAndAlignmentGrid.C @@ -64,8 +64,8 @@ Foam::tmp<Foam::Field<Type>> filterFarPoints const Field<Type>& field ) { - tmp<Field<Type>> tNewField(new Field<Type>(field.size())); - Field<Type>& newField = tNewField.ref(); + auto tNewField = tmp<Field<Type>>::New(field.size()); + auto& newField = tNewField.ref(); label added = 0; label count = 0; diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/DelaunayMeshTools/DelaunayMeshToolsTemplates.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/DelaunayMeshTools/DelaunayMeshToolsTemplates.C index 70cae969d54504343283e8efddbbc10d2a3efb8a..5b0bbc3028245e090f7e5ed0bb628102e9e748eb 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/DelaunayMeshTools/DelaunayMeshToolsTemplates.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/DelaunayMeshTools/DelaunayMeshToolsTemplates.C @@ -268,8 +268,8 @@ Foam::tmp<Foam::pointField> Foam::DelaunayMeshTools::allPoints const Triangulation& t ) { - tmp<pointField> tpts(new pointField(t.vertexCount(), point::max)); - pointField& pts = tpts.ref(); + auto tpts = tmp<pointField>::New(t.vertexCount(), point::max); + auto& pts = tpts.ref(); for ( diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellShapeControlMesh/cellShapeControlMesh.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellShapeControlMesh/cellShapeControlMesh.C index 3df705a82c2268d1fe14ed7290066ab7822a38ff..27ebc07801cfa99aa2c477ebc4b21416ffb12fce 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellShapeControlMesh/cellShapeControlMesh.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellShapeControlMesh/cellShapeControlMesh.C @@ -258,8 +258,8 @@ Foam::label Foam::cellShapeControlMesh::removePoints() Foam::tmp<Foam::pointField> Foam::cellShapeControlMesh::cellCentres() const { - tmp<pointField> tcellCentres(new pointField(number_of_finite_cells())); - pointField& cellCentres = tcellCentres.ref(); + auto tcellCentres = tmp<pointField>::New(number_of_finite_cells()); + auto& cellCentres = tcellCentres.ref(); label count = 0; for diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellSizeAndAlignmentControl/searchableSurfaceControl/searchableSurfaceControl.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellSizeAndAlignmentControl/searchableSurfaceControl/searchableSurfaceControl.C index c8b8dc2280abdee23412cc7c80eafac1f3ec53d4..438125651de6fd05fbb07502a375a64ec11347a9 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellSizeAndAlignmentControl/searchableSurfaceControl/searchableSurfaceControl.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/cellSizeAndAlignmentControl/searchableSurfaceControl/searchableSurfaceControl.C @@ -482,8 +482,8 @@ void Foam::searchableSurfaceControl::cellSizeFunctionVertices DynamicList<scalar>& sizes ) const { - const tmp<pointField> tmpPoints = searchableSurface_.points(); - const pointField& points = tmpPoints(); + const tmp<pointField> tpoints(searchableSurface_.points()); + const pointField& points = tpoints(); const scalar nearFeatDistSqrCoeff = 1e-8; diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/smoothAlignmentSolver/smoothAlignmentSolver.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/smoothAlignmentSolver/smoothAlignmentSolver.C index fa4748d1c79e4deeae2f3d606f664882416fca4a..8ad03d0b2fc9eb9606c967f27601b5197a1b30be 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/smoothAlignmentSolver/smoothAlignmentSolver.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/smoothAlignmentSolver/smoothAlignmentSolver.C @@ -36,8 +36,8 @@ Foam::tmp<Foam::Field<Type>> Foam::smoothAlignmentSolver::filterFarPoints const Field<Type>& field ) { - tmp<Field<Type>> tNewField(new Field<Type>(field.size())); - Field<Type>& newField = tNewField.ref(); + auto tNewField = tmp<Field<Type>>::New(field.size()); + auto& newField = tNewField.ref(); label added = 0; label count = 0; diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellSizeControlSurfaces/surfaceCellSizeFunction/nonUniformField/nonUniformField.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellSizeControlSurfaces/surfaceCellSizeFunction/nonUniformField/nonUniformField.C index 412ef9bb55e5f8cee07928201ca5fefd41269ea1..5d216568d38a5ea946485de351e7118fbabad33e 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellSizeControlSurfaces/surfaceCellSizeFunction/nonUniformField/nonUniformField.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellSizeControlSurfaces/surfaceCellSizeFunction/nonUniformField/nonUniformField.C @@ -110,7 +110,8 @@ Foam::scalar Foam::nonUniformField::interpolate { const face& faceHitByPt = surfaceTriMesh_.triSurface::operator[](index); - const pointField& pts = surfaceTriMesh_.points(); + const tmp<pointField> tpoints(surfaceTriMesh_.points()); + const pointField& pts = tpoints(); // const Map<label>& pMap = surfaceTriMesh_.meshPointMap(); triPointRef tri diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C index c1cebc026a25ffd6d24f37199f3b00561af2efbf..a90fa8ac514ed843f2c1d25734254094e1b1c0a2 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C @@ -982,7 +982,7 @@ Foam::labelHashSet Foam::conformalVoronoiMesh::findOffsetPatchFaces offsetBoundaryCells.write(); } - return std::move(offsetBoundaryCells); + return offsetBoundaryCells; } diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C index 03f37ea67d1de71b390fc59f6c774042da70ba8c..1b6dbddb93046560755619e8f545710e561ad9d2 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C @@ -618,7 +618,7 @@ void Foam::conformalVoronoiMesh::reorderProcessorPatches labelList rotation(faces.size(), Zero); labelList faceMap(faces.size(), label(-1)); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send ordering forAll(sortMesh.boundaryMesh(), patchi) @@ -1371,7 +1371,7 @@ Foam::labelHashSet Foam::conformalVoronoiMesh::findRemainingProtrusionSet protrudingCells.write(); } - return std::move(protrudingCells); + return protrudingCells; } diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/indexedCell/indexedCellI.H b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/indexedCell/indexedCellI.H index 6ebf8ca347576f336146e03b7cbc9d04766ea33c..e5904be854edb9c079e4d9041c683b57c49670ff 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/indexedCell/indexedCellI.H +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/indexedCell/indexedCellI.H @@ -579,8 +579,8 @@ inline bool CGAL::indexedCell<Gt, Cb>::potentialCoplanarCell() const if (nMasters == 2 && nSlaves == 2) { - Foam::vector vp0(Foam::Zero); - Foam::vector vp1(Foam::Zero); + Foam::vector vp0(Foam::zero{}); + Foam::vector vp1(Foam::zero{}); if ( diff --git a/applications/utilities/mesh/generation/foamyMesh/foamyHexMeshBackgroundMesh/foamyHexMeshBackgroundMesh.C b/applications/utilities/mesh/generation/foamyMesh/foamyHexMeshBackgroundMesh/foamyHexMeshBackgroundMesh.C index b17e8c7c26e5ceb83df883e8e4f3d92fc3ac0455..359c7f2213ac6af26f39a0fbb563c1d41e6399a4 100644 --- a/applications/utilities/mesh/generation/foamyMesh/foamyHexMeshBackgroundMesh/foamyHexMeshBackgroundMesh.C +++ b/applications/utilities/mesh/generation/foamyMesh/foamyHexMeshBackgroundMesh/foamyHexMeshBackgroundMesh.C @@ -67,8 +67,8 @@ scalar getMergeDistance const scalar mergeTol = args.getOrDefault<scalar>("mergeTol", defaultMergeTol); - scalar writeTol = - Foam::pow(scalar(10), -scalar(IOstream::defaultPrecision())); + const scalar writeTol = + std::pow(scalar(10), -scalar(IOstream::defaultPrecision())); Info<< "Merge tolerance : " << mergeTol << nl << "Write tolerance : " << writeTol << endl; @@ -310,8 +310,8 @@ tmp<scalarField> signedDistance const labelList& surfaces ) { - tmp<scalarField> tfld(new scalarField(points.size(), Foam::sqr(GREAT))); - scalarField& fld = tfld.ref(); + auto tfld = tmp<scalarField>::New(points.size(), Foam::sqr(GREAT)); + auto& fld = tfld.ref(); // Find nearest List<pointIndexHit> nearest; diff --git a/applications/utilities/mesh/manipulation/autoPatch/autoPatch.C b/applications/utilities/mesh/manipulation/autoPatch/autoPatch.C index d9a3c2d438c34a44384006cb92dc5973884b98ee..4a14a2234852b87448435870a826315174a6d68f 100644 --- a/applications/utilities/mesh/manipulation/autoPatch/autoPatch.C +++ b/applications/utilities/mesh/manipulation/autoPatch/autoPatch.C @@ -269,8 +269,8 @@ int main(int argc, char *argv[]) mesh.setInstance(oldInstance); } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); mesh.write(); diff --git a/applications/utilities/mesh/manipulation/createPatch/createPatch.C b/applications/utilities/mesh/manipulation/createPatch/createPatch.C index d27d6df829953506401de1407167c3ad25be0f8d..f07f49bfad32692906c29aa2c963161121b59d49 100644 --- a/applications/utilities/mesh/manipulation/createPatch/createPatch.C +++ b/applications/utilities/mesh/manipulation/createPatch/createPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -541,7 +541,7 @@ void syncPoints // Is there any coupled patch with transformation? bool hasTransformation = false; - if (Pstream::parRun()) + if (UPstream::parRun()) { const labelList& procPatches = mesh.globalData().processorPatches(); @@ -570,7 +570,7 @@ void syncPoints OPstream toNbr ( - Pstream::commsTypes::blocking, + UPstream::commsTypes::buffered, procPatch.neighbProcNo() ); toNbr << patchInfo; @@ -587,17 +587,12 @@ void syncPoints if (pp.nPoints() && !procPatch.owner()) { - pointField nbrPatchInfo(procPatch.nPoints()); - { - // We do not know the number of points on the other side - // so cannot use UIPstream::read - IPstream fromNbr - ( - Pstream::commsTypes::blocking, - procPatch.neighbProcNo() - ); - fromNbr >> nbrPatchInfo; - } + // We do not know the number of points on the other side + // so cannot use UIPstream::read + + pointField nbrPatchInfo; + IPstream::recv(nbrPatchInfo, procPatch.neighbProcNo()); + // Null any value which is not on neighbouring processor nbrPatchInfo.setSize(procPatch.nPoints(), nullValue); @@ -1465,8 +1460,8 @@ int main(int argc, char *argv[]) } } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); // Write resulting mesh forAll(meshes, meshi) diff --git a/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C b/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C index c9fe1967d8d5ec005b5332375f800645c8e67738..375b770969ea397382a17767a2871ee23b33eb2a 100644 --- a/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C +++ b/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C @@ -100,8 +100,8 @@ int main(int argc, char *argv[]) twoDCorr.correctPoints(points); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing points into directory " << points.path() << nl << endl; points.write(); diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C b/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C index d5477c7a9eccafdf65e34b1d9870af9477ce5432..70d5904aa0f2b035832316c1a135d9459f4bab45 100644 --- a/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C +++ b/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C @@ -73,9 +73,11 @@ Foam::label Foam::mergePolyMesh::patchIndex(const polyPatch& p) // Patch not found. Append to the list { - OStringStream os; + OCharStream os; p.write(os); - patchDicts_.append(dictionary(IStringStream(os.str())())); + ISpanStream is(os.view()); + + patchDicts_.push_back(dictionary(is)); } if (nameFound) @@ -225,13 +227,15 @@ Foam::mergePolyMesh::mergePolyMesh(const IOobject& io) // Insert the original patches into the list wordList curPatchNames = boundaryMesh().names(); + OCharStream os; forAll(boundaryMesh(), patchi) { - patchNames_.append(boundaryMesh()[patchi].name()); - - OStringStream os; + os.rewind(); boundaryMesh()[patchi].write(os); - patchDicts_.append(dictionary(IStringStream(os.str())())); + ISpanStream is(os.view()); + + patchNames_.push_back(boundaryMesh()[patchi].name()); + patchDicts_.push_back(dictionary(is)); } // Insert point, face and cell zones into the list diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C index 126a03e2a924e65eacef16f9a88d7a6f4cf486ee..60312684877aaea991a47ed829220c584b920497 100644 --- a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C +++ b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,8 +101,8 @@ int main(int argc, char *argv[]) } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); // Generate the mirrorred mesh const fvMesh& mMesh = mesh.mirrorMesh(); diff --git a/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C b/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C index 384143a52d94664a35006c8e451941ff4152aa32..c5cdb17370790834e4d4bb19c0b4cbf4d92d94fa 100644 --- a/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C +++ b/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C @@ -65,16 +65,19 @@ void Foam::meshDualiser::checkPolyTopoChange(const polyTopoChange& meshMod) if (nUnique < points.size()) { - labelListList newToOld(invertOneToMany(nUnique, oldToNew)); + CompactListList<label> newToOld + ( + invertOneToManyCompact(nUnique, oldToNew) + ); - forAll(newToOld, newI) + forAll(newToOld, newi) { - if (newToOld[newI].size() != 1) + if (newToOld[newi].size() != 1) { FatalErrorInFunction - << "duplicate verts:" << newToOld[newI] + << "duplicate verts:" << newToOld[newi] << " coords:" - << UIndirectList<point>(points, newToOld[newI]) + << UIndirectList<point>(points, newToOld[newi]) << abort(FatalError); } } diff --git a/applications/utilities/mesh/manipulation/renumberMesh/Allwmake b/applications/utilities/mesh/manipulation/renumberMesh/Allwmake deleted file mode 100755 index 0f0d32738e739ad9b9c197673e93f0bd0a9746f8..0000000000000000000000000000000000000000 --- a/applications/utilities/mesh/manipulation/renumberMesh/Allwmake +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -cd "${0%/*}" || exit # Run from this directory -. ${WM_PROJECT_DIR:?}/wmake/scripts/AllwmakeParseArguments # (error catching) -. ${WM_PROJECT_DIR:?}/wmake/scripts/sysFunctions # General system functions -. ${WM_PROJECT_DIR:?}/wmake/scripts/have_zoltan - -#------------------------------------------------------------------------------ - -unset COMP_FLAGS LINK_FLAGS - -if findLibrary "$FOAM_LIBBIN/libSloanRenumber" > /dev/null -then - echo " found libSloanRenumber -- enabling sloan renumbering support." - export LINK_FLAGS="$LINK_FLAGS -lSloanRenumber" -fi - -if findLibrary "$FOAM_LIBBIN/libzoltanRenumber" > /dev/null && have_zoltan -then - echo " found libzoltanRenumber -- enabling zoltan renumbering support." - export COMP_FLAGS="$COMP_FLAGS -DHAVE_ZOLTAN" - export LINK_FLAGS="$LINK_FLAGS -lzoltanRenumber -L$ZOLTAN_LIB_DIR -lzoltan" -fi - -wmake $targetType - -#------------------------------------------------------------------------------ diff --git a/applications/utilities/mesh/manipulation/renumberMesh/Make/options b/applications/utilities/mesh/manipulation/renumberMesh/Make/options index 004f82049fae5620b6d6bb48d4b7e0a8f61352c8..8aca81f2dcd2af49b6ed14e5ba06c94113173ddd 100644 --- a/applications/utilities/mesh/manipulation/renumberMesh/Make/options +++ b/applications/utilities/mesh/manipulation/renumberMesh/Make/options @@ -1,21 +1,22 @@ EXE_INC = \ - $(COMP_FLAGS) \ - -I$(LIB_SRC)/finiteVolume/lnInclude \ + -I$(LIB_SRC)/fileFormats/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/dynamicMesh/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/renumber/renumberMethods/lnInclude \ - -I$(LIB_SRC)/renumber/zoltanRenumber/lnInclude \ + -I$(LIB_SRC)/parallel/decompose/decompose/lnInclude \ -I$(LIB_SRC)/parallel/decompose/decompositionMethods/lnInclude \ -I$(LIB_SRC)/parallel/reconstruct/reconstruct/lnInclude EXE_LIBS = \ - -lfiniteVolume \ + -lfileFormats \ -lmeshTools \ -ldynamicMesh \ + -lfiniteVolume \ -lgenericPatchFields \ -lrenumberMethods \ + -ldecompose \ -lreconstruct \ - $(LINK_FLAGS) \ -ldecompositionMethods \ -L$(FOAM_LIBBIN)/dummy \ -lkahipDecomp -lmetisDecomp -lscotchDecomp diff --git a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C index b35202a4ad2660ffef3744e9c4ecea0cda229f45..9a3eb426477e8bfca4be0825c52771451938f6ca 100644 --- a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C +++ b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,12 +34,97 @@ Description Renumbers the cell list in order to reduce the bandwidth, reading and renumbering all fields from all the time directories. - By default uses bandCompression (CuthillMcKee) but will - read system/renumberMeshDict if -dict option is present + By default uses bandCompression (Cuthill-McKee) or the method + specified by the -renumber-method option, but will read + system/renumberMeshDict if -dict option is present + +Usage + \b renumberMesh [OPTIONS] + + Options: + - \par -allRegions + Use all regions in regionProperties + + - \par -case \<dir\> + Specify case directory to use (instead of the cwd). + + - \par -constant + Include the 'constant/' dir in the times list. + + - \par -decompose + Aggregate initially with a decomposition method (serial only) + + - \par -decomposeParDict \<file\> + Use specified file for decomposePar dictionary. + + - \par -dict \<file\> + Use specified file for renumberMeshDict dictionary. + + - \par -dry-run + Test only + + - \par -frontWidth + Calculate the rms of the front-width + + - \par -latestTime + Select the latest time. + + - \par -lib \<name\> + Additional library or library list to load (can be used multiple times). + + - \par -no-fields + Suppress renumber of fields + + - \par -noZero + Exclude the \a 0 dir from the times list. + + - \par -overwrite + Overwrite existing mesh/results files + + - \par -parallel + Run in parallel + + - \par -region \<regionName\> + Renumber named region. + + - \par -regions \<wordRes\> + Renumber named regions. + + - \par -renumber-coeffs \<string-content\> + String to create renumber dictionary contents. + + - \par -renumber-method \<name\> + Specify renumber method (default: CuthillMcKee) without dictionary + + - \par -time \<value\> + Specify time to select + + - \par -verbose + Additional verbosity. + + - \par -doc + Display documentation in browser. + + - \par -doc-source + Display source code in browser. + + - \par -help + Display short help and exit. + + - \par -help-man + Display full help (manpage format) and exit. + + - \par -help-notes + Display help notes (description) and exit. + + - \par -help-full + Display full help and exit. \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "clockTime.H" +#include "timeSelector.H" #include "IOobjectList.H" #include "fvMesh.H" #include "polyTopoChange.H" @@ -48,8 +133,9 @@ Description #include "surfaceFields.H" #include "SortableList.H" #include "decompositionMethod.H" +#include "decompositionModel.H" #include "renumberMethod.H" -#include "zeroGradientFvPatchFields.H" +#include "foamVtkInternalMeshWriter.H" #include "CuthillMcKeeRenumber.H" #include "fvMeshSubset.H" #include "cellSet.H" @@ -59,13 +145,27 @@ Description #include "hexRef8Data.H" #include "regionProperties.H" #include "polyMeshTools.H" +#include "subsetAdjacency.H" + +using namespace Foam; -#ifdef HAVE_ZOLTAN - #include "zoltanRenumber.H" -#endif +// Slightly messy way of handling timing, but since the timing points +// are scattered between 'main()' and other local functions... +clockTime timer; -using namespace Foam; +// Timing categories +enum TimingType +{ + READ_MESH, // Reading mesh + READ_FIELDS, // Reading fields + DECOMPOSE, // Domain decomposition (if any) + CELL_CELLS, // globalMeshData::calcCellCells + RENUMBER, // The renumberMethod + REORDER, // Mesh reordering (topoChange) + WRITING, // Writing mesh/fields +}; +FixedList<double, 8> timings; // Create named field from labelList for post-processing @@ -80,35 +180,71 @@ tmp<volScalarField> createScalarField ( name, mesh, - dimensionedScalar(dimless, Zero), + dimensionedScalar(word::null, dimless, -1), fvPatchFieldBase::zeroGradientType() ); auto& fld = tfld.ref(); - forAll(fld, celli) + forAll(elems, celli) { fld[celli] = elems[celli]; } + fld.correctBoundaryConditions(); return tfld; } -// Calculate band of matrix -label getBand(const labelList& owner, const labelList& neighbour) +// Calculate band of mesh +// label getBand(const labelUList& owner, const labelUList& neighbour) +// { +// label bandwidth = 0; +// +// forAll(neighbour, facei) +// { +// const label width = neighbour[facei] - owner[facei]; +// +// if (bandwidth < width) +// { +// bandwidth = width; +// } +// } +// return bandwidth; +// } + + +// Calculate band and profile of matrix. Profile is scalar to avoid overflow +Tuple2<label, scalar> getBand +( + const CompactListList<label>& mat +) { - label band = 0; + Tuple2<label, scalar> metrics(0, 0); - forAll(neighbour, facei) + auto& bandwidth = metrics.first(); + auto& profile = metrics.second(); + + forAll(mat, celli) { - label diff = neighbour[facei] - owner[facei]; + const auto& neighbours = mat[celli]; + + const label nNbr = neighbours.size(); - if (diff > band) + if (nNbr) { - band = diff; + // Max distance + const label width = (neighbours[nNbr-1] - celli); + + if (bandwidth < width) + { + bandwidth = width; + } + + profile += scalar(width); } } - return band; + + return metrics; } @@ -117,43 +253,53 @@ void getBand ( const bool calculateIntersect, const label nCells, - const labelList& owner, - const labelList& neighbour, + const labelUList& owner, + const labelUList& neighbour, label& bandwidth, scalar& profile, // scalar to avoid overflow scalar& sumSqrIntersect // scalar to avoid overflow ) { - labelList cellBandwidth(nCells, Zero); - scalarField nIntersect(nCells, Zero); + labelList cellBandwidth(nCells, Foam::zero{}); + + bandwidth = 0; forAll(neighbour, facei) { - label own = owner[facei]; - label nei = neighbour[facei]; + const label own = owner[facei]; + const label nei = neighbour[facei]; // Note: mag not necessary for correct (upper-triangular) ordering. - label diff = nei-own; - cellBandwidth[nei] = max(cellBandwidth[nei], diff); - } + const label width = nei - own; - bandwidth = max(cellBandwidth); + if (cellBandwidth[nei] < width) + { + cellBandwidth[nei] = width; + + if (bandwidth < width) + { + bandwidth = width; + } + } + } // Do not use field algebra because of conversion label to scalar - profile = 0.0; - forAll(cellBandwidth, celli) + profile = 0; + for (const label width : cellBandwidth) { - profile += 1.0*cellBandwidth[celli]; + profile += scalar(width); } - sumSqrIntersect = 0.0; + sumSqrIntersect = 0; if (calculateIntersect) { + scalarField nIntersect(nCells, Foam::zero{}); + forAll(nIntersect, celli) { for (label colI = celli-cellBandwidth[celli]; colI <= celli; colI++) { - nIntersect[colI] += 1.0; + nIntersect[colI] += scalar(1); } } @@ -175,54 +321,46 @@ labelList getFaceOrder label newFacei = 0; - labelList nbr; - labelList order; + DynamicList<label> nbr(64); + DynamicList<label> order(64); forAll(cellOrder, newCelli) { - label oldCelli = cellOrder[newCelli]; + const label oldCelli = cellOrder[newCelli]; const cell& cFaces = mesh.cells()[oldCelli]; // Neighbouring cells - nbr.setSize(cFaces.size()); + nbr.clear(); - forAll(cFaces, i) + for (const label facei : cFaces) { - label facei = cFaces[i]; + label nbrCelli = -1; if (mesh.isInternalFace(facei)) { // Internal face. Get cell on other side. - label nbrCelli = reverseCellOrder[mesh.faceNeighbour()[facei]]; + nbrCelli = reverseCellOrder[mesh.faceNeighbour()[facei]]; if (nbrCelli == newCelli) { nbrCelli = reverseCellOrder[mesh.faceOwner()[facei]]; } - if (newCelli < nbrCelli) - { - // Celli is master - nbr[i] = nbrCelli; - } - else + // The nbrCell is actually the master (let it handle the face) + if (nbrCelli <= newCelli) { - // nbrCell is master. Let it handle this face. - nbr[i] = -1; + nbrCelli = -1; } } - else - { - // External face. Do later. - nbr[i] = -1; - } + + nbr.push_back(nbrCelli); } - sortedOrder(nbr, order); + Foam::sortedOrder(nbr, order); for (const label index : order) { - if (nbr[index] != -1) + if (nbr[index] >= 0) { oldToNewFace[cFaces[index]] = newFacei++; } @@ -266,73 +404,71 @@ labelList getRegionFaceOrder label newFacei = 0; - label prevRegion = -1; + DynamicList<label> nbr(64); + DynamicList<label> order(64); forAll(cellOrder, newCelli) { - label oldCelli = cellOrder[newCelli]; - - if (cellToRegion[oldCelli] != prevRegion) - { - prevRegion = cellToRegion[oldCelli]; - } + const label oldCelli = cellOrder[newCelli]; const cell& cFaces = mesh.cells()[oldCelli]; - SortableList<label> nbr(cFaces.size()); + // Neighbouring cells + nbr.clear(); - forAll(cFaces, i) + for (const label facei : cFaces) { - label facei = cFaces[i]; + label nbrCelli = -1; if (mesh.isInternalFace(facei)) { // Internal face. Get cell on other side. - label nbrCelli = reverseCellOrder[mesh.faceNeighbour()[facei]]; + nbrCelli = reverseCellOrder[mesh.faceNeighbour()[facei]]; if (nbrCelli == newCelli) { nbrCelli = reverseCellOrder[mesh.faceOwner()[facei]]; } - if (cellToRegion[oldCelli] != cellToRegion[cellOrder[nbrCelli]]) - { - // Treat like external face. Do later. - nbr[i] = -1; - } - else if (newCelli < nbrCelli) + // The nbrCell is actually the master (let it handle the face) + if (nbrCelli <= newCelli) { - // Celli is master - nbr[i] = nbrCelli; + nbrCelli = -1; } else { - // nbrCell is master. Let it handle this face. - nbr[i] = -1; + // A region boundary? - treat like an external face + label ownRegion = cellToRegion[oldCelli]; + label neiRegion = cellToRegion[cellOrder[nbrCelli]]; + + if (ownRegion != neiRegion) + { + nbrCelli = -1; + } } } - else - { - // External face. Do later. - nbr[i] = -1; - } + + nbr.push_back(nbrCelli); } - nbr.sort(); + Foam::sortedOrder(nbr, order); - forAll(nbr, i) + for (const label index : order) { - if (nbr[i] != -1) + if (nbr[index] >= 0) { - oldToNewFace[cFaces[nbr.indices()[i]]] = newFacei++; + oldToNewFace[cFaces[index]] = newFacei++; } } } + // This seems to be broken... + // Do region interfaces - label nRegions = max(cellToRegion)+1; { + const label nRegions = max(cellToRegion)+1; + // Sort in increasing region - SortableList<label> sortKey(mesh.nFaces(), labelMax); + SortableList<label> sortKey(mesh.nInternalFaces(), labelMax); for (label facei = 0; facei < mesh.nInternalFaces(); facei++) { @@ -346,10 +482,10 @@ labelList getRegionFaceOrder +max(ownRegion, neiRegion); } } + sortKey.sort(); // Extract. - label prevKey = -1; forAll(sortKey, i) { label key = sortKey[i]; @@ -359,11 +495,6 @@ labelList getRegionFaceOrder break; } - if (prevKey != key) - { - prevKey = key; - } - oldToNewFace[sortKey.indices()[i]] = newFacei++; } } @@ -381,8 +512,7 @@ labelList getRegionFaceOrder if (oldToNewFace[facei] == -1) { FatalErrorInFunction - << "Did not determine new position" - << " for face " << facei + << "Did not determine new position for face " << facei << abort(FatalError); } } @@ -426,13 +556,10 @@ autoPtr<mapPolyMesh> reorderMesh labelHashSet flipFaceFlux(newOwner.size()); forAll(newNeighbour, facei) { - label own = newOwner[facei]; - label nei = newNeighbour[facei]; - - if (nei < own) + if (newOwner[facei] > newNeighbour[facei]) { - newFaces[facei].flip(); std::swap(newOwner[facei], newNeighbour[facei]); + newFaces[facei].flip(); flipFaceFlux.insert(facei); } } @@ -543,55 +670,132 @@ autoPtr<mapPolyMesh> reorderMesh } -// Return new to old cell numbering -labelList regionRenumber +// Return new to old cell numbering, region-wise +CompactListList<label> regionRenumber ( const renumberMethod& method, const fvMesh& mesh, - const labelList& cellToRegion + const labelList& cellToRegion, + label nRegions = -1 // Number of regions or auto-detect ) { - Info<< "Determining cell order:" << endl; + // Info<< "Determining cell order:" << endl; + + if (nRegions < 0) + { + nRegions = Foam::max(cellToRegion)+1; + } - labelList cellOrder(cellToRegion.size()); + // Initially the per-region cell selection + CompactListList<label> regionCellOrder + ( + invertOneToManyCompact(nRegions, cellToRegion) + ); + + if (method.no_topology()) + { + // Special case when renumberMesh is only used for decomposition. + // - can skip generating the connectivity + // - nonetheless calculate the order in case it is non-identity + + timer.resetTimeIncrement(); - label nRegions = max(cellToRegion)+1; + forAll(regionCellOrder, regioni) + { + // Note: cellMap is identical to regionToCells[regioni] + // since it is already sorted - labelListList regionToCells(invertOneToMany(nRegions, cellToRegion)); + labelList subCellOrder = + method.renumber(regionCellOrder[regioni].size()); - label celli = 0; + // Per region reordering (inplace but with SubList) + regionCellOrder[regioni] = + labelUIndList(regionCellOrder[regioni], subCellOrder)(); + } - forAll(regionToCells, regioni) + timings[TimingType::RENUMBER] += timer.timeIncrement(); + } + else if (method.needs_mesh()) { - Info<< " region " << regioni << " starts at " << celli << endl; + timer.resetTimeIncrement(); - // Make sure no parallel comms - const bool oldParRun = UPstream::parRun(false); + forAll(regionCellOrder, regioni) + { + // Info<< " region " << regioni << " starts at " + // << regionCellOrder.localStart(regioni) << nl; - // Per region do a reordering. - fvMeshSubset subsetter(mesh, regioni, cellToRegion); + // No parallel communication + const bool oldParRun = UPstream::parRun(false); - const fvMesh& subMesh = subsetter.subMesh(); + // Get local sub-mesh + fvMeshSubset subsetter(mesh, regionCellOrder[regioni]); - labelList subCellOrder = method.renumber - ( - subMesh, - subMesh.cellCentres() - ); + // Note: cellMap will be identical to regionToCells[regioni] + // (assuming they are properly sorted!) + const labelList& cellMap = subsetter.cellMap(); + + labelList subCellOrder = method.renumber(subsetter.subMesh()); + + UPstream::parRun(oldParRun); // Restore parallel state + + // Per region reordering + regionCellOrder[regioni] = labelUIndList(cellMap, subCellOrder); + } + + timings[TimingType::RENUMBER] += timer.timeIncrement(); + } + else + { + timer.resetTimeIncrement(); + + // Create adjacency matrix of the full mesh and subset subsequently. + // This is more efficient than creating adjacency matrices of + // sub-meshes. + + // No parallel communication + const bool oldParRun = UPstream::parRun(false); + // The local connectivity of the full (non-subsetted) mesh + CompactListList<label> meshCellCells; + globalMeshData::calcCellCells(mesh, meshCellCells); UPstream::parRun(oldParRun); // Restore parallel state + timings[TimingType::CELL_CELLS] += timer.timeIncrement(); - const labelList& cellMap = subsetter.cellMap(); + // For the respective subMesh selections + bitSet subsetCells(mesh.nCells()); - forAll(subCellOrder, i) + forAll(regionCellOrder, regioni) { - cellOrder[celli++] = cellMap[subCellOrder[i]]; + // Info<< " region " << regioni << " starts at " + // << regionCellOrder.localStart(regioni) << nl; + + subsetCells = false; + subsetCells.set(regionCellOrder[regioni]); + + // Connectivity of local sub-mesh + labelList cellMap; + CompactListList<label> subCellCells = + subsetAdjacency(subsetCells, meshCellCells, cellMap); + + timings[TimingType::CELL_CELLS] += timer.timeIncrement(); + + // No parallel communication + const bool oldParRun = UPstream::parRun(false); + + labelList subCellOrder = method.renumber(subCellCells); + + UPstream::parRun(oldParRun); // Restore parallel state + + // Per region reordering + regionCellOrder[regioni] = labelUIndList(cellMap, subCellOrder); + + timings[TimingType::RENUMBER] += timer.timeIncrement(); } } - Info<< endl; + // Info<< endl; - return cellOrder; + return regionCellOrder; } @@ -599,55 +803,156 @@ labelList regionRenumber int main(int argc, char *argv[]) { + argList::noFunctionObjects(); // Never use function objects + + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( - "Renumber mesh cells to reduce the bandwidth" + "Renumber mesh cells to reduce the bandwidth. Use the -lib option or" + " dictionary 'libs' entry to load additional libraries" ); - #include "addAllRegionOptions.H" - #include "addOverwriteOption.H" - #include "addTimeOptions.H" + argList::addDryRunOption + ( + "Test without writing. " + "Changes -write-maps to write VTK output." + ); + argList::addVerboseOption(); argList::addOption("dict", "file", "Alternative renumberMeshDict"); argList::addBoolOption ( "frontWidth", - "Calculate the rms of the front-width" + "Calculate the RMS of the front-width" + ); + + argList::addBoolOption + ( + "decompose", + "Aggregate initially with a decomposition method (serial only)" + ); + + argList::addBoolOption + ( + "write-maps", + "Write renumber mappings" + ); + + argList::addBoolOption + ( + "no-fields", + "Suppress renumbering of fields (eg, when they are only uniform)" + ); + + argList::addBoolOption + ( + "list-renumber", + "List available renumbering methods" + ); + + argList::addOption + ( + "renumber-method", + "name", + "Specify renumber method (default: CuthillMcKee) without dictionary" + ); + + argList::addOption + ( + "renumber-coeffs", + "string-content", + "Specify renumber coefficients (dictionary content) as string. " + "eg, 'reverse true;'" ); - argList::noFunctionObjects(); // Never use function objects + #include "addAllRegionOptions.H" + #include "addOverwriteOption.H" + + // ------------------------- #include "setRootCase.H" + + { + bool listOptions = false; + + if (args.found("list-renumber")) + { + listOptions = true; + Info<< nl + << "Available renumber methods:" << nl + << " " + << flatOutput(renumberMethod::supportedMethods()) << nl + << nl; + } + + if (listOptions) + { + return 0; + } + } + + const bool dryrun = args.dryRun(); + + const bool readDict = args.found("dict"); + const bool doDecompose = args.found("decompose"); + const bool overwrite = args.found("overwrite"); + const bool doFields = !args.found("no-fields"); + const bool doFrontWidth = args.found("frontWidth") && !doDecompose; + + word renumberMethodName; + args.readIfPresent("renumber-method", renumberMethodName); + + if (doDecompose && UPstream::parRun()) + { + FatalErrorIn(args.executable()) + << "Cannot use -decompose option in parallel ... giving up" << nl + << exit(FatalError); + } + #include "createTime.H" - #include "getAllRegionOptions.H" - // Force linker to include zoltan symbols. This section is only needed since - // Zoltan is a static library - #ifdef HAVE_ZOLTAN - Info<< "renumberMesh built with zoltan support." << nl << endl; - (void)zoltanRenumber::typeName; - #endif + // Allow override of decomposeParDict location + fileName decompDictFile; + if + ( + args.readIfPresent("decomposeParDict", decompDictFile) + && !decompDictFile.empty() && !decompDictFile.isAbsolute() + ) + { + decompDictFile = runTime.globalPath()/decompDictFile; + } + + // Get region names + #include "getAllRegionOptions.H" - // Get times list - instantList Times = runTime.times(); + // Set time from specified time options, or force start from Time=0 + timeSelector::setTimeIfPresent(runTime, args, true); - // Set startTime and endTime depending on -time and -latestTime options - #include "checkTimeOptions.H" + // Capture current time information for non-overwrite + const Tuple2<instant, label> startTime + ( + instant(runTime.value(), runTime.timeName()), + runTime.timeIndex() + ); - runTime.setTime(Times[startTime], startTime); + // Start/reset all timings + timer.resetTime(); + timings = Foam::zero{}; #include "createNamedMeshes.H" - const bool readDict = args.found("dict"); - const bool doFrontWidth = args.found("frontWidth"); - const bool overwrite = args.found("overwrite"); + timings[TimingType::READ_MESH] += timer.timeIncrement(); for (fvMesh& mesh : meshes) { // Reset time in case of multiple meshes and not overwrite - runTime.setTime(Times[startTime], startTime); + if (!overwrite) + { + runTime.setTime(startTime.first(), startTime.second()); + } const word oldInstance = mesh.pointsInstance(); @@ -667,35 +972,34 @@ int main(int argc, char *argv[]) reduce(band, maxOp<label>()); reduce(profile, sumOp<scalar>()); - scalar rmsFrontwidth = Foam::sqrt - ( - returnReduce - ( - sumSqrIntersect, - sumOp<scalar>() - )/mesh.globalData().nTotalCells() - ); Info<< "Mesh " << mesh.name() << " size: " << mesh.globalData().nTotalCells() << nl - << "Before renumbering :" << nl + << "Before renumbering" << nl << " band : " << band << nl << " profile : " << profile << nl; if (doFrontWidth) { + reduce(sumSqrIntersect, sumOp<scalar>()); + scalar rmsFrontwidth = Foam::sqrt + ( + sumSqrIntersect/mesh.globalData().nTotalCells() + ); + Info<< " rms frontwidth : " << rmsFrontwidth << nl; } Info<< endl; bool sortCoupledFaceCells = false; - bool writeMaps = false; + bool writeMaps = args.found("write-maps"); bool orderPoints = false; + bool useRegionFaceOrder = false; label blockSize = 0; // Construct renumberMethod - autoPtr<IOdictionary> renumberDictPtr; + dictionary renumberDict; autoPtr<renumberMethod> renumberPtr; if (readDict) @@ -705,38 +1009,37 @@ int main(int argc, char *argv[]) Info<< "Renumber according to " << dictIO.name() << nl << endl; - renumberDictPtr.reset(new IOdictionary(dictIO)); - const IOdictionary& renumberDict = renumberDictPtr(); + renumberDict = IOdictionary::readContents(dictIO); renumberPtr = renumberMethod::New(renumberDict); - sortCoupledFaceCells = renumberDict.getOrDefault - ( - "sortCoupledFaceCells", - false - ); - if (sortCoupledFaceCells) + // This options are likely orthogonal to -decompose mode + if (!doDecompose) { - Info<< "Sorting cells on coupled boundaries to be last." << nl - << endl; - } + sortCoupledFaceCells = + renumberDict.getOrDefault("sortCoupledFaceCells", false); - blockSize = renumberDict.getOrDefault("blockSize", 0); - if (blockSize > 0) - { - Info<< "Ordering cells into regions of size " << blockSize - << " (using decomposition);" - << " ordering faces into region-internal" - << " and region-external." - << nl << endl; + if (sortCoupledFaceCells) + { + Info<< "Sorting cells on coupled boundaries to be last." + << nl << endl; + } + + blockSize = renumberDict.getOrDefault<label>("blockSize", 0); - if (blockSize < 0 || blockSize >= mesh.nCells()) + if (blockSize > 0) { - FatalErrorInFunction - << "Block size " << blockSize - << " should be positive integer" - << " and less than the number of cells in the mesh." - << exit(FatalError); + Info<< "Ordering cells into regions of size " << blockSize + << " (using decomposition);" + << " ordering faces into region-internal" + << " and region-external." + << nl << endl; + } + + if (blockSize > 0) + { + useRegionFaceOrder = + renumberDict.getOrDefault("regionFaceOrder", false); } } @@ -744,27 +1047,56 @@ int main(int argc, char *argv[]) if (orderPoints) { Info<< "Ordering points into internal and boundary points." - << nl - << endl; + << nl << endl; } - renumberDict.readEntry("writeMaps", writeMaps); - if (writeMaps) + if + ( + renumberDict.readIfPresent("writeMaps", writeMaps) + && writeMaps + ) { - Info<< "Writing renumber maps (new to old) to polyMesh." << nl - << endl; + Info<< "Writing renumber maps (new to old) to polyMesh." + << nl << endl; } } else { - Info<< "Using default renumberMethod." << nl << endl; - dictionary renumberDict; - renumberPtr.reset(new CuthillMcKeeRenumber(renumberDict)); - } + if (args.found("renumber-coeffs")) + { + ITstream is = args.lookup("renumber-coeffs"); - Info<< "Selecting renumberMethod " << renumberPtr().type() << nl - << endl; + is >> renumberDict; + Info<< "Specified renumber coefficients:" << nl + << renumberDict << nl; + } + + if (!renumberMethodName.empty()) + { + // Specify/override the "method" within dictionary + renumberDict.set("method", renumberMethodName); + renumberPtr = renumberMethod::New(renumberDict); + } + else if (renumberDict.found("method")) + { + // Use the "method" type within dictionary + renumberPtr = renumberMethod::New(renumberDict); + } + } + + // Default renumbering method + if (!renumberPtr) + { + renumberPtr.reset(new CuthillMcKeeRenumber(renumberDict)); + Info<< "Using renumber-method: " << renumberPtr().type() + << " [default]" << endl; + } + else + { + Info<< "Using renumber-method: " << renumberPtr().type() + << endl; + } // Read parallel reconstruct maps @@ -776,10 +1108,10 @@ int main(int argc, char *argv[]) mesh.facesInstance(), polyMesh::meshSubDir, mesh, - IOobject::READ_IF_PRESENT, + (dryrun ? IOobject::NO_READ : IOobject::READ_IF_PRESENT), IOobject::AUTO_WRITE ), - labelList(0) + labelList() ); labelIOList faceProcAddressing @@ -790,10 +1122,10 @@ int main(int argc, char *argv[]) mesh.facesInstance(), polyMesh::meshSubDir, mesh, - IOobject::READ_IF_PRESENT, + (dryrun ? IOobject::NO_READ : IOobject::READ_IF_PRESENT), IOobject::AUTO_WRITE ), - labelList(0) + labelList() ); labelIOList pointProcAddressing ( @@ -803,10 +1135,10 @@ int main(int argc, char *argv[]) mesh.pointsInstance(), polyMesh::meshSubDir, mesh, - IOobject::READ_IF_PRESENT, + (dryrun ? IOobject::NO_READ : IOobject::READ_IF_PRESENT), IOobject::AUTO_WRITE ), - labelList(0) + labelList() ); labelIOList boundaryProcAddressing ( @@ -816,75 +1148,85 @@ int main(int argc, char *argv[]) mesh.pointsInstance(), polyMesh::meshSubDir, mesh, - IOobject::READ_IF_PRESENT, + (dryrun ? IOobject::NO_READ : IOobject::READ_IF_PRESENT), IOobject::AUTO_WRITE ), - labelList(0) + labelList() ); - // Read objects in time directory - IOobjectList objects(mesh, runTime.timeName()); - - - // Read vol fields. + // List of stored objects to clear from mesh (after reading) + DynamicList<regIOobject*> storedObjects; - PtrList<volScalarField> vsFlds; - ReadFields(mesh, objects, vsFlds); - - PtrList<volVectorField> vvFlds; - ReadFields(mesh, objects, vvFlds); - - PtrList<volSphericalTensorField> vstFlds; - ReadFields(mesh, objects, vstFlds); - - PtrList<volSymmTensorField> vsymtFlds; - ReadFields(mesh, objects, vsymtFlds); - - PtrList<volTensorField> vtFlds; - ReadFields(mesh, objects, vtFlds); + if (!dryrun && doFields) + { + Info<< nl << "Reading fields" << nl; + timer.resetTimeIncrement(); - // Read surface fields. + IOobjectList objects(mesh, runTime.timeName()); + storedObjects.reserve(objects.size()); - PtrList<surfaceScalarField> ssFlds; - ReadFields(mesh, objects, ssFlds); + const predicates::always nameMatcher; - PtrList<surfaceVectorField> svFlds; - ReadFields(mesh, objects, svFlds); + // Read GeometricFields - PtrList<surfaceSphericalTensorField> sstFlds; - ReadFields(mesh, objects, sstFlds); + #undef doLocalCode + #define doLocalCode(FieldType) \ + readFields<FieldType>(mesh, objects, nameMatcher, storedObjects); - PtrList<surfaceSymmTensorField> ssymtFlds; - ReadFields(mesh, objects, ssymtFlds); + // Read volume fields + doLocalCode(volScalarField); + doLocalCode(volVectorField); + doLocalCode(volSphericalTensorField); + doLocalCode(volSymmTensorField); + doLocalCode(volTensorField); - PtrList<surfaceTensorField> stFlds; - ReadFields(mesh, objects, stFlds); + // Read internal fields + doLocalCode(volScalarField::Internal); + doLocalCode(volVectorField::Internal); + doLocalCode(volSphericalTensorField::Internal); + doLocalCode(volSymmTensorField::Internal); + doLocalCode(volTensorField::Internal); + // Read surface fields + doLocalCode(surfaceScalarField); + doLocalCode(surfaceVectorField); + doLocalCode(surfaceSphericalTensorField); + doLocalCode(surfaceSymmTensorField); + doLocalCode(surfaceTensorField); - // Read point fields. - PtrList<pointScalarField> psFlds; - ReadFields(pointMesh::New(mesh), objects, psFlds); + // Read point fields + const pointMesh& pMesh = pointMesh::New(mesh); + #undef doLocalCode + #define doLocalCode(FieldType) \ + readFields<FieldType>(pMesh, objects, nameMatcher, storedObjects); - PtrList<pointVectorField> pvFlds; - ReadFields(pointMesh::New(mesh), objects, pvFlds); + doLocalCode(pointScalarField); + doLocalCode(pointVectorField); + doLocalCode(pointSphericalTensorField); + doLocalCode(pointSymmTensorField); + doLocalCode(pointTensorField); - PtrList<pointSphericalTensorField> pstFlds; - ReadFields(pointMesh::New(mesh), objects, pstFlds); + #undef doLocalCode - PtrList<pointSymmTensorField> psymtFlds; - ReadFields(pointMesh::New(mesh), objects, psymtFlds); + timings[TimingType::READ_FIELDS] += timer.timeIncrement(); - PtrList<pointTensorField> ptFlds; - ReadFields(pointMesh::New(mesh), objects, ptFlds); + // Write loaded fields when mesh.write() is called + for (auto* fldptr : storedObjects) + { + fldptr->writeOpt(IOobject::AUTO_WRITE); + } + } // Read sets PtrList<cellSet> cellSets; PtrList<faceSet> faceSets; PtrList<pointSet> pointSets; + + if (!dryrun) { // Read sets IOobjectList objects(mesh, mesh.facesInstance(), "polyMesh/sets"); @@ -901,8 +1243,10 @@ int main(int argc, char *argv[]) labelList cellOrder; labelList faceOrder; - if (blockSize > 0) + if (blockSize > 0 && !doDecompose) { + timer.resetTimeIncrement(); + // Renumbering in two phases. Should be done in one so mapping of // fields is done correctly! @@ -910,15 +1254,14 @@ int main(int argc, char *argv[]) Info<< "nBlocks = " << nBlocks << endl; // Read decompositionMethod dictionary - dictionary decomposeDict(renumberDictPtr().subDict("blockCoeffs")); + dictionary decomposeDict(renumberDict.subDict("blockCoeffs")); decomposeDict.set("numberOfSubdomains", nBlocks); + // No parallel communication const bool oldParRun = UPstream::parRun(false); - autoPtr<decompositionMethod> decomposePtr = decompositionMethod::New - ( - decomposeDict - ); + autoPtr<decompositionMethod> decomposePtr = + decompositionMethod::New(decomposeDict); labelList cellToRegion ( @@ -931,6 +1274,7 @@ int main(int argc, char *argv[]) UPstream::parRun(oldParRun); // Restore parallel state + timings[TimingType::DECOMPOSE] += timer.timeIncrement(); // For debugging: write out region createScalarField @@ -945,24 +1289,114 @@ int main(int argc, char *argv[]) << nl << endl; - cellOrder = regionRenumber(renumberPtr(), mesh, cellToRegion); + CompactListList<label> regionCellOrder = + regionRenumber + ( + renumberPtr(), + mesh, + cellToRegion, + decomposePtr().nDomains() + ); + + cellOrder = regionCellOrder.values(); // Determine new to old face order with new cell numbering - faceOrder = getRegionFaceOrder - ( - mesh, - cellOrder, - cellToRegion - ); + if (useRegionFaceOrder) + { + faceOrder = getRegionFaceOrder(mesh, cellOrder, cellToRegion); + } + else + { + faceOrder = getFaceOrder(mesh, cellOrder); + } } else { - // Determines sorted back to original cell ordering - cellOrder = renumberPtr().renumber - ( - mesh, - mesh.cellCentres() - ); + if (doDecompose) + { + // Two-step renumbering. + // 1. decompose into regions (like decomposePar) + // 2. renumber each sub-region + + timer.resetTimeIncrement(); + + // Read decompositionMethod dictionary + IOdictionary decomposeDict + ( + IOobject::selectIO + ( + IOobject + ( + decompositionModel::canonicalName, + runTime.time().system(), + mesh.regionName(), // region (if non-default) + runTime, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + decompDictFile + ) + ); + + // No parallel communication + const bool oldParRun = UPstream::parRun(false); + + autoPtr<decompositionMethod> decomposePtr + = decompositionMethod::New(decomposeDict); + + labelList cellToRegion + ( + decomposePtr().decompose + ( + mesh, + mesh.cellCentres() + ) + ); + + timings[TimingType::DECOMPOSE] += timer.timeIncrement(); + + UPstream::parRun(oldParRun); // Restore parallel state + + CompactListList<label> regionCellOrder = + regionRenumber + ( + renumberPtr(), + mesh, + cellToRegion, + decomposePtr().nDomains() + ); + + cellOrder = regionCellOrder.values(); + + // HACK - retain partitioning information for possible use + // at a later stage + mesh.data().set + ( + "requested.partition-offsets", + regionCellOrder.offsets() + ); + } + else + { + // Determines sorted back to original cell ordering + + const auto& method = renumberPtr(); + + timer.resetTimeIncrement(); + + if (method.no_topology()) + { + cellOrder = method.renumber(mesh.nCells()); + } + else + { + cellOrder = method.renumber(mesh); + } + + timings[TimingType::RENUMBER] += timer.timeIncrement(); + } + if (sortCoupledFaceCells) { @@ -1003,11 +1437,11 @@ int main(int argc, char *argv[]) } } } - bndCells.setSize(nBndCells); - bndCellMap.setSize(nBndCells); + bndCells.resize(nBndCells); + bndCellMap.resize(nBndCells); // Sort - labelList order(sortedOrder(bndCellMap)); + labelList order(Foam::sortedOrder(bndCellMap)); // Redo newReverseCellOrder labelList newReverseCellOrder(mesh.nCells(), -1); @@ -1041,11 +1475,7 @@ int main(int argc, char *argv[]) // Determine new to old face order with new cell numbering - faceOrder = getFaceOrder - ( - mesh, - cellOrder // New to old cell - ); + faceOrder = getFaceOrder(mesh, cellOrder); } @@ -1228,21 +1658,24 @@ int main(int argc, char *argv[]) ); reduce(band, maxOp<label>()); reduce(profile, sumOp<scalar>()); - scalar rmsFrontwidth = Foam::sqrt - ( - returnReduce - ( - sumSqrIntersect, - sumOp<scalar>() - )/mesh.globalData().nTotalCells() - ); - Info<< "After renumbering :" << nl + Info<< "After renumbering"; + if (doDecompose) + { + Info<< " [values are misleading with -decompose option]"; + } + + Info<< nl << " band : " << band << nl << " profile : " << profile << nl; if (doFrontWidth) { + reduce(sumSqrIntersect, sumOp<scalar>()); + scalar rmsFrontwidth = Foam::sqrt + ( + sumSqrIntersect/mesh.globalData().nTotalCells() + ); Info<< " rms frontwidth : " << rmsFrontwidth << nl; } @@ -1306,113 +1739,211 @@ int main(int argc, char *argv[]) } - if (overwrite) + if (dryrun) { - mesh.setInstance(oldInstance); - } - else - { - mesh.setInstance(runTime.timeName()); - } + if (writeMaps) + { + fileName file = mesh.time().globalPath()/"renumberMesh"; + const word& regionDir = mesh.regionName(); - Info<< "Writing mesh to " << mesh.facesInstance() << endl; + if (!regionDir.empty()) + { + file += "_" + regionDir; + } - // Remove old procAddressing files - processorMeshes::removeFiles(mesh); + // VTK output + { + const vtk::vtuCells cells(mesh); - // Update refinement data - hexRef8Data refData - ( - IOobject - ( - "dummy", - mesh.facesInstance(), - polyMesh::meshSubDir, - mesh, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ) - ); - refData.updateMesh(map()); - refData.write(); + vtk::internalMeshWriter writer + ( + mesh, + cells, + file, + UPstream::parRun() + ); + + writer.writeGeometry(); + writer.beginCellData(); + writer.writeCellIDs(); + + labelList ids; + + if (UPstream::parRun()) + { + const label cellOffset = + mesh.globalData().globalMeshCellAddr().localStart(); + + ids.resize(mesh.nCells()); + std::transform + ( + map().cellMap().cbegin(), + map().cellMap().cend(), + ids.begin(), + [=](const label id) { return (id + cellOffset); } + ); + + writer.writeCellData("origCellID", ids); + writer.writeProcIDs(); + } + else + { + writer.writeCellData("origCellID", map().cellMap()); + + // Recover any partition information (in serial) + globalIndex partitionOffsets; + if + ( + mesh.data().readIfPresent + ( + "requested.partition-offsets", + partitionOffsets.offsets() + ) + ) + { + if (partitionOffsets.totalSize() != mesh.nCells()) + { + WarningInFunction + << "Requested partition total-size: " + << partitionOffsets.totalSize() + << " mesh total-size: " + << mesh.nCells() + << " ... ignoring" << endl; + + partitionOffsets.clear(); + } + } - // Update sets - topoSet::updateMesh(mesh.facesInstance(), map(), cellSets); - topoSet::updateMesh(mesh.facesInstance(), map(), faceSets); - topoSet::updateMesh(mesh.facesInstance(), map(), pointSets); + ids.resize(partitionOffsets.totalSize()); + + for (const label proci : partitionOffsets.allProcs()) + { + ids.slice(partitionOffsets.range(proci)) = proci; + } - mesh.write(); + if (!partitionOffsets.empty()) + { + writer.writeCellData("procID", ids); + } + } - if (writeMaps) + Info<< "Wrote renumbered mesh to " + << mesh.time().relativePath(writer.output()) + << " for visualization." + << endl; + } + } + } + else { - // For debugging: write out region - createScalarField - ( - mesh, - "origCellID", - map().cellMap() - )().write(); + timer.resetTimeIncrement(); - createScalarField - ( - mesh, - "cellID", - identity(mesh.nCells()) - )().write(); + if (overwrite) + { + mesh.setInstance(oldInstance); + } + else + { + mesh.setInstance(runTime.timeName()); + } - Info<< nl - << "Written current cellID and origCellID as volScalarField" - << " for use in postprocessing." << nl << endl; + Info<< "Writing mesh to " << mesh.facesInstance() << endl; + + // Remove old procAddressing files + processorMeshes::removeFiles(mesh); + + // Update refinement data - labelIOList + hexRef8Data refData ( IOobject ( - "cellMap", + "dummy", mesh.facesInstance(), polyMesh::meshSubDir, mesh, - IOobject::NO_READ, + (dryrun ? IOobject::NO_READ : IOobject::READ_IF_PRESENT), IOobject::NO_WRITE, IOobject::NO_REGISTER - ), - map().cellMap() - ).write(); + ) + ); + refData.updateMesh(map()); + refData.write(); - labelIOList - ( - IOobject + // Update sets + topoSet::updateMesh(mesh.facesInstance(), map(), cellSets); + topoSet::updateMesh(mesh.facesInstance(), map(), faceSets); + topoSet::updateMesh(mesh.facesInstance(), map(), pointSets); + + mesh.write(); + + timings[TimingType::WRITING] += timer.timeIncrement(); + + if (writeMaps) + { + // For debugging: write out region + createScalarField ( - "faceMap", - mesh.facesInstance(), - polyMesh::meshSubDir, mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - map().faceMap() - ).write(); + "origCellID", + map().cellMap() + )().write(); - labelIOList - ( - IOobject + createScalarField + ( + mesh, + "cellID", + identity(mesh.nCells()) + )().write(); + + Info<< nl + << "Wrote current cellID and origCellID as volScalarField" + << " for use in postprocessing." << nl << endl; + + IOobject meshMapIO ( - "pointMap", + "map-name", mesh.facesInstance(), polyMesh::meshSubDir, mesh, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER - ), - map().pointMap() - ).write(); + ); + + meshMapIO.resetHeader("cellMap"); + IOListRef<label>(meshMapIO, map().cellMap()).write(); + + meshMapIO.resetHeader("faceMap"); + IOListRef<label>(meshMapIO, map().faceMap()).write(); + + meshMapIO.resetHeader("pointMap"); + IOListRef<label>(meshMapIO, map().pointMap()).write(); + } + } + + // Cleanup loaded fields + while (!storedObjects.empty()) + { + storedObjects.back()->checkOut(); + storedObjects.pop_back(); } } + Info<< nl + << "Timings:" << nl + << " read mesh : " << timings[TimingType::READ_MESH] << nl + << " read fields : " << timings[TimingType::READ_FIELDS] << nl + << " decompose : " << timings[TimingType::DECOMPOSE] << nl + << " cell-cells : " << timings[TimingType::CELL_CELLS] << nl + << " renumber : " << timings[TimingType::RENUMBER] << nl + << " write : " << timings[TimingType::WRITING] << nl + << "TotalTime = " << timer.elapsedTime() << " s" << nl + << nl; + + runTime.printExecutionTime(Info); + Info<< "End\n" << endl; return 0; diff --git a/applications/utilities/mesh/manipulation/renumberMesh/subsetAdjacency.H b/applications/utilities/mesh/manipulation/renumberMesh/subsetAdjacency.H new file mode 100644 index 0000000000000000000000000000000000000000..0c098616cf2396faa4daa85f53bc0742157e0464 --- /dev/null +++ b/applications/utilities/mesh/manipulation/renumberMesh/subsetAdjacency.H @@ -0,0 +1,168 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM, distributed under GPL-3.0-or-later. + +Description + Subsetting of an adjacency matrix (as CompactListList). + Can be relocated elsewhere. + +\*---------------------------------------------------------------------------*/ + +#include "CompactListList.H" +#include "bitSet.H" +#include "ListOps.H" +#include "Map.H" + +namespace Foam +{ + +// Perform a subset of the adjacency matrix +CompactListList<label> subsetAdjacency +( + const bitSet& select, // could also be labelHashSet + const CompactListList<label>& input, + labelList& subMap +) +{ + // Corresponds to cellMap etc (the original selection) + subMap = select.sortedToc(); + + // Ensure that the subMap corresponds to a valid subset + { + label validSize = 0; + + const label nTotal = input.size(); + + forAllReverse(subMap, i) + { + if (subMap[i] < nTotal) + { + validSize = i + 1; + break; + } + } + + subMap.resize(validSize); + } + + + // Assumed to be sparse - use Map for reverse lookup + const Map<label> reverseMap(invertToMap(subMap)); + + + // Pass 1: determine the selected sub-sizes + labelList sizes(subMap.size(), Foam::zero{}); + + forAll(subMap, idx) + { + for (const label nbr : input[subMap[idx]]) + { + if + ( + select.test(nbr) + && reverseMap.contains(nbr) // extra consistency (paranoid) + ) + { + ++sizes[idx]; + } + } + } + + + CompactListList<label> output(sizes); + + // Reuse sizes as output offset into output.values() + sizes = labelList::subList(output.offsets(), output.size()); + labelList& values = output.values(); + + + // Pass 2: extract sub-adjacent matrix + + label newNbr = -1; + + forAll(subMap, idx) + { + for (const label nbr : input[subMap[idx]]) + { + if + ( + select.test(nbr) + && (newNbr = reverseMap.lookup(nbr, -1)) >= 0 + ) + { + values[sizes[idx]++] = newNbr; + } + } + } + + return output; +} + + +// Perform a subset of the adjacency matrix +CompactListList<label> subsetAdjacency +( + const labelRange& slice, + const CompactListList<label>& input, + labelList& subMap +) +{ + // Ensure that the selection corresponds to a valid subset + const labelRange select = slice.subset0(input.size()); + + // Corresponds to cellMap etc (the original selection) + subMap = Foam::identity(select); + + + // Pass 1: determine the selected sub-sizes + labelList sizes(subMap.size(), Foam::zero{}); + + forAll(subMap, idx) + { + for (const label nbr : input[subMap[idx]]) + { + if (select.contains(nbr)) + { + ++sizes[idx]; + } + } + } + + + CompactListList<label> output(sizes); + + // Reuse sizes as output offset into output.values() + sizes = labelList::subList(output.offsets(), output.size()); + labelList& values = output.values(); + + + // Pass 2: extract sub-adjacent matrix + + const label localOffset = select.start(); + + forAll(subMap, idx) + { + for (const label nbr : input[subMap[idx]]) + { + if (select.contains(nbr)) + { + values[sizes[idx]++] = nbr - localOffset; + } + } + } + + return output; +} + +} // End namespace Foam + + +// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C b/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C index 2106a2b1cf99423ca71a0372bf92b06673fa5bbd..0d6711cbf2d20ebfc3e78522b735360e344f6d9d 100644 --- a/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C +++ b/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -153,8 +153,8 @@ int main(int argc, char *argv[]) points = transform(rotT, points); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing points into directory " << runTime.relativePath(points.path()) << nl diff --git a/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C b/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C index f15e24dc09bc2d5d03b9ab9531ff9f83fa87b010..4c5c61e79cec9b4b92ac5455eb1a2333da740f8e 100644 --- a/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C +++ b/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C @@ -62,12 +62,13 @@ using namespace Foam; int main(int argc, char *argv[]) { + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( "Add point/face/cell Zones from similarly named point/face/cell Sets" ); - timeSelector::addOptions(true, false); // constant(true), zero(false) argList::addBoolOption ( "noFlipMap", @@ -75,14 +76,13 @@ int main(int argc, char *argv[]) ); #include "addRegionOption.H" - #include "addTimeOptions.H" #include "setRootCase.H" #include "createTime.H" const bool noFlipMap = args.found("noFlipMap"); - // Get times list - (void)timeSelector::selectIfPresent(runTime, args); + // Allow override of time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); #include "createNamedPolyMesh.H" diff --git a/applications/utilities/mesh/manipulation/singleCellMesh/singleCellMesh.C b/applications/utilities/mesh/manipulation/singleCellMesh/singleCellMesh.C index 6f132837bb6c2dfbfbc7e7f9c9e9bed103603acb..c049f3b9265c840a5434fb8a22e565e586853567 100644 --- a/applications/utilities/mesh/manipulation/singleCellMesh/singleCellMesh.C +++ b/applications/utilities/mesh/manipulation/singleCellMesh/singleCellMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -53,26 +53,33 @@ using namespace Foam; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Name of region to create -const string singleCellName = "singleCell"; +const word singleCellName = "singleCell"; template<class GeoField> -void interpolateFields +wordList interpolateFields ( - const singleCellFvMesh& scMesh, + const singleCellFvMesh& subsetter, const PtrList<GeoField>& flds ) { + wordList names(flds.size()); + forAll(flds, i) { - tmp<GeoField> scFld = scMesh.interpolate(flds[i]); - GeoField* scFldPtr = scFld.ptr(); - scFldPtr->writeOpt(IOobject::AUTO_WRITE); - scFldPtr->store(); + GeoField* subFld = subsetter.interpolate(flds[i]).ptr(); + + subFld->writeOpt(IOobject::AUTO_WRITE); + subFld->store(); + + names[i] = subFld->name(); } + + return names; } +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // int main(int argc, char *argv[]) { @@ -94,7 +101,7 @@ int main(int argc, char *argv[]) if (regionName == singleCellName) { FatalErrorInFunction - << "Cannot convert region " << singleCellName + << "Cannot convert region " << regionName << " since result would overwrite it. Please rename your region." << exit(FatalError); } @@ -111,7 +118,8 @@ int main(int argc, char *argv[]) mesh.pointsInstance(), runTime, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::NO_REGISTER ), mesh ) @@ -131,18 +139,27 @@ int main(int argc, char *argv[]) } - forAll(timeDirs, timeI) + // List of stored objects to clear prior to reading + DynamicList<word> storedObjects; + + forAll(timeDirs, timei) { - runTime.setTime(timeDirs[timeI], timeI); + runTime.setTime(timeDirs[timei], timei); Info<< nl << "Time = " << runTime.timeName() << endl; + // Purge any previously interpolated fields + if (!storedObjects.empty()) + { + static_cast<objectRegistry&>(scMesh()).erase(storedObjects); + storedObjects.clear(); + } // Check for new mesh if (mesh.readUpdate() != polyMesh::UNCHANGED) { Info<< "Detected changed mesh. Recreating singleCell mesh." << endl; - scMesh.clear(); // remove any registered objects + scMesh.reset(nullptr); // first free any stored objects scMesh.reset ( new singleCellFvMesh @@ -153,43 +170,37 @@ int main(int argc, char *argv[]) mesh.pointsInstance(), runTime, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::NO_REGISTER ), mesh ) ); } - // Read objects in time directory IOobjectList objects(mesh, runTime.timeName()); + storedObjects.reserve(objects.size()); + + // Read fvMesh fields, map and store the interpolated fields + #define doLocalCode(GeoField) \ + { \ + PtrList<GeoField> flds; \ + ReadFields(mesh, objects, flds); \ + storedObjects.push_back(interpolateFields(scMesh(), flds)); \ + } - // Read vol fields. - PtrList<volScalarField> vsFlds; - ReadFields(mesh, objects, vsFlds); - - PtrList<volVectorField> vvFlds; - ReadFields(mesh, objects, vvFlds); - - PtrList<volSphericalTensorField> vstFlds; - ReadFields(mesh, objects, vstFlds); - - PtrList<volSymmTensorField> vsymtFlds; - ReadFields(mesh, objects, vsymtFlds); - - PtrList<volTensorField> vtFlds; - ReadFields(mesh, objects, vtFlds); - - // Map and store the fields on the scMesh. - interpolateFields(scMesh(), vsFlds); - interpolateFields(scMesh(), vvFlds); - interpolateFields(scMesh(), vstFlds); - interpolateFields(scMesh(), vsymtFlds); - interpolateFields(scMesh(), vtFlds); + doLocalCode(volScalarField); + doLocalCode(volVectorField); + doLocalCode(volSphericalTensorField); + doLocalCode(volSymmTensorField); + doLocalCode(volTensorField); + #undef doLocalCode // Write - Info<< "Writing mesh to time " << runTime.timeName() << endl; + Info<< "Writing " << singleCellName + << " mesh/fields to time " << runTime.timeName() << endl; scMesh().write(); } diff --git a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C index 45941574625538b8c9edf190d85ba92c2203e7a4..64c0b0ef341c0acbadd2d3cf98b447c96ecdcf34 100644 --- a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C +++ b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -295,9 +295,7 @@ void addToInterface else { // Create new interface of size 1. - Map<label> zoneToSize; - zoneToSize.insert(zoneID, 1); - regionsToSize.insert(interface, zoneToSize); + regionsToSize(interface).insert(zoneID, 1); } } @@ -376,16 +374,15 @@ void getInterfaceSizes } - if (Pstream::parRun()) + if (UPstream::parRun()) { - if (Pstream::master()) + if (UPstream::master()) { // Receive and add to my sizes - for (const int slave : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromSlave(Pstream::commsTypes::blocking, slave); - - EdgeMap<Map<label>> slaveSizes(fromSlave); + EdgeMap<Map<label>> slaveSizes; + IPstream::recv(slaveSizes, proci); forAllConstIters(slaveSizes, slaveIter) { @@ -423,15 +420,8 @@ void getInterfaceSizes } else { - // Send to master - { - OPstream toMaster - ( - Pstream::commsTypes::blocking, - Pstream::masterNo() - ); - toMaster << regionsToSize; - } + // send to master + OPstream::send(regionsToSize, UPstream::masterNo()); } } @@ -484,18 +474,10 @@ void getInterfaceSizes zoneName + "_" + name1 + "_to_" + name0 ); } + interfaceSizes[nInterfaces] = infoIter(); + regionsToInterface(e).insert(zoneID, nInterfaces); - if (regionsToInterface.found(e)) - { - regionsToInterface[e].insert(zoneID, nInterfaces); - } - else - { - Map<label> zoneAndInterface; - zoneAndInterface.insert(zoneID, nInterfaces); - regionsToInterface.insert(e, zoneAndInterface); - } nInterfaces++; } } diff --git a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C index 15dd2c30435eae153633c06de9a373c1fb7534b9..8f0ea89dc24bc7791ab81c707594d777f10e2f0b 100644 --- a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C +++ b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -440,8 +440,8 @@ int main(int argc, char *argv[]) //PtrList<surfaceTensorField> surfaceTensorFields; //ReadFields(mesh, objects, surfaceTensorFields); - // Increase precision for output mesh points - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); polyTopoChanger stitcher(mesh, IOobject::NO_READ); diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C index b6ef76dff0a1414220f649388ac72381dce82a8c..cb42574fffeda827b1652ce9d7f97773beaad20a 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C +++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C @@ -240,9 +240,9 @@ int main(int argc, char *argv[]) // Read set construct info from dictionary List<namedDictionary> actionEntries(topoSetDict.lookup("actions")); - forAll(timeDirs, timeI) + forAll(timeDirs, timei) { - runTime.setTime(timeDirs[timeI], timeI); + runTime.setTime(timeDirs[timei], timei); Info<< "Time = " << runTime.timeName() << endl; // Optionally re-read mesh diff --git a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C index c339fde8518f520a4615ef5cb0a084ef0e483f4e..6f2777d61f40fc4220274fea24c9ea840e515211 100644 --- a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C +++ b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C @@ -6,7 +6,8 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. + Copyright (C) 2024 Haakan Nilsson ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,6 +72,9 @@ Usage The any or all of the three options may be specified and are processed in the above order. + -cylToCart (originVector axisVector directionVector) + Tranform cylindrical coordinates to cartesian coordinates + With -rotateFields (in combination with -rotate/yawPitchRoll/rollPitchYaw) it will also read & transform vector & tensor fields. @@ -93,6 +97,7 @@ Note #include "transformGeometricField.H" #include "axisAngleRotation.H" #include "EulerCoordinateRotation.H" +#include "cylindricalCS.H" using namespace Foam; using namespace Foam::coordinateRotations; @@ -326,6 +331,13 @@ int main(int argc, char *argv[]) "Scale by the specified amount - Eg, for uniform [mm] to [m] scaling " "use either '(0.001 0.001 0.001)' or simply '0.001'" ); + argList::addOption + ( + "cylToCart", + "(originVec axisVec directionVec)", + "Tranform cylindrical coordinates to cartesian coordinates" + ); + // Compatibility with surfaceTransformPoints argList::addOptionCompat("scale", {"write-scale", 0}); @@ -348,7 +360,8 @@ int main(int argc, char *argv[]) "rotate-z", "rollPitchYaw", "yawPitchRoll", - "scale" + "scale", + "cylToCart" }); if (!args.count(operationNames)) @@ -552,9 +565,25 @@ int main(int argc, char *argv[]) // Output scaling applyScaling(points, getScalingOpt("scale", args)); + if (args.found("cylToCart")) + { + vectorField n1n2(args.lookup("cylToCart")()); + n1n2[1].normalise(); + n1n2[2].normalise(); + + cylindricalCS ccs + ( + "ccs", + n1n2[0], + n1n2[1], + n1n2[2] + ); + + points = ccs.globalPosition(points); + } - // Set the precision of the points data to 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); Info<< "Writing points into directory " << runTime.relativePath(points.path()) << nl diff --git a/applications/utilities/miscellaneous/foamDictionary/foamDictionary.C b/applications/utilities/miscellaneous/foamDictionary/foamDictionary.C index 9b2a97bbedeb01af97a3afa1f22aef3286216ba4..35392b2ef5ca11250ea22d161763d2bf671212b3 100644 --- a/applications/utilities/miscellaneous/foamDictionary/foamDictionary.C +++ b/applications/utilities/miscellaneous/foamDictionary/foamDictionary.C @@ -368,7 +368,7 @@ int main(int argc, char *argv[]) const auto dictFileName = args.get<fileName>(1); - autoPtr<IFstream> dictFile(new IFstream(dictFileName)); + auto dictFile = autoPtr<IFstream>::New(dictFileName); if (!dictFile().good()) { FatalErrorInFunction @@ -549,16 +549,17 @@ int main(int argc, char *argv[]) { Info<< finder.dict(); } - else if (finder.ref().isStream()) + else if (finder.isStream()) { - bool addSep = false; + bool separator = false; - const tokenList& tokens = finder.ref().stream(); - - for (const token& tok : tokens) + for (const token& tok : finder.stream()) { - if (addSep) Info<< token::SPACE; - addSep = true; + if (separator) + { + Info<< token::SPACE; + } + separator = true; Info<< tok; } Info<< endl; diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C index 7676ec50d168e6eb67f67c2eae44704351a1e227..1309cac153b088a937807cbba93348489cacf185 100644 --- a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C +++ b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C @@ -173,7 +173,7 @@ namespace Foam // Uses polyMesh/fvMesh meshSubDir by default autoPtr<labelIOList> procAddressing ( - const fvMesh& procMesh, + const objectRegistry& procRegistry, const word& name, const word& instance, const word& local = fvMesh::meshSubDir @@ -186,7 +186,7 @@ autoPtr<labelIOList> procAddressing name, instance, local, - procMesh, + procRegistry, IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -199,13 +199,13 @@ autoPtr<labelIOList> procAddressing // Uses the finiteArea meshSubDir autoPtr<labelIOList> faProcAddressing ( - const fvMesh& procMesh, + const objectRegistry& procRegistry, const word& name, const word& instance, const word& local = faMesh::meshSubDir ) { - return procAddressing(procMesh, name, instance, local); + return procAddressing(procRegistry, name, instance, local); } @@ -797,11 +797,22 @@ int main(int argc, char *argv[]) // Field objects at this time IOobjectList objects; + IOobjectList faObjects; if (doDecompFields) { + // List of volume mesh objects for this instance objects = IOobjectList(mesh, runTime.timeName()); + // List of area mesh objects (assuming single region) + faObjects = IOobjectList + ( + mesh.time(), + runTime.timeName(), + faMesh::dbDir(mesh, word::null), + IOobjectOption::NO_REGISTER + ); + // Ignore generated fields: (cellDist) objects.remove("cellDist"); } @@ -810,12 +821,15 @@ int main(int argc, char *argv[]) autoPtr<faMeshDecomposition> faMeshDecompPtr; if (doFiniteArea) { + const word boundaryInst = + mesh.time().findInstance(mesh.meshDir(), "boundary"); + IOobject io ( "faBoundary", - mesh.time().findInstance(mesh.meshDir(), "boundary"), - faMesh::meshSubDir, - mesh, + boundaryInst, + faMesh::meshDir(mesh, word::null), + mesh.time(), IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -1225,7 +1239,7 @@ int main(int argc, char *argv[]) if (doDecompFields) { - areaFieldCache.readAllFields(aMesh, objects); + areaFieldCache.readAllFields(aMesh, faObjects); } const label nAreaFields = areaFieldCache.size(); @@ -1293,7 +1307,7 @@ int main(int argc, char *argv[]) autoPtr<labelIOList> tfaceProcAddr = faProcAddressing ( - procFvMesh, + procMesh, "faceProcAddressing", runTime.constant() ); @@ -1302,7 +1316,7 @@ int main(int argc, char *argv[]) autoPtr<labelIOList> tboundaryProcAddr = faProcAddressing ( - procFvMesh, + procMesh, "boundaryProcAddressing", runTime.constant() ); @@ -1311,7 +1325,7 @@ int main(int argc, char *argv[]) autoPtr<labelIOList> tedgeProcAddr = faProcAddressing ( - procFvMesh, + procMesh, "edgeProcAddressing", runTime.constant() ); diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C index 44526285c78180712a7506a139d9757fe96bbf20..2158e2a19e45b638270f05a9d76332919b247db2 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -735,8 +735,8 @@ bool Foam::domainDecomposition::writeDecomposition(const bool decomposeSets) } } - // Set the precision of the points data to be min 10 - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); procMesh.write(); diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H index af1f509fb6d9b52ecc7475c509a88f88fcd5e84e..8b16e629aaf9ecfccb58800d17025e92e3f38f53 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H @@ -132,9 +132,6 @@ class domainDecomposition labelList& elementToZone ); - //- Append single element to list - static void append(labelList&, const label); - //- Add face to inter-processor patch void addInterProcFace ( diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRun.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRun.C index 36d04152d7c6a1a4f855b36bc26b2675ca59802b..af5cfeca98b0416d53fa2472f6a648441653c95f 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRun.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRun.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -112,15 +112,9 @@ void Foam::domainDecompositionDryRun::execute decompositionMethod& method = model.decomposer(); + // Local mesh connectivity CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh_, - identity(mesh_.nCells()), - mesh_.nCells(), - false, // false = local only - cellCells - ); + globalMeshData::calcCellCells(mesh_, cellCells); labelList cellToProc = method.decompose(mesh_, cellWeights); diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRunWrite.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRunWrite.C index 56924ebad3a65df4038f9af4c5ac0e1df8402599..86abe225627a95554d0613e83d9201f09c64a5d2 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRunWrite.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDryRunWrite.C @@ -83,6 +83,7 @@ void Foam::domainDecompositionDryRun::writeVTK writer.writeGeometry(); writer.beginCellData(); writer.writeCellData("procID", cellToProc); + writer.writeCellIDs(); Info<< "Wrote decomposition to " << this->mesh().time().relativePath(writer.output()) diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C index 904adb05e321e974e1135d1211ce90bba5c7da9f..964df9248dd57bea051cca152db0086cfb1585c8 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C @@ -39,14 +39,6 @@ Description // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::domainDecomposition::append(labelList& lst, const label elem) -{ - label sz = lst.size(); - lst.setSize(sz+1); - lst[sz] = elem; -} - - void Foam::domainDecomposition::addInterProcFace ( const label facei, @@ -354,9 +346,8 @@ void Foam::domainDecomposition::decomposeMesh() procFaceAddressing_[proci].size(); // Add size as last element to substarts and transfer - append + subPatchStarts[proci][interPatch].append ( - subPatchStarts[proci][interPatch], curInterPatchFaces[interPatch].size() ); procProcessorPatchSubPatchIDs_[proci][i].transfer diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionTemplates.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionTemplates.C index 4dc857b7e3f2b40b5e87b44b82017962a67248c3..d6d1a971316a734e21a7e6dfbcb2b3e7c4d38f55 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionTemplates.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionTemplates.C @@ -103,8 +103,8 @@ void Foam::domainDecomposition::processInterCyclics if (interPatchFaces[proci][interI].size() > oldSz) { // Added faces to this interface. Add an entry - append(subPatchIDs[proci][interI], patchi); - append(subPatchStarts[proci][interI], oldSz); + subPatchIDs[proci][interI].append(patchi); + subPatchStarts[proci][interI].append(oldSz); } } } diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C index 0dd1078dd0a5d36192d074761d54f62d7d3c2358..4d2910373d9c06e24d5444dee3ef0ff928fbe6c3 100644 --- a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C +++ b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C @@ -382,9 +382,25 @@ int main(int argc, char *argv[]) IOobjectList objects ( procMeshes.meshes()[0], - databases[0].timeName() + databases[0].timeName(), + IOobjectOption::NO_REGISTER ); + IOobjectList faObjects; + + if (doFiniteArea && doFields) + { + // List of area mesh objects (assuming single region) + // - scan on processor0 + faObjects = IOobjectList + ( + procMeshes.meshes()[0], + databases[0].timeName(), + faMesh::dbDir(word::null), // local relative to mesh + IOobjectOption::NO_REGISTER + ); + } + if (doFields) { // If there are any FV fields, reconstruct them @@ -545,12 +561,12 @@ int main(int argc, char *argv[]) } else if ( - objects.count<areaScalarField>() - || objects.count<areaVectorField>() - || objects.count<areaSphericalTensorField>() - || objects.count<areaSymmTensorField>() - || objects.count<areaTensorField>() - || objects.count<edgeScalarField>() + faObjects.count<areaScalarField>() + || faObjects.count<areaVectorField>() + || faObjects.count<areaSphericalTensorField>() + || faObjects.count<areaSymmTensorField>() + || faObjects.count<areaTensorField>() + || faObjects.count<edgeScalarField>() ) { Info << "Reconstructing FA fields" << nl << endl; @@ -568,7 +584,7 @@ int main(int argc, char *argv[]) procFaMeshes.boundaryProcAddressing() ); - reconstructor.reconstructAllFields(objects); + reconstructor.reconstructAllFields(faObjects); } else { diff --git a/applications/utilities/parallelProcessing/reconstructParMesh/reconstructParMesh.C b/applications/utilities/parallelProcessing/reconstructParMesh/reconstructParMesh.C index eb844f5779b6246d041d9e63a3e76600c5fa2729..c77a2742a22609f9ae1313edd1a42ffa6abe997b 100644 --- a/applications/utilities/parallelProcessing/reconstructParMesh/reconstructParMesh.C +++ b/applications/utilities/parallelProcessing/reconstructParMesh/reconstructParMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -314,11 +314,7 @@ boundBox procBounds { fileName pointsInstance ( - procDb.findInstance - ( - polyMesh::meshDir(regionName), - "points" - ) + procDb.findInstance(polyMesh::meshDir(regionName), "points") ); if (pointsInstance != procDb.timeName()) @@ -343,11 +339,7 @@ boundBox procBounds IOobject ( "points", - procDb.findInstance - ( - polyMesh::meshDir(regionName), - "points" - ), + pointsInstance, polyMesh::meshDir(regionName), procDb, IOobject::MUST_READ, @@ -657,7 +649,7 @@ int main(int argc, char *argv[]) if (fullMatch || procMatch) { const scalar writeTol = - Foam::pow(10.0, -scalar(IOstream::defaultPrecision())); + std::pow(scalar(10), -scalar(IOstream::defaultPrecision())); Info<< "Merge tolerance : " << mergeTol << nl << "Write tolerance : " << writeTol << endl; diff --git a/applications/utilities/parallelProcessing/redistributePar/loadOrCreateMesh.C b/applications/utilities/parallelProcessing/redistributePar/loadOrCreateMesh.C index 4b173340d366c6981629129c4f8beec3758d1a28..3e94d450da8c96e82912d3e530313b3332a8354c 100644 --- a/applications/utilities/parallelProcessing/redistributePar/loadOrCreateMesh.C +++ b/applications/utilities/parallelProcessing/redistributePar/loadOrCreateMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,6 +31,7 @@ License #include "Pstream.H" #include "OSspecific.H" #include "decomposedBlockData.H" +#include "IFstream.H" // * * * * * * * * * * * * * * * Global Functions * * * * * * * * * * * * * // @@ -161,19 +162,54 @@ Foam::boolList Foam::haveMeshFile ( handler.filePath(runTime.path()/meshPath/meshFile) ); - bool found = handler.isFile(fName); if (returnReduceAnd(found)) // worldComm { - autoPtr<ISstream> isPtr(fileHandler().NewIFstream(fName)); - if (isPtr && isPtr->good()) + // Bit tricky: avoid having all slaves open file since this involves + // reading it on master and broadcasting it. This fails if file > 2G. + // So instead only read on master + + bool isCollated = false; + + // Note: can test only world-master. Since even host-collated will have + // same file format type for all processors + if (UPstream::master(UPstream::worldComm)) { - auto& is = *isPtr; + const bool oldParRun = UPstream::parRun(false); - IOobject io(meshFile, meshPath, runTime); - io.readHeader(is); + IFstream is(fName); + if (is.good()) + { + IOobject io(meshFile, meshPath, runTime); + io.readHeader(is); + + isCollated = decomposedBlockData::isCollatedType(io); + } + UPstream::parRun(oldParRun); + } + Pstream::broadcast(isCollated); //UPstream::worldComm + + + // Collect block-number in individual filenames (might differ + // on different processors) + if (isCollated) + { + const label nProcs = UPstream::nProcs(fileHandler().comm()); + const label myProcNo = UPstream::myProcNo(fileHandler().comm()); + + // Collect file names on master of local communicator + const fileNameList fNames + ( + Pstream::listGatherValues + ( + fName, + fileHandler().comm(), + UPstream::msgType() + ) + ); - if (decomposedBlockData::isCollatedType(io)) + // Collect local block number + label myBlockNumber = -1; { fileName path, pDir, local; procRangeType group; @@ -188,7 +224,6 @@ Foam::boolList Foam::haveMeshFile numProcs ); - label myBlockNumber = 0; if (proci == -1 && group.empty()) { // 'processorsXXX' format so contains all ranks @@ -199,12 +234,53 @@ Foam::boolList Foam::haveMeshFile { // 'processorsXXX_n-m' format so check for the // relative rank - myBlockNumber = UPstream::myProcNo(fileHandler().comm()); + myBlockNumber = myProcNo; } + } + const labelList myBlockNumbers + ( + Pstream::listGatherValues + ( + myBlockNumber, + fileHandler().comm(), + UPstream::msgType() + ) + ); + + + + // Determine for all whether the filename exists in the collated + // file. + boolList allFound(nProcs, false); + + if (UPstream::master(fileHandler().comm())) + { + // Store nBlocks and index of file that was used for nBlocks + label nBlocks = -1; + label blockRanki = -1; + forAll(fNames, ranki) + { + if + ( + blockRanki == -1 + || (fNames[ranki] != fNames[blockRanki]) + ) + { + blockRanki = ranki; + IFstream is(fNames[ranki]); + nBlocks = decomposedBlockData::getNumBlocks(is); + } - // Check if block for the local rank is inside file - found = decomposedBlockData::hasBlock(is, myBlockNumber); + allFound[ranki] = (myBlockNumbers[ranki] < nBlocks); + } } + + found = Pstream::listScatterValues + ( + allFound, + fileHandler().comm(), + UPstream::msgType() + ); } } #endif diff --git a/applications/utilities/parallelProcessing/redistributePar/parFvFieldDistributorTemplates.C b/applications/utilities/parallelProcessing/redistributePar/parFvFieldDistributorTemplates.C index 2f65cef903786488e500d2b5521fc5861bf02dfb..97c5c3103ac6dcb1926c2a9dd51da00732cb5031 100644 --- a/applications/utilities/parallelProcessing/redistributePar/parFvFieldDistributorTemplates.C +++ b/applications/utilities/parallelProcessing/redistributePar/parFvFieldDistributorTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,9 +30,8 @@ License #include "Time.H" #include "PtrList.H" #include "fvPatchFields.H" +#include "fvsPatchFields.H" #include "emptyFvPatch.H" -#include "emptyFvPatchField.H" -#include "emptyFvsPatchField.H" #include "IOobjectList.H" #include "mapDistributePolyMesh.H" #include "processorFvPatch.H" @@ -123,15 +122,19 @@ Foam::parFvFieldDistributor::distributeField { if (patchFaceMaps_.set(patchi)) { - // Clone local patch field - oldPatchFields.set(patchi, bfld[patchi].clone()); - distributedFvPatchFieldMapper mapper ( labelUList::null(), patchFaceMaps_[patchi] ); + // Clone local patch field + oldPatchFields.set + ( + patchi, + bfld[patchi].clone(fld.internalField()) + ); + // Map into local copy oldPatchFields[patchi].autoMap(mapper); } @@ -159,7 +162,7 @@ Foam::parFvFieldDistributor::distributeField ( pfld, tgtMesh_.boundary()[patchi], - DimensionedField<Type, volMesh>::null(), + fvPatchField<Type>::Internal::null(), dummyMapper ) ); @@ -178,9 +181,9 @@ Foam::parFvFieldDistributor::distributeField patchi, fvPatchField<Type>::New ( - emptyFvPatchField<Type>::typeName, + fvPatchFieldBase::emptyType(), tgtMesh_.boundary()[patchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -268,15 +271,19 @@ Foam::parFvFieldDistributor::distributeField { if (patchFaceMaps_.set(patchi)) { - // Clone local patch field - oldPatchFields.set(patchi, bfld[patchi].clone()); - distributedFvPatchFieldMapper mapper ( labelUList::null(), patchFaceMaps_[patchi] ); + // Clone local patch field + oldPatchFields.set + ( + patchi, + bfld[patchi].clone(fld.internalField()) + ); + // Map into local copy oldPatchFields[patchi].autoMap(mapper); } @@ -303,7 +310,7 @@ Foam::parFvFieldDistributor::distributeField ( pfld, tgtMesh_.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null(), + fvsPatchField<Type>::Internal::null(), dummyMapper ) ); @@ -321,9 +328,9 @@ Foam::parFvFieldDistributor::distributeField patchi, fvsPatchField<Type>::New ( - emptyFvsPatchField<Type>::typeName, + fvsPatchFieldBase::emptyType(), tgtMesh_.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null() + fvsPatchField<Type>::Internal::null() ) ); } diff --git a/applications/utilities/parallelProcessing/redistributePar/parLagrangianDistributor.C b/applications/utilities/parallelProcessing/redistributePar/parLagrangianDistributor.C index de9968fbfb0110408cd650595d3fbbf0279372c7..97c5b0cc5c96d0cab932e4a6e11f7f4a68d23628 100644 --- a/applications/utilities/parallelProcessing/redistributePar/parLagrangianDistributor.C +++ b/applications/utilities/parallelProcessing/redistributePar/parLagrangianDistributor.C @@ -184,7 +184,7 @@ Foam::parLagrangianDistributor::distributeLagrangianPositions labelListList sendMap; // Transfer buffers - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; { // List of lists of particles to be transferred for all of the diff --git a/applications/utilities/parallelProcessing/redistributePar/parPointFieldDistributorTemplates.C b/applications/utilities/parallelProcessing/redistributePar/parPointFieldDistributorTemplates.C index 4c1964f076870709f0ed77ce3d7d339f40914b42..f1d1361b29093f5339ca08b40ca118d85558de95 100644 --- a/applications/utilities/parallelProcessing/redistributePar/parPointFieldDistributorTemplates.C +++ b/applications/utilities/parallelProcessing/redistributePar/parPointFieldDistributorTemplates.C @@ -26,11 +26,11 @@ License \*---------------------------------------------------------------------------*/ #include "Time.H" -#include "emptyPointPatchField.H" #include "IOobjectList.H" #include "mapDistributePolyMesh.H" #include "distributedFieldMapper.H" #include "distributedPointPatchFieldMapper.H" +#include "emptyPointPatch.H" #include "pointFields.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -108,7 +108,7 @@ Foam::parPointFieldDistributor::distributeField ( bfld[patchi], tgtMesh.boundary()[patchi], // pointPatch - DimensionedField<Type, pointMesh>::null(), + pointPatchField<Type>::Internal::null(), mapper ) ); @@ -122,7 +122,7 @@ Foam::parPointFieldDistributor::distributeField // bfld[patchi].clone // ( // tgtMesh.boundary()[patchi], - // DimensionedField<Type, pointMesh>::null(), + // pointPatchField<Type>::Internal::null(), // mapper // ) //); @@ -140,9 +140,9 @@ Foam::parPointFieldDistributor::distributeField patchi, pointPatchField<Type>::New ( - emptyPointPatchField<Type>::typeName, + pointPatchFieldBase::emptyType(), tgtMesh.boundary()[patchi], - DimensionedField<Type, pointMesh>::null() + pointPatchField<Type>::Internal::null() ) ); } diff --git a/applications/utilities/parallelProcessing/redistributePar/passivePositionParticle.H b/applications/utilities/parallelProcessing/redistributePar/passivePositionParticle.H index 394f64e4909ea03ca9c8c291a0fed17c01b64168..89821165c3783947b1e6fc9c4a60394da8a28d11 100644 --- a/applications/utilities/parallelProcessing/redistributePar/passivePositionParticle.H +++ b/applications/utilities/parallelProcessing/redistributePar/passivePositionParticle.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -100,10 +100,10 @@ public: cachedPosition_(p.cachedPosition_) {} - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new passivePositionParticle(*this)); + return particle::Clone(*this); } diff --git a/applications/utilities/parallelProcessing/redistributePar/redistributePar.C b/applications/utilities/parallelProcessing/redistributePar/redistributePar.C index 41c45095bbe2a07bce1f95e2c2def27d35c2c331..305ec95aca647db71b8c22fd6dd287d113b8b2d4 100644 --- a/applications/utilities/parallelProcessing/redistributePar/redistributePar.C +++ b/applications/utilities/parallelProcessing/redistributePar/redistributePar.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -102,6 +102,7 @@ Usage #include "faMeshSubset.H" #include "faMeshTools.H" #include "faMeshDistributor.H" +#include "faMeshesRegistry.H" #include "parFaFieldDistributorCache.H" #include "redistributeLagrangian.H" @@ -906,12 +907,26 @@ autoPtr<mapDistributePolyMesh> redistributeAndWrite } + // If faMeshesRegistry exists, it is also owned by the polyMesh and will + // be destroyed by clearGeom() in fvMeshDistribute::distribute() + // + // Rescue faMeshesRegistry from destruction by temporarily moving + // it to be locally owned. + std::unique_ptr<faMeshesRegistry> faMeshesRegistry_saved + ( + faMeshesRegistry::Release(mesh) + ); + // Mesh distribution engine fvMeshDistribute distributor(mesh); // Do all the distribution of mesh and fields autoPtr<mapDistributePolyMesh> distMap = distributor.distribute(decomp); + // Restore ownership onto the polyMesh + faMeshesRegistry::Store(std::move(faMeshesRegistry_saved)); + + // Print some statistics InfoOrPout<< "After distribution:" << endl; printMeshData(mesh); @@ -951,8 +966,8 @@ autoPtr<mapDistributePolyMesh> redistributeAndWrite } - // Set the minimum write precision - IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + IOstream::minPrecision(10); if (!overwrite) @@ -1598,7 +1613,8 @@ int main(int argc, char *argv[]) ); const fileName areaMeshSubDir ( - polyMesh::regionName(regionName) / faMesh::meshSubDir + // Assume single-region area mesh + faMesh::meshDir(regionName, word::null) ); InfoOrPout @@ -2501,7 +2517,8 @@ int main(int argc, char *argv[]) ); const fileName areaMeshSubDir ( - polyMesh::regionName(regionName) / faMesh::meshSubDir + // Assume single-region area mesh + faMesh::meshDir(regionName, word::null) ); InfoOrPout diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/checkFieldAvailability.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/checkFieldAvailability.H index 2cb2c78530d5b73e1c0415ab8992ffce9de516b1..b9adb4990a9b590b3b0dae9dcbf3b0c0103d912a 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/checkFieldAvailability.H +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/checkFieldAvailability.H @@ -21,29 +21,38 @@ Requires // Initially all possible objects that are available at the final time List<wordHashSet> availableRegionObjectNames(meshes.size()); +List<wordHashSet> availableFaRegionObjectNames(meshes.size()); forAll(meshes, regioni) { const auto& mesh = meshes[regioni]; - IOobjectList objects(0); + IOobjectList objects; + IOobjectList faObjects; if (doConvertFields && !timeDirs.empty()) { + // List of volume mesh objects for this instance objects = IOobjectList(mesh, timeDirs.back().name()); - if (fieldSelector && !fieldSelector().empty()) - { - objects.filterObjects(fieldSelector()); - } + // List of area mesh objects (assuming single region) + faObjects = IOobjectList + ( + mesh.time(), + timeDirs.back().name(), + faMesh::dbDir(mesh, word::null), + IOobjectOption::NO_REGISTER + ); if (fieldSelector && !fieldSelector().empty()) { objects.filterObjects(fieldSelector()); + faObjects.filterObjects(fieldSelector()); } // Remove "*_0" restart fields objects.prune_0(); + faObjects.prune_0(); if (!doPointValues) { @@ -59,12 +68,38 @@ forAll(meshes, regioni) } } - wordList objectNames(objects.sortedNames()); + // Volume fields + if (!objects.empty()) + { + wordList objectNames(objects.sortedNames()); - // Check availability for all times... - checkData(mesh, timeDirs, objectNames); + // Check availability for all times... + checkData + ( + mesh.thisDb(), + timeDirs, + objectNames + ); - availableRegionObjectNames[regioni] = objectNames; + availableRegionObjectNames[regioni] = objectNames; + } + + // Area fields + if (!faObjects.empty()) + { + wordList objectNames(faObjects.sortedNames()); + + // Check availability for all times... (assuming single region) + checkData + ( + mesh.time(), + timeDirs, + objectNames, + faMesh::dbDir(mesh, word::null) + ); + + availableFaRegionObjectNames[regioni] = objectNames; + } } diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/convertAreaFields.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/convertAreaFields.H index 5f2ef2455f5a37dbb8223ee884d315477d227266..ad2cc771877e81e863e8a3f91b269f32ba99b16e 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/convertAreaFields.H +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/convertAreaFields.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -14,6 +14,8 @@ Description Code chunk for converting area fields included by foamToEnsight. + Possible objects to convert are given in faObjects + \*---------------------------------------------------------------------------*/ // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -23,7 +25,7 @@ if (doFiniteArea && ensFaCasePtr && ensFaMeshPtr) { Info<< " area field ("; - writeAllAreaFields(*ensFaCasePtr, *ensFaMeshPtr, objects); + writeAllAreaFields(*ensFaCasePtr, *ensFaMeshPtr, faObjects); Info<< " )" << nl; } diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C index d47e941ee097c369b7e488419031f6028c3b0a86..48a12613156d4089bcd6b36700f656e2368dd3c7 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C @@ -554,7 +554,8 @@ int main(int argc, char *argv[]) { autoPtr<ensightGeoFile> os = ensCase.newGeometry(hasMovingMesh); - ensMesh.write(os); + + ensMesh.write(os.ref()); } // finite-area @@ -562,7 +563,8 @@ int main(int argc, char *argv[]) { autoPtr<ensightGeoFile> os = ensFaCasePtr->newGeometry(hasMovingMesh); - ensFaMeshPtr->write(os); + + ensFaMeshPtr->write(os.ref()); } } @@ -577,6 +579,20 @@ int main(int argc, char *argv[]) // Volume, internal, point fields #include "convertVolumeFields.H" + // The finite-area objects at this time + IOobjectList faObjects; + + if (ensFaMeshPtr) + { + faObjects = + IOobjectList(ensFaMeshPtr->mesh(), runTime.timeName()); + + faObjects.filterObjects + ( + availableFaRegionObjectNames[regioni] + ); + } + // The finiteArea fields #include "convertAreaFields.H" diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/getTimeIndex.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/getTimeIndex.H index 5fa3c329c18163241556d44fbc7f5f5d822d0273..224ef692aa492500be195c99fb9d028a846355fe 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/getTimeIndex.H +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/getTimeIndex.H @@ -55,7 +55,7 @@ label timeIndex = 0; else { goodTimeIndex = false; - Info<< "skip ... missing entry " << io.objectPath() << endl; + Info<< "skip ... missing file: " << io.objectRelPath() << endl; } } diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.C index a9e92f80ad032d9769736f007d710930f9b4cd58..0d895f9e8a09bfd98d044e9ef73e6b29c0b805b6 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.C +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,9 +32,10 @@ License Foam::label Foam::checkData ( - const fvMesh& mesh, + const objectRegistry& obr, const instantList& timeDirs, - wordList& objectNames + wordList& objectNames, + const fileName& local ) { // Assume prune_0() was used prior to calling this @@ -43,6 +44,9 @@ Foam::label Foam::checkData for (const word& fieldName : objectNames) { + // // If prune_0() not previously used... + // if (objectNames.ends_with("_0")) continue; + bool good = false; for (const instant& inst : timeDirs) @@ -52,7 +56,8 @@ Foam::label Foam::checkData ( fieldName, inst.name(), - mesh, + local, + obr, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.H index eee09efd9ecb5334c77d1ecf6c40b6c11fad6682..716e5134f62e6f9d78063c39fa76f427684c57e9 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.H +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/readFields.H @@ -164,9 +164,10 @@ tmp<VolumeField<Type>> makeZeroGradientField // ignore fields that are not available for all time-steps label checkData ( - const fvMesh& mesh, + const objectRegistry& obr, const instantList& timeDirs, - wordList& objectNames + wordList& objectNames, + const fileName& local = fileName::null ); diff --git a/applications/utilities/postProcessing/dataConversion/foamToTetDualMesh/foamToTetDualMesh.C b/applications/utilities/postProcessing/dataConversion/foamToTetDualMesh/foamToTetDualMesh.C index 281f4d8aa1cfd43192be30f33de6815933e4eb1a..935b47a3dea8ae3dd3dc7e9f833e771708bc44f5 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToTetDualMesh/foamToTetDualMesh.C +++ b/applications/utilities/postProcessing/dataConversion/foamToTetDualMesh/foamToTetDualMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,6 +36,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "fvMesh.H" #include "volFields.H" #include "pointFields.H" @@ -145,20 +146,22 @@ void ReadAndMapFields int main(int argc, char *argv[]) { + argList::noFunctionObjects(); // Never use function objects + + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( "Convert polyMesh results to tetDualMesh" ); #include "addOverwriteOption.H" - #include "addTimeOptions.H" #include "setRootCase.H" #include "createTime.H" - // Get times list - instantList Times = runTime.times(); - #include "checkTimeOptions.H" - runTime.setTime(Times[startTime], startTime); + + // Set time from specified time options, or force start from Time=0 + timeSelector::setTimeIfPresent(runTime, args, true); // Read the mesh #include "createNamedMesh.H" diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/convertAreaFields.H b/applications/utilities/postProcessing/dataConversion/foamToVTK/convertAreaFields.H index 7d8f467ab7a779ba65480ed535be3d6018888935..766ffb7f6c54a9d439e142f766f5086cc3bff929 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/convertAreaFields.H +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/convertAreaFields.H @@ -29,7 +29,7 @@ if (doFiniteArea) autoPtr<faMesh> faMeshPtr; const label nAreaFields = - objects.count(stringListOps::foundOp<word>(fieldTypes::area)); + faObjects.count(stringListOps::foundOp<word>(fieldTypes::area)); if (nAreaFields || withMeshIds) { @@ -40,7 +40,7 @@ if (doFiniteArea) { const faMesh& areaMesh = faMeshPtr(); - reportFields::area(Info, objects); + reportFields::area(Info, faObjects); const auto& pp = faMeshPtr->patch(); @@ -97,7 +97,7 @@ if (doFiniteArea) ( writer, areaMesh, - objects, + faObjects, true // syncPar ); diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C index 3d69fd3595bd597f1cdb509748c632ef900858ca..ca7782f713edd916e67a981d5bf77fa2688cbdee 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -141,7 +141,7 @@ Note #include "pointSet.H" #include "HashOps.H" #include "regionProperties.H" -#include "stringListOps.H" +#include "stringListOps.H" // For stringListOps::findMatching() #include "Cloud.H" #include "readFields.H" @@ -780,21 +780,34 @@ int main(int argc, char *argv[]) } } - IOobjectList objects(0); + IOobjectList objects; + IOobjectList faObjects; if (doConvertFields) { - // List of objects for this time + // List of volume mesh objects for this instance objects = IOobjectList(meshProxy.baseMesh(), runTime.timeName()); + // List of area mesh objects (assuming single region) + faObjects = + IOobjectList + ( + runTime, + runTime.timeName(), + faMesh::dbDir(meshProxy.baseMesh(), word::null), + IOobjectOption::NO_REGISTER + ); + if (fieldSelector && !fieldSelector().empty()) { objects.filterObjects(fieldSelector()); + faObjects.filterObjects(fieldSelector()); } // Remove "*_0" restart fields objects.prune_0(); + faObjects.prune_0(); if (!doPointValues) { diff --git a/applications/utilities/postProcessing/lagrangian/particleTracks/particleTrackProperties b/applications/utilities/postProcessing/lagrangian/particleTracks/particleTrackProperties index afb12aece8e85f87471cca3471c70bddad8c3dfe..283d3b0a934a77f92df165764a4dd0612b2e071d 100644 --- a/applications/utilities/postProcessing/lagrangian/particleTracks/particleTrackProperties +++ b/applications/utilities/postProcessing/lagrangian/particleTracks/particleTrackProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/postProcessing/lumped/lumpedPointMovement/lumpedPointMovement.C b/applications/utilities/postProcessing/lumped/lumpedPointMovement/lumpedPointMovement.C index 659c02ccd4deacd0e3b3c89913c25e9f94bf5d3c..27078d8364b34bba5de9c701f3b5c5f2667f4599 100644 --- a/applications/utilities/postProcessing/lumped/lumpedPointMovement/lumpedPointMovement.C +++ b/applications/utilities/postProcessing/lumped/lumpedPointMovement/lumpedPointMovement.C @@ -353,7 +353,7 @@ int main(int argc, char *argv[]) #include "createTime.H" - runTime.setTime(instant(runTime.constant()), 0); + runTime.setTime(instant(0, runTime.constant()), 0); #include "createNamedMesh.H" diff --git a/applications/utilities/postProcessing/lumped/lumpedPointZones/lumpedPointZones.C b/applications/utilities/postProcessing/lumped/lumpedPointZones/lumpedPointZones.C index 09088046b311a6b0414e15768da84210f2d53ccd..28f2d836fd39fbf52cdd2b8eb066cc8d9422e1ed 100644 --- a/applications/utilities/postProcessing/lumped/lumpedPointZones/lumpedPointZones.C +++ b/applications/utilities/postProcessing/lumped/lumpedPointZones/lumpedPointZones.C @@ -106,7 +106,7 @@ int main(int argc, char *argv[]) } - runTime.setTime(instant(runTime.constant()), 0); + runTime.setTime(instant(0, runTime.constant()), 0); #include "createNamedMesh.H" diff --git a/applications/utilities/postProcessing/miscellaneous/createROMfields/readFields.H b/applications/utilities/postProcessing/miscellaneous/createROMfields/readFields.H index a1d345d1c8dbc0e6bc54eccd371bd10952337bbb..084d0c16bd56f57357c814b76d06e548ea78f61b 100644 --- a/applications/utilities/postProcessing/miscellaneous/createROMfields/readFields.H +++ b/applications/utilities/postProcessing/miscellaneous/createROMfields/readFields.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,7 +71,7 @@ class readFieldsHandler Log << " Reading " << io.name() << " (" << FieldType::typeName << ')' << endl; - mesh_.objectRegistry::store(new FieldType(io, mesh_)); + regIOobject::store(new FieldType(io, mesh_)); return true; } diff --git a/applications/utilities/preProcessing/PDR/pdrFields/obstacles/ObstaclesDict b/applications/utilities/preProcessing/PDR/pdrFields/obstacles/ObstaclesDict index 661b515e2d4bbb755992a5830f028e406ec11f4d..97245fc6c49c296cd69e12c856ca3e13b36d8956 100644 --- a/applications/utilities/preProcessing/PDR/pdrFields/obstacles/ObstaclesDict +++ b/applications/utilities/preProcessing/PDR/pdrFields/obstacles/ObstaclesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C index 6d46b060971bd00d290d77decd892cfaaac8013d..b72a1c41c4782305a4847ed8ae1166b5240a130b 100644 --- a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C +++ b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C @@ -80,7 +80,6 @@ Usage #include "IOobjectList.H" #include "IOPtrList.H" #include "volFields.H" -#include "stringListOps.H" #include "timeSelector.H" using namespace Foam; @@ -189,7 +188,7 @@ labelList findMatches const HashTable<wordList>& shortcuts, const wordList& shortcutNames, const wordList& thisKeys, - const keyType& key + const wordRe& key ) { labelList matches; @@ -197,20 +196,20 @@ labelList findMatches if (key.isPattern()) { // Wildcard match - matches = findStrings(key, thisKeys); + matches = wordRes::matching(key, thisKeys); } else if (shortcuts.size()) { // See if patchGroups expand to valid thisKeys - labelList indices = findStrings(key, shortcutNames); + labelList indices = wordRes::matching(key, shortcutNames); for (const label idx : indices) { const word& name = shortcutNames[idx]; const wordList& keys = shortcuts[name]; - forAll(keys, j) + for (const word& k : keys) { - const label index = thisKeys.find(keys[j]); + const label index = thisKeys.find(k); if (index != -1) { matches.append(index); diff --git a/applications/utilities/preProcessing/createViewFactors/Allwmake b/applications/utilities/preProcessing/createViewFactors/Allwmake new file mode 100755 index 0000000000000000000000000000000000000000..9de13a5b033475b4a416150305a0e8467984c408 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/Allwmake @@ -0,0 +1,11 @@ +#!/bin/sh +cd "${0%/*}" || exit # Run from this directory + + . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments + +#------------------------------------------------------------------------------ + +wmake $targetType viewFactorModels +wmake $targetType createViewFactors + +#------------------------------------------------------------------------------ diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..3f36ae84ca3c63749236d04150032f210a9ed0d2 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files @@ -0,0 +1,3 @@ +createViewFactors.C + +EXE = $(FOAM_APPBIN)/createViewFactors diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..b3a37ed5f268bb856302c8b378a031d3af218448 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options @@ -0,0 +1,10 @@ +EXE_INC = \ + -I../viewFactorModels/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude + +EXE_LIBS = \ + -lfileFormats \ + -lsurfMesh \ + -lmeshTools \ + -lfiniteVolume \ + -lviewFactorModels diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C b/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C new file mode 100644 index 0000000000000000000000000000000000000000..84ad369a99c67a71488945ea16268015ef015a6b --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C @@ -0,0 +1,165 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Application + createViewFactors + +Group + grpPreProcessingUtilities + +Description + Creates view factors to be used in the view-factor radiation model. + + Operands: + \table + Operand | Type | Location + input | dictionary | \<constant\>/viewFactorsDict + input | dictionary | \<constant\>/finalAgglom + output | scalarListList | \<constant\>/F + output | mapDistribute | \<constant\>/mapDist + output | labelListList | \<constant\>/globalFaceFaces + output | volScalarField | \<time\>/viewVectorField + output | OBJ | allVisibleFaces.obj + \endtable + + where the dictionaries mean: + \table + Dictionary | Description + viewFactorsDict | Main-control dictionary + finalAgglom | (Optional) Agglomeration addressing (from faceAgglomerate) + F | View factors (matrix) + mapDist | Map used for parallel running + globalFaceFaces | Face addressing + viewVectorField | View factors as a volume field + allVisibleFaces.obj | The visualisation of the rays + \endtable + +Usage + Minimal example in \c <constant>/viewFactorsDict: + \verbatim + // Inherited entries + raySearchEngine <word>; + agglomerate <bool>; + nRayPerFace <label>; + writeViewFactors <bool>; + writeRays <bool>; + ... + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + raySearchEngine | Ray search engine type | word | yes | - + agglomerate | Flag to agglomeration | bool | yes | - + nRayPerFace | Number of rays issued per face | label | yes | - + writeViewFactors | Flag to write the view factor field | bool | yes |- + writeRays | Flag to write the ray geometry | bool | no | false + \endtable + + Options for the \c raySearchEngine entry: + \verbatim + voxel | Ray search engine discretising space into uniform voxels + \endverbatim + + The inherited entries are elaborated in: + - \link viewFactorModel.H \endlink + - \link raySearchEngine.H \endlink + +Note + + - Participating patches must be in the \c vewFactorWall group, i.e. using the + \c inGroups entry of the "\<case\>/polyMesh/boundary" file. + + \verbatim + myPatch + { + type wall; + inGroups 2(wall viewFactorWall); + ... + } + \endverbatim + + Reads: + + - <constant>/viewFactorsDict : main controls + - <constant>/finalAgglom : agglomeration addressing (from faceAgglomerate) + + + Generates: + + - <constant>/F : view factors (matrix) + - <constant>/mapDist : map used for parallel running + - <constant>/globalFaceFaces : face addressing + +SeeAlso +- Foam::VF::raySearchEngine +- Foam::VE::viewFactorModel + +\*---------------------------------------------------------------------------*/ + +#include "argList.H" +#include "Time.H" +#include "fvMesh.H" +#include "viewFactorModel.H" + +using namespace Foam; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +int main(int argc, char *argv[]) +{ + #include "addRegionOption.H" + #include "setRootCase.H" + #include "createTime.H" + #include "createNamedMesh.H" + + IOdictionary dict + ( + IOobject + ( + "viewFactorsDict", + runTime.constant(), + mesh, + IOobject::MUST_READ + ) + ); + + + // Calculate the view factors + auto modelPtr = VF::viewFactorModel::New(mesh, dict); + + modelPtr->calculate(); + + Info<< nl; + + runTime.printExecutionTime(Info); + + Info<< "End\n" << endl; + + return 0; +} + + +// ************************************************************************* // \ No newline at end of file diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/files b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..eddbe68d672cb51ff132a2a792ebb6c1cc206627 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/files @@ -0,0 +1,12 @@ +raySearchEngine/raySearchEngine/raySearchEngine.C +raySearchEngine/raySearchEngine/raySearchEngineNew.C +raySearchEngine/voxel/voxelRaySearchEngine.C +/* raySearchEngine/nonUniformVoxel/nonUniformVoxelRaySearchEngine.C */ +/* raySearchEngine/allToAll/allToAllRaySearchEngine.C */ +viewFactorModel/viewFactorModel/viewFactorModel.C +viewFactorModel/viewFactorModel/viewFactorModelNew.C +viewFactorModel/viewFactor2AI/viewFactor2AI.C +viewFactorModel/viewFactor2LI/viewFactor2LI.C +viewFactorModel/viewFactorHottel/viewFactorHottel.C + +LIB = $(FOAM_LIBBIN)/libviewFactorModels diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/options b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..f7a24dcbd31522ad9c575033ee03b2d707eec295 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/Make/options @@ -0,0 +1,14 @@ +EXE_INC = \ + -I$(LIB_SRC)/fileFormats/lnInclude \ + -I$(LIB_SRC)/surfMesh/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude \ + -I$(LIB_SRC)/parallel/distributed/lnInclude + +LIB_LIBS = \ + -lfileFormats \ + -lsurfMesh \ + -lmeshTools \ + -lfiniteVolume \ + -ldistributed \ + -lradiationModels diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.C new file mode 100644 index 0000000000000000000000000000000000000000..f1a37bbc5f389adc3274f29c3adf730e272c5d76 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.C @@ -0,0 +1,620 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "raySearchEngine.H" +#include "surfaceFields.H" +#include "volFields.H" +#include "meshTools.H" + +using namespace Foam::constant; + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(raySearchEngine, 0); + defineRunTimeSelectionTable(raySearchEngine, mesh); + + const label raySearchEngine::maxDynListLength = 1000000000; +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +void Foam::VF::raySearchEngine::check +( + const labelList& nVisibleFaceFaces +) +{ + label nRay = 0; + label nFaceMin = labelMax; + label nFaceMax = labelMin; + for (const label n : nVisibleFaceFaces) + { + nFaceMin = min(nFaceMin, n); + nFaceMax = max(nFaceMax, n); + nRay += n; + } + + const label nFace = nVisibleFaceFaces.size(); + const label nGlobalRays = returnReduce(nRay, sumOp<label>()); + + if (nGlobalRays == 0) + { + FatalErrorInFunction + << "No rays identified - view factors will not be calculated" + << exit(FatalError); + } + + const label globalNFacesMin = returnReduce(nFaceMin, minOp<label>()); + const label globalNFacesMax = returnReduce(nFaceMax, maxOp<label>()); + const label nGlobalFaces = returnReduce(nFace, sumOp<label>()); + const scalar avgFaces = nGlobalRays/scalar(nGlobalFaces); + + Info<< "\nRay summary:" << nl + << " Number of rays: " << nGlobalRays << nl + << " Number of rays-per-face (min, max, average): (" + << globalNFacesMin << ", " + << globalNFacesMax << ", " + << avgFaces << ")" << endl; +} + + +Foam::label Foam::VF::raySearchEngine::closestPointIndex +( + const point& p0, + const List<point>& pts +) +{ + label pointi = -1; + + scalar distSqr = GREAT; + forAll(pts, pti) + { + const scalar d2 = magSqr(pts[pti] - p0); + if (d2 < distSqr) + { + pointi = pti; + distSqr = d2; + } + } + + return pointi; +} + + +void Foam::VF::raySearchEngine::createAgglomeration(const IOobject& io) +{ + Info<< "\nFace agglomeration: active" << nl + << " Reading file " << io.name() << endl; + + // Read agglomeration map + const labelListIOList finalAgglom(io); + + Info<< " Creating coarse mesh" << nl; + + agglomMeshPtr_.reset + ( + new singleCellFvMesh + ( + IOobject + ( + IOobject::scopedName("agglom", mesh_.name()), + mesh_.time().timeName(), + mesh_.time(), + IOobject::NO_READ, + IOobject::NO_WRITE + ), + mesh_, + finalAgglom + ) + ); + + const auto& coarseMesh = agglomMeshPtr_(); + + + // Calculate total number of fine and coarse faces + + nCoarseFace_ = 0; + nFace_ = 0; + + const polyBoundaryMesh& finePatches = mesh_.boundaryMesh(); + const polyBoundaryMesh& coarsePatches = coarseMesh.boundaryMesh(); + + for (const label patchi : patchIDs_) + { + nCoarseFace_ += coarsePatches[patchi].size(); + nFace_ += finePatches[patchi].size(); + } + + Info<< "\nTotal number of coarse faces: " + << returnReduce(nCoarseFace_, sumOp<label>()) + << endl; + + Info<< "\nTotal number of fine faces: " + << returnReduce(nFace_, sumOp<label>()) + << endl; + + // Collect local Cf, Sf, agglom index on coarse mesh + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + DynamicList<point> localCf(nCoarseFace_); + DynamicList<vector> localSf(nCoarseFace_); + DynamicList<label> localAgg(nCoarseFace_); + + for (const label patchi : patchIDs_) + { + const labelList& agglom = finalAgglom[patchi]; + + if (agglom.empty()) continue; + + label nAgglom = max(agglom) + 1; + const labelListList coarseToFine(invertOneToMany(nAgglom, agglom)); + const labelList& coarsePatchFace = coarseMesh.patchFaceMap()[patchi]; + + const pointField& coarseCf = coarseMesh.Cf().boundaryField()[patchi]; + const vectorField& coarseSf = coarseMesh.Sf().boundaryField()[patchi]; + + const polyPatch& pp = finePatches[patchi]; + patchAreas_[patchi] += sum(coarseMesh.magSf().boundaryField()[patchi]); + + forAll(coarseCf, facei) + { + const label coarseFacei = coarsePatchFace[facei]; + const label agglomi = coarseFacei + coarsePatches[patchi].start(); + + // Construct single coarse face + const labelList& fineFaces = coarseToFine[coarseFacei]; + uindirectPrimitivePatch cf + ( + UIndirectList<face>(pp, fineFaces), + pp.points() + ); + + // Collect all points (vertices, face centres) + const label nFaces = cf.faceCentres().size(); + const label nPoints = cf.localPoints().size(); + List<point> allPoints(nFaces + nPoints); + SubList<point>(allPoints, nFaces) = cf.faceCentres(); + SubList<point>(allPoints, nPoints, nFaces) = cf.localPoints(); + + // Coarse face centre set to closest point + const label pti = closestPointIndex(coarseCf[facei], allPoints); + + if (pti != -1) + { + localCf.push_back(allPoints[pti]); + localSf.push_back(coarseSf[facei]); + localAgg.push_back(agglomi); + } + } + } + + Info<< "\nAssembled coarse patch data" << endl; + + // Distribute local coarse Cf and Sf for shooting rays + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + allCf_[Pstream::myProcNo()].transfer(localCf); + allSf_[Pstream::myProcNo()].transfer(localSf); + allAgg_[Pstream::myProcNo()].transfer(localAgg); + + Pstream::allGatherList(allCf_); + Pstream::allGatherList(allSf_); + Pstream::allGatherList(allAgg_); + + Pstream::listCombineGather(patchAreas_, plusEqOp<scalar>()); + Pstream::broadcast(patchAreas_); + + globalNumbering_ = globalIndex(nCoarseFace_); +} + + +void Foam::VF::raySearchEngine::createGeometry() +{ + DynamicList<point> localCf(mesh_.nBoundaryFaces()); + DynamicList<vector> localSf(mesh_.nBoundaryFaces()); + + const auto& pbm = mesh_.boundaryMesh(); + + for (const label patchi : patchIDs_) + { + localCf.push_back(pbm[patchi].faceCentres()); + localSf.push_back(pbm[patchi].faceAreas()); + + patchAreas_[patchi] += sum(mesh_.magSf().boundaryField()[patchi]); + } + + Info<< "\nAssembled patch data" << endl; + + nFace_ = localCf.size(); + nCoarseFace_ = -1; + + allCf_[Pstream::myProcNo()].transfer(localCf); + allSf_[Pstream::myProcNo()].transfer(localSf); + + Pstream::allGatherList(allCf_); + Pstream::allGatherList(allSf_); + + Pstream::listCombineGather(patchAreas_, plusEqOp<scalar>()); + Pstream::broadcast(patchAreas_); + + globalNumbering_ = globalIndex(nFace_); +} + + +void Foam::VF::raySearchEngine::createParallelAddressing +( + labelList& rayEndFace +) const +{ + // Construct compact numbering + // - return map from remote to compact indices + // (per processor (!= myProcNo) a map from remote index to compact index) + // - construct distribute map + // - renumber rayEndFace into compact addressing + + DebugInfo << "\nCreating map distribute" << endl; + + List<Map<label>> compactMap(Pstream::nProcs()); + mapPtr_.reset(new mapDistribute(globalNumbering_, rayEndFace, compactMap)); + + DebugInfo << "\nCreating compact-to-global addressing" << endl; + + // Invert compactMap (from processor+localface to compact) to go + // from compact to processor+localface (expressed as a globalIndex) + compactToGlobal_.resize_nocopy(mapPtr_->constructSize()); + + // Local indices first + // Note: are not in compactMap + for (label i = 0; i < globalNumbering_.localSize(); ++i) + { + compactToGlobal_[i] = globalNumbering_.toGlobal(i); + } + + forAll(compactMap, proci) + { + const Map<label>& localToCompactMap = compactMap[proci]; + + forAllConstIters(localToCompactMap, iter) + { + compactToGlobal_[*iter] = + globalNumbering_.toGlobal(proci, iter.key()); + } + } +} + + +Foam::coordSystem::cartesian Foam::VF::raySearchEngine::createCoordSystem +( + const point& origin, + const vector& dir +) const +{ + vector axis(Zero); + + for (direction d=0; d<3; ++d) + { + axis = dir^tensor::I.col(d); + + // Remove empty direction for 2D + if (mesh_.nSolutionD() == 2) + { + meshTools::constrainDirection(mesh_, mesh_.solutionD(), axis); + } + + if (magSqr(axis) > 0) + { + axis.normalise(); + break; + } + } + + return coordSystem::cartesian(origin, dir, axis); +} + + +Foam::tmp<Foam::pointField> Foam::VF::raySearchEngine::createHemiPoints +( + const label nRayPerFace +) const +{ + auto themiPts = tmp<pointField>::New(nRayPerFace); + auto& hemiPts = themiPts.ref(); + + const label nPoints = hemiPts.size(); + + if (mesh_.nSolutionD() == 3) + { + // Point in range -1 < x < 1; -1 < y < 1; 0 < z 1 + + forAll(hemiPts, pointi) + { + const scalar phi = Foam::acos(1 - (pointi + 0.5)/nPoints); + const scalar theta = + mathematical::pi*(1 + Foam::sqrt(5.0))*(pointi + 0.5); + + hemiPts[pointi] = + vector + ( + Foam::cos(theta)*Foam::sin(phi), + Foam::sin(theta)*Foam::sin(phi), + Foam::cos(phi) + ); + } + } + else if (mesh_.nSolutionD() == 2) + { + // Point in range -1 < x < 1; y = 0; 0 < z < 1; _\|/_ + + forAll(hemiPts, pointi) + { + const scalar theta = mathematical::pi*(pointi+0.5)/nPoints; + hemiPts[pointi] = vector(Foam::cos(theta), 0, Foam::sin(theta)); + } + } + + return themiPts; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::raySearchEngine::raySearchEngine +( + const fvMesh& mesh, + const dictionary& dict +) +: + mesh_(mesh), + mapPtr_(nullptr), + compactToGlobal_(), + globalNumbering_(), + patchGroup_(dict.getOrDefault<word>("patchGroup", "viewFactorWall")), + patchIDs_(mesh_.boundaryMesh().indices(patchGroup_)), + patchAreas_(mesh_.boundaryMesh().nNonProcessor(), Zero), + agglomerate_(dict.get<bool>("agglomerate")), + agglomMeshPtr_(nullptr), + nFace_(-1), + nCoarseFace_(-1), + allCf_(UPstream::nProcs()), + allSf_(UPstream::nProcs()), + allAgg_(UPstream::nProcs()) +{ + Info<< "\nParticipating patches:" << endl; + + forAll(patchIDs_, i) + { + const label patchi = patchIDs_[i]; + Info<< " " << i << ": " << mesh_.boundaryMesh()[patchi].name() + << endl; + } + + const word agglomName(dict.getOrDefault<word>("agglom", "finalAgglom")); + + IOobject agglomIO + ( + agglomName, + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ + ); + + + if (agglomerate_) + { + // Sets allCf_, allSf_, allAgg_ based on coarse mesh + // Sets nFace_, nCoarseFace_ + createAgglomeration(agglomIO); + } + else + { + // Check for presence of finalAgglom - will cause problems in later + // calculations with viewFactor radiation model + if (agglomIO.typeHeaderOk<labelListIOList>()) + { + WarningInFunction + << "Found agglomeration file: " << agglomIO.objectPath() << nl + << " This is inconsistent with the view factor calculation " + << "and should be removed" << nl << endl; + } + + // Sets allCf_, allSf_ based on fine mesh + // Sets nFace_; nCoarseFace_ remains unset (-1) + createGeometry(); + } + + globalNumbering_ = + nCoarseFace_ == -1 ? globalIndex(nFace_) : globalIndex(nCoarseFace_); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::VF::raySearchEngine::correct +( + labelListList& visibleFaceFaces +) const +{ + labelList rayStartFace; + labelList rayEndFace; + shootRays(rayStartFace, rayEndFace); + + const label nFace = nParticipatingFaces(); + + // Calculate number of visible faces from each local start face + labelList nVisibleFaceFaces(nFace, Zero); + for (const label facei : rayStartFace) + { + ++nVisibleFaceFaces[facei]; + } + + check(nVisibleFaceFaces); + + createParallelAddressing(rayEndFace); + + // Set visible face-faces + + // visibleFaceFaces has: + // (local face, local viewed face) = compact viewed face + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + visibleFaceFaces.resize_nocopy(nFace); + forAll(nVisibleFaceFaces, facei) + { + visibleFaceFaces[facei].resize_nocopy(nVisibleFaceFaces[facei]); + } + + nVisibleFaceFaces = 0; + forAll(rayStartFace, i) + { + const label facei = rayStartFace[i]; + const label sloti = rayEndFace[i]; + visibleFaceFaces[facei][nVisibleFaceFaces[facei]++] = sloti; + } +} + + +void Foam::VF::raySearchEngine::compactAddressing +( + const mapDistribute& map, + pointField& compactCf, + vectorField& compactSf, + List<List<vector>>& compactFineSf, + List<List<point>>& compactFineCf, + DynamicList<List<point>>& compactPoints, + DynamicList<label>& compactPatchId +) const +{ + compactCf.resize_nocopy(map.constructSize()); + compactSf.resize_nocopy(map.constructSize()); + compactFineSf.resize_nocopy(map.constructSize()); + compactFineCf.resize_nocopy(map.constructSize()); + compactPoints.setCapacity(map.constructSize()); + compactPatchId.setCapacity(map.constructSize()); + + // Insert my local values area and centre values + if (agglomMeshPtr_) + { + SubList<vector>(compactSf, nCoarseFace_) = allSf_[Pstream::myProcNo()]; + SubList<point>(compactCf, nCoarseFace_) = allCf_[Pstream::myProcNo()]; + + const auto& coarseMesh = agglomMeshPtr_(); + const auto& coarsePatches = coarseMesh.boundaryMesh(); + const auto& coarseFaces = coarseMesh.faces(); + const auto& coarsePoints = coarseMesh.points(); + + const auto& finalAgglom = coarseMesh.patchFaceAgglomeration(); + + // Insert my fine local values per coarse face + label sloti = 0; + for (const label patchi : patchIDs_) + { + const auto& fineCfp = mesh_.Cf().boundaryField()[patchi]; + const auto& fineSfp = mesh_.Sf().boundaryField()[patchi]; + const labelList& agglom = finalAgglom[patchi]; + + if (agglom.empty()) continue; + + const label nAgglom = max(agglom) + 1; + const labelListList coarseToFine = invertOneToMany(nAgglom, agglom); + const labelList& coarsePatchFace = + coarseMesh.patchFaceMap()[patchi]; + + const label coarseStart = coarsePatches[patchi].start(); + + forAll(coarseToFine, coarsei) + { + compactPatchId.push_back(patchi); + + const vectorField localPoints + ( + coarsePoints, + coarseFaces[coarseStart + coarsei] + ); + compactPoints.push_back(localPoints); + + const label coarseFacei = coarsePatchFace[coarsei]; + const labelList& fineFaces = coarseToFine[coarseFacei]; + + List<point>& fineCf = compactFineCf[sloti]; + fineCf.resize_nocopy(fineFaces.size()); + fineCf = UIndirectList<point>(fineCfp, fineFaces); + + List<vector>& fineSf = compactFineSf[sloti]; + fineSf.resize_nocopy(fineFaces.size()); + fineSf = UIndirectList<vector>(fineSfp, fineFaces); + + ++sloti; + } + } + } + else + { + SubList<vector>(compactSf, nFace_) = allSf_[Pstream::myProcNo()]; + SubList<point>(compactCf, nFace_) = allCf_[Pstream::myProcNo()]; + + const auto& patches = mesh_.boundaryMesh(); + const faceList& faces = mesh_.faces(); + + label sloti = 0; + + for (const label patchi : patchIDs_) + { + const auto& Sfp = mesh_.Sf().boundaryField()[patchi]; + const auto& Cfp = mesh_.Cf().boundaryField()[patchi]; + + const polyPatch& pp = patches[patchi]; + + forAll(pp, facei) + { + compactPatchId.push_back(patchi); + + const auto& fpts = faces[facei + pp.start()]; + compactPoints.push_back(List<point>(mesh_.points(), fpts)); + + compactFineCf[sloti] = List<point>({Cfp[facei]}); + compactFineSf[sloti] = List<vector>({Sfp[facei]}); + ++sloti; + } + } + } + + + // Do all swapping + map.distribute(compactSf); + map.distribute(compactCf); + map.distribute(compactFineCf); + map.distribute(compactFineSf); + map.distribute(compactPoints); + map.distribute(compactPatchId); +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.H new file mode 100644 index 0000000000000000000000000000000000000000..31a6d6f8d95a08f8130dd51708c65a6b677a8ae7 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngine.H @@ -0,0 +1,289 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::VF::raySearchEngine + +Description + Base class for ray search engines + + Participating patches must be in the \c viewFactorWall group, i.e. using the + \c inGroups entry of the "\<case\>/polyMesh/boundary" file. + + \verbatim + myPatch + { + type wall; + inGroups 2(wall viewFactorWall); + ... + } + \endverbatim + + Face agglomeration can be employed, created using the \c faceAgglomerate + utility. The file name to be read can be user-defined: + + \verbatim + // Name of agglomeration file; default = finalAgglom + agglom finalAgglom; + \endverbatim + +SourceFiles + raySearchEngine.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_raySearchEngine_H +#define Foam_vf_raySearchEngine_H + +#include "cartesianCS.H" +#include "mapDistribute.H" +#include "singleCellFvMesh.H" +#include "runTimeSelectionTables.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace VF +{ + +/*---------------------------------------------------------------------------*\ + Class raySearchEngine Declaration +\*---------------------------------------------------------------------------*/ + +class raySearchEngine +{ +protected: + + // Protected Data + + //- Reference to the mesh + const fvMesh& mesh_; + + //- Parallel map + mutable autoPtr<mapDistribute> mapPtr_; + + //- Compact to global addressing + mutable labelList compactToGlobal_; + + //- Global numbering + globalIndex globalNumbering_; + + //- Name of patch group to identify participating patches + const word patchGroup_; + + //- List of participating patch IDs + labelList patchIDs_; + + //- Patch areas + scalarList patchAreas_; + + //- Agglomeration flag + bool agglomerate_; + + //- Agglomerated mesh representation + autoPtr<singleCellFvMesh> agglomMeshPtr_; + + //- Number of original faces + label nFace_; + + //- Number of coarse faces + label nCoarseFace_; + + //- List of all face centres per processor + List<pointField> allCf_; + + //- List of all face areas per processor + List<vectorField> allSf_; + + //- List of all face agglomeration index per processor + List<labelField> allAgg_; + + + // Protected Member Functions + + static void check(const labelList& nVisibleFaceFaces); + + static label closestPointIndex + ( + const point& p0, + const List<point>& pts + ); + + //- Create patch geometry based on the original mesh + void createGeometry(); + + //- Create parallel addressing - map, compact-to-global + void createParallelAddressing(labelList& rayEndFace) const; + + //- Create Cartesian co-ordinate system + coordSystem::cartesian createCoordSystem + ( + const point& origin, + const vector& dir + ) const; + + //- Create patch geometry based on the agglomerated mesh + void createAgglomeration(const IOobject& io); + + //- Create a set of points describing a hemisphere + // Note: origin is (0 0 0) + tmp<pointField> createHemiPoints(const label nRayPerFace) const; + + +public: + + static const label maxDynListLength; + + //- Run-time type information + TypeName("raySearchEngine"); + + //- Selection table + declareRunTimeSelectionTable + ( + autoPtr, + raySearchEngine, + mesh, + ( + const fvMesh& mesh, + const dictionary& dict + ), + (mesh, dict) + ); + + //- Selector + static autoPtr<raySearchEngine> New + ( + const fvMesh& mesh, + const dictionary& dict + ); + + + // Generated Methods + + //- No copy construct + raySearchEngine(const raySearchEngine&) = delete; + + //- No copy assignment + void operator=(const raySearchEngine&) = delete; + + + //- Constructor + raySearchEngine(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~raySearchEngine() = default; + + + // Public Member Functions + + // Access + + //- Reference to the mesh + inline const fvMesh& mesh() const noexcept; + + //- Parallel map + inline const mapDistribute& map() const; + + //- Compact to global addressing + inline const labelList& compactToGlobal() const noexcept; + + //- Global numbering + inline const globalIndex& globalNumbering() const noexcept; + + //- List of participating patch IDs + inline const labelList& patchIDs() const noexcept; + + //- Patch areas + inline const scalarList& patchAreas() const noexcept; + + //- Number of participating faces + inline label nParticipatingFaces() const; + + //- List of all face centres per processor + inline const List<pointField>& allCf() const noexcept; + + //- List of all face areas per processor + inline const List<vectorField>& allSf() const noexcept; + + //- List of all face agglomeration index per processor + inline const List<labelField>& allAgg() const noexcept; + + + // Main calculation functions + + //- Shoot rays; returns lists of ray start and end faces + virtual void shootRays + ( + labelList& rayStartFaceOut, + labelList& rayEndFaceOut + ) const = 0; + + //- Correct + virtual void correct(labelListList& visibleFaceFaces) const; + + //- Create compact addressing + void compactAddressing + ( + const mapDistribute& map, + pointField& compactCf, + vectorField& compactSf, + List<List<vector>>& compactFineSf, + List<List<point>>& compactFineCf, + DynamicList<List<point>>& compactPoints, + DynamicList<label>& compactPatchId + ) const; + + //- Interpolate field + template<class Type> + void interpolate + ( + GeometricField<Type, fvPatchField, volMesh>& fld, + const List<List<Type>>& values + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "raySearchEngineI.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "raySearchEngineTemplates.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineI.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineI.H new file mode 100644 index 0000000000000000000000000000000000000000..bc410e8b21b9548f582aeb7ee06ec421d00d9a48 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineI.H @@ -0,0 +1,101 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +const Foam::fvMesh& Foam::VF::raySearchEngine::mesh() const noexcept +{ + return mesh_; +} + + +const Foam::mapDistribute& Foam::VF::raySearchEngine::map() const +{ + if (!mapPtr_) + { + FatalErrorInFunction + << "mapDistribute has not been set" + << abort(FatalError); + } + + return mapPtr_; +} + + +const Foam::labelList& +Foam::VF::raySearchEngine::compactToGlobal() const noexcept +{ + return compactToGlobal_; +} + + +const Foam::globalIndex& +Foam::VF::raySearchEngine::globalNumbering() const noexcept +{ + return globalNumbering_; +} + + +const Foam::labelList& Foam::VF::raySearchEngine::patchIDs() const noexcept +{ + return patchIDs_; +} + + +const Foam::scalarList& Foam::VF::raySearchEngine::patchAreas() const noexcept +{ + return patchAreas_; +} + + +Foam::label Foam::VF::raySearchEngine::nParticipatingFaces() const +{ + if (nCoarseFace_ == -1) return nFace_; + return nCoarseFace_; +} + + +const Foam::List<Foam::pointField>& +Foam::VF::raySearchEngine::allCf() const noexcept +{ + return allCf_; +} + + +const Foam::List<Foam::vectorField>& +Foam::VF::raySearchEngine::allSf() const noexcept +{ + return allSf_; +} + + +const Foam::List<Foam::labelField>& +Foam::VF::raySearchEngine::allAgg() const noexcept +{ + return allAgg_; +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineNew.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineNew.C new file mode 100644 index 0000000000000000000000000000000000000000..78af6adc5222ac4e4c5f7e222ef2663dd23523be --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineNew.C @@ -0,0 +1,59 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "raySearchEngine.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +Foam::autoPtr<Foam::VF::raySearchEngine> Foam::VF::raySearchEngine::New +( + const fvMesh& mesh, + const dictionary& dict +) +{ + const word modelType(dict.get<word>("raySearchEngine")); + + Info<< "Selecting " << typeName << ": " << modelType << endl; + + auto* ctorPtr = meshConstructorTable(modelType); + + if (!ctorPtr) + { + FatalIOErrorInLookup + ( + dict, + typeName, + modelType, + *meshConstructorTablePtr_ + ) << exit(FatalIOError); + } + + return autoPtr<raySearchEngine>(ctorPtr(mesh, dict)); +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineTemplates.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineTemplates.C new file mode 100644 index 0000000000000000000000000000000000000000..b345451ada9f120c1cf74ea98f846f683ed7e420 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/raySearchEngine/raySearchEngineTemplates.C @@ -0,0 +1,86 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +template<class Type> +void Foam::VF::raySearchEngine::interpolate +( + GeometricField<Type, fvPatchField, volMesh>& fld, + const List<List<Type>>& values +) const +{ + label compacti = 0; + + auto& vfbf = fld.boundaryFieldRef(); + + if (agglomMeshPtr_) + { + const auto& coarseMesh = agglomMeshPtr_(); + const auto& finalAgglom = coarseMesh.patchFaceAgglomeration(); + + for (const label patchi : patchIDs_) + { + const labelList& agglom = finalAgglom[patchi]; + + if (agglom.empty()) continue; + + label nAgglom = max(agglom) + 1; + const labelListList coarseToFine(invertOneToMany(nAgglom, agglom)); + const labelList& coarsePatchFace = + coarseMesh.patchFaceMap()[patchi]; + + forAll(coarseToFine, i) + { + const label coarseFacei = coarsePatchFace[i]; + const labelList& fineFaces = coarseToFine[coarseFacei]; + const Type sumValues = sum(values[compacti]); + + for (const label fineFacei : fineFaces) + { + vfbf[patchi][fineFacei] = sumValues; + } + + ++compacti; + } + } + } + else + { + label compacti = 0; + for (const label patchi : patchIDs_) + { + auto& vfp = vfbf[patchi]; + + for (Type& vfi : vfp) + { + vfi = sum(values[compacti++]); + } + } + } +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.C new file mode 100644 index 0000000000000000000000000000000000000000..757f1620443708e5e5e3cd47e0ccb6cb5d9aa1bb --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.C @@ -0,0 +1,948 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "voxelRaySearchEngine.H" +#include "processorPolyPatch.H" +#include "addToRunTimeSelectionTable.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(voxel, 0); + addToRunTimeSelectionTable(raySearchEngine, voxel, mesh); +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +void Foam::VF::voxel::setTriangulation(const fvMesh& mesh) +{ + Info<< "\nCreating triangulated surface" << endl; + + // Storage for surfaceMesh. Size estimate. + DynamicList<labelledTri> triangles(mesh.nBoundaryFaces()); + DynamicList<label> globalFaces(mesh.nBoundaryFaces()); + label nFace = 0; + + const auto& pbm = mesh.boundaryMesh(); + + forAll(patchIDs_, i) + { + const label patchi = patchIDs_[i]; + const polyPatch& patch = pbm[patchi]; + const pointField& points = patch.points(); + + for (const face& f : patch) + { + label nTri = 0; + faceList triFaces(f.nTriangles(points)); + f.triangles(points, nTri, triFaces); + + const label globalFacei = + globalNumbering_.toGlobal(Pstream::myProcNo(), nFace++); + + for (const face& f : triFaces) + { + triangles.push_back(labelledTri(f[0], f[1], f[2], i)); + globalFaces.push_back(globalFacei); + } + } + } + + triToGlobalFace_.transfer(globalFaces); + + Info<< " Total number of triangles: " + << returnReduce(triangles.size(), sumOp<label>()) + << endl; + + triangles.shrink(); + surface_ = triSurface(triangles, mesh.points()); + surface_.compactPoints(); +} + + +Foam::labelList Foam::VF::voxel::setFaceVertexHits +( + const fvMesh& mesh, + const labelList& patchIDs +) +{ + labelList vertHits(mesh.points().size(), Zero); + + if (mesh.nSolutionD() == 3) + { + const auto& pbm = mesh.boundaryMesh(); + + // Create a new triangulation based on the surface agglomeration + for (const label patchI : patchIDs) + { + const polyPatch& patch = pbm[patchI]; + for (const face& f : patch) + { + for (const label fpi : f) + { + ++vertHits[fpi]; + } + } + } + + for (const auto& pp : pbm) + { + const labelList& meshPts = pp.meshPoints(); + + if (pp.size()) + { + if (isA<processorPolyPatch>(pp)) + { + // Add all processor patch points + for (const label pi : meshPts) + { + ++vertHits[pi]; + } + } + else + { + // Add boundary points + + const auto& bndyPts = pp.boundaryPoints(); + + for (const label pi : bndyPts) + { + ++vertHits[meshPts[pi]]; + } + } + } + } + } + + return vertHits; +} + + +void Foam::VF::voxel::setCoarseTriangulation(const fvMesh& mesh) +{ + Info<< "\nCreating triangulated surface" << endl; + + + // Filter out fine mesh points along coarse mesh faces + + + // Storage for surfaceMesh. Size estimate. + DynamicList<labelledTri> triangles(mesh.nBoundaryFaces()); + DynamicList<label> globalFaces(mesh.nBoundaryFaces()); + labelList vertHits = setFaceVertexHits(mesh, patchIDs_); + + + // Only simplifying edges for 3D + const label nVertMin = mesh.nSolutionD() == 3 ? 2 : 0; + + label nInvalid = 0; + label nFace = 0; + + const auto& pbm = mesh.boundaryMesh(); + + for (const label patchi : patchIDs_) + { + const polyPatch& patch = pbm[patchi]; + const pointField& points = patch.points(); + + for (const face& f : patch) + { + DynamicList<label> faceVerts; + for (const label fpi : f) + { + if (vertHits[fpi] > nVertMin) + { + faceVerts.push_back(fpi); + } + } + + if (faceVerts.size() < 3) + { + ++nInvalid; + continue; + } + + label nTri = 0; + const face reducedFace(faceVerts); + faceList triFaces(reducedFace.nTriangles(points)); + reducedFace.triangles(points, nTri, triFaces); + + const label globalFacei = + globalNumbering_.toGlobal(Pstream::myProcNo(), nFace++); + + for (const face& f : triFaces) + { + triangles.push_back(labelledTri(f[0], f[1], f[2], patchi)); + globalFaces.push_back(globalFacei); + } + } + } + + triToGlobalFace_.transfer(globalFaces); + + Info<< " Total number of triangles: " + << returnReduce(triangles.size(), sumOp<label>()) + << "\n Number of invalid (removed) triangles: " + << returnReduce(nInvalid, sumOp<label>()) + << endl; + + triangles.shrink(); + surface_ = triSurface(triangles, mesh.points()); + surface_.compactPoints(); +} + + +void Foam::VF::voxel::broadcast() +{ + // Every processor has whole surface + const globalIndex globalFaceIdx(globalIndex::gatherOnly{}, surface_.size()); + const globalIndex globalPointIdx + ( + globalIndex::gatherOnly{}, + surface_.points().size() + ); + + List<labelledTri> globalSurfaceTris(globalFaceIdx.gather(surface_)); + pointField globalSurfacePoints(globalPointIdx.gather(surface_.points())); + List<label> globalTriToGlobalFace(globalFaceIdx.gather(triToGlobalFace_)); + + + for (const label proci : globalPointIdx.allProcs()) + { + const label offset = globalPointIdx.localStart(proci); + + if (offset) + { + for + ( + labelledTri& tri + : globalSurfaceTris.slice(globalFaceIdx.range(proci)) + ) + { + tri[0] += offset; + tri[1] += offset; + tri[2] += offset; + } + } + } + + surface_ = + triSurface + ( + std::move(globalSurfaceTris), + std::move(globalSurfacePoints) + ); + + Pstream::broadcast(surface_); + + triToGlobalFace_ = std::move(globalTriToGlobalFace); + Pstream::broadcast(triToGlobalFace_); +} + + +Foam::pointHit Foam::VF::voxel::rayTriIntersect +( + const label trii, + const point& origin, + const vector& direction +) const +{ + // Note: origin was made relative to voxel mesh on entry to hit function + // - need to convert back into global position to be consistent with + // triangles for intersection tests + + const auto& ind = surface_[trii]; + const auto& pts = surface_.points(); + + // Note: flipped orientation of triangle (into domain) so that we can use + // visibility check when performing ray-triangle intersections + const triPointRef tri(pts[ind[0]], pts[ind[2]], pts[ind[1]]); + + static scalar tolerance = 1e-6; + + return + tri.intersection + ( + globalPosition(origin), + direction, + intersection::VISIBLE, + tolerance + ); +} + + +void Foam::VF::voxel::writeBox +( + OBJstream& os, + bool lines, + const boundBox& bb +) const +{ + os.write(treeBoundBox(bb), lines); +} + + +void Foam::VF::voxel::writeVoxels(const word& fName) const +{ + if (!UPstream::master()) return; + + OBJstream os(fName); + Info<< "Writing voxels to " << os.name() << endl; + + boundBox bb; + const bool lines = true; + for (label i = 0; i < nijk_[0]; ++i) + { + for (label j = 0; j < nijk_[1]; ++j) + { + for (label k = 0; k < nijk_[2]; ++k) + { + bb.min() = voxelMin(i, j, k); + bb.max() = voxelMax(i, j, k); + writeBox(os, lines, bb); + } + } + } + + Info<< "- done" << endl; +} + + +void Foam::VF::voxel::writeTriBoundBoxes(const word& fName) const +{ + if (!UPstream::master()) return; + + OBJstream os(fName); + Info<< "Writing triangle boundBoxes to " << os.name() << endl; + + const bool lines = true; + for (const auto& voxeli : objects_) + { + for (const label trii : voxeli) + { + writeBox(os, lines, objectBbs_[trii]); + } + } + + Info<< "- done" << endl; +} + + +void Foam::VF::voxel::writeHitObjects +( + const label voxeli, + const point& origin, + const vector& dir +) const +{ + OBJstream os("voxel_" + Foam::name(voxeli) + ".obj"); + + // Write voxel + labelVector ijk = this->ijk(voxeli); + + boundBox voxelBb; + voxelBb.min() = voxelMin(ijk[0], ijk[1], ijk[2]); + voxelBb.max() = voxelMax(ijk[0], ijk[1], ijk[2]); + + writeBox(os, true, voxelBb); + + for (const auto& trii : objects_[voxeli]) + { + writeBox(os, true, objectBbs_[trii]); + + const auto& ind = surface_[trii]; + const auto& pts = surface_.points(); + const triPointRef tri(pts[ind[0]], pts[ind[1]], pts[ind[2]]); + os.write(tri, false); + } +} + + +Foam::pointIndexHit Foam::VF::voxel::hitObject +( + const label voxeli, + const point& origin, + const vector& dir, + const vector& t, + const scalar minDistance +) const +{ + if (objects_[voxeli].empty()) return pointIndexHit(); + + // boundBox rayBb; + // rayBb.add(origin); + // rayBb.add(origin + dir*(dir & t)); + + label triHiti = -1; + //rayBb.add(origin + dir); + //rayBb.inflate(0.01); + + if (debug > 2) + { + writeHitObjects(voxeli, origin, dir); + } + + // Determine all triangles that intersect with ray + // - only keep nearest hit + + pointHit closestHit; + for (const auto& trii : objects_[voxeli]) + { + // Only perform ray/tri intersection if bound boxes intersect + //if (objectBbs_[trii].overlaps(rayBb)) + { + pointHit pi = rayTriIntersect(trii, origin, dir); + + if + ( + pi.hit() + && ( + pi.distance() > minDistance + && pi.distance() < closestHit.distance() + ) + ) + { + triHiti = trii; + closestHit = pi; + } + } + } + + return pointIndexHit(closestHit, triHiti); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::voxel::voxel(const fvMesh& mesh, const dictionary& dict) +: + raySearchEngine(mesh, dict), + bb0_(), + span0_(Zero), + nijk_(Zero), + dxyz_(Zero), + nRayPerFace_(dict.get<label>("nRayPerFace")), + nTriPerVoxelMax_(dict.getOrDefault<label>("nTriPerVoxelMax", 50)), + depthMax_(dict.getOrDefault<label>("depthMax", 5)), + objects_(), + objectBbs_() +{ + if (agglomMeshPtr_) + { + setCoarseTriangulation(*agglomMeshPtr_); + } + else + { + setTriangulation(mesh); + } + + broadcast(); + + objectBbs_.resize_nocopy(surface_.size()); + + bb0_.add(surface_.points()); + bb0_.inflate(0.01); + span0_ = bb0_.span(); + + { + scalar maxDx = span0_.x(); + scalar maxDy = span0_.y(); + scalar maxDz = span0_.z(); + + const label refDn = 8; + scalar maxDim = max(maxDx, max(maxDy, maxDz)); + + setVoxelDims + ( + refDn*maxDx/maxDim, + refDn*maxDy/maxDim, + refDn*maxDz/maxDim + ); + + objects_.resize_nocopy(nVoxel()); + } + + label depth = 0; + label trii = 0; + voxelise(objects_, trii, depth); + + Info<< "\nCreated voxel mesh: " << nijk_ << endl; + + if ((debug > 3) && UPstream::master()) + { + writeVoxels("voxels.obj"); + writeTriBoundBoxes("triBoundBoxes.obj"); + } +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::VF::voxel::refineObjects +( + List<DynamicList<label>>& objects, + const label triMax +) +{ + refineVoxelDims(); + + if (debug > 2) Pout<< "Refining voxels: n=" << nijk_ << endl; + + List<DynamicList<label>> objectsNew(objects.size()*8); + + for (label trii = 0; trii <= triMax; ++trii) + { + addBbToVoxels(objectBbs_[trii], trii, objectsNew); + } + + objects.transfer(objectsNew); +} + + +Foam::label Foam::VF::voxel::addBbToVoxels +( + const boundBox& bb, + const label trii, + List<DynamicList<label>>& objects +) const +{ + //Pout<< "addBbToVoxels: trii=" << trii << " n=" << nijk_ << endl; + + const point minbb(localPosition(bb.min())); + const label i0 = max(0, floor(minbb.x()/dxyz_[0])); + const label j0 = max(0, floor(minbb.y()/dxyz_[1])); + const label k0 = max(0, floor(minbb.z()/dxyz_[2])); + + const point maxbb(localPosition(bb.max())); + const label i1 = min(nijk_[0], ceil(maxbb.x()/dxyz_[0])); + const label j1 = min(nijk_[1], ceil(maxbb.y()/dxyz_[1])); + const label k1 = min(nijk_[2], ceil(maxbb.z()/dxyz_[2])); + + label nTriMax = 0; + + for (label ii = i0; ii < i1; ++ii) + { + for (label jj = j0; jj < j1; ++jj) + { + for (label kk = k0; kk < k1; ++kk) + { + const label voxeli = this->voxeli(ii, jj, kk); + + objects[voxeli].push_back(trii); + nTriMax = max(nTriMax, objects[voxeli].size()); + } + } + } + + return nTriMax; +} + + +void Foam::VF::voxel::voxelise +( + List<DynamicList<label>>& objects, + const label trii0, + const label depth +) +{ + if (debug > 2) + { + Pout<< "voxelise - start at tri=" << trii0 + << " depth=" << depth + << endl; + } + + const auto& points = surface_.points(); + + for (label trii = trii0; trii < surface_.size(); ++trii) + { + // Triangle bounding box + boundBox bb(points, surface_[trii]); + bb.inflate(0.01); + objectBbs_[trii] = bb; + + const label nVoxelMax = addBbToVoxels(bb, trii, objects); + + // Number of triangles per voxel - if exceed limit, refine voxels... + if (nVoxelMax > nTriPerVoxelMax_ && depth < depthMax_) + { + refineObjects(objects, trii); + voxelise(objects, trii + 1, depth + 1); + break; + } + } +} + + +Foam::pointIndexHit Foam::VF::voxel::hit +( + const label tri0, + const vector& direction0 +) const +{ + if (tri0 > surface_.size()-1) + { + FatalErrorInFunction + << "Index tri0 out of bounds: " << tri0 + << ". Surface size: " << surface_.size() + << abort(FatalError); + } + + return hit(surface_.faceCentres()[tri0], direction0); +} + + +Foam::pointIndexHit Foam::VF::voxel::hit +( + const point& origin0, + const vector& direction0 +) const +{ + // Initialise return value + pointIndexHit hitInfo; + + const point origin(localPosition(origin0)); + + if (cmptMin(origin) < 0) + { + FatalErrorInFunction + << "Point located outside voxel mesh" + << " - possible coarsening problem?" + << abort(FatalError); + } + + if (magSqr(direction0) < ROOTVSMALL) + { + WarningInFunction + << "Supplied direction has zero size" + << endl; + + return hitInfo; + } + + const vector dir(normalised(direction0)); + + labelVector ijk(Zero); + labelVector step(Zero); + vector tDelta(vector::max); + vector tMax(vector::max); + + for (direction d = 0; d < 3; ++d) + { + ijk[d] = floor(origin[d]/dxyz_[d]); + step[d] = sign0(dir[d]); + if (step[d] != 0) + { + tDelta[d] = mag(dxyz_[d]/dir[d]); + + scalar voxelMax = (1 + ijk[d] - neg(dir[d]))*dxyz_[d]; + tMax[d] = (voxelMax - origin[d])/dir[d]; + } + } + + if (debug > 2) + { + Info<< "surfBb:" << boundBox(surface_.points()) + << " bb:" << bb0_ + << " origin" << origin0 + << " voxel_origin:" << origin + << " ijk:" << ijk + << " step:" << step + << " dxyz:" << dxyz_ + << " tDelta:" << tDelta + << " tMax:" << tMax + << endl; + } + + auto traverse = [&](const label i) + { + ijk[i] += step[i]; + if (outOfBounds(ijk, i)) return false; + tMax[i] += tDelta[i]; + return true; + }; + + + while (true) + { + const label voxeli = this->voxeli(ijk); + + if (debug > 2) + { + Info<< "ijk:" << ijk + << " voxeli:" << voxeli + << " t:" << tMax + << " objs:" << objects_[voxeli].size() + << endl; + } + + hitInfo = hitObject(voxeli, origin, dir, tMax); + + if (hitInfo.hit()) + { + // Valid hit + break; + } + else + { + if (tMax[0] < tMax[1] && tMax[0] < tMax[2]) + { + if (!traverse(0)) break; + } + else if (tMax[1] < tMax[2]) + { + if (!traverse(1)) break; + } + else + { + if (!traverse(2)) break; + } + } + } + + return hitInfo; +} + + +void Foam::VF::voxel::shootRays +( + labelList& rayStartFaceOut, + labelList& rayEndFaceOut +) const +{ + (void)mesh_.time().cpuTimeIncrement(); + + const pointField& myFc = allCf_[Pstream::myProcNo()]; + const vectorField& myArea = allSf_[Pstream::myProcNo()]; + + const label nTotalRays = myFc.size()*nRayPerFace_; + if (nTotalRays > maxDynListLength) + { + FatalErrorInFunction + << "Dynamic list needs more capacity to support " << nRayPerFace_ + << " rays per face (" << nTotalRays << "). " + << "Limit set by maxDynListLength: " << maxDynListLength + << abort(FatalError); + } + + DynamicList<label> rayStartFace(nTotalRays); + DynamicList<label> rayEndFace(rayStartFace.size()); + + DynamicList<label> endFacei(nTotalRays); + DynamicList<label> startFacei(nTotalRays); + + const pointField hemi(createHemiPoints(nRayPerFace_)); + + Info<< "\nShooting rays" << endl; + + const scalar nDiv = 10; + const label nStep = floor(myFc.size()/nDiv); + labelHashSet localFaceHits; + + for (label stepi=0; stepi<nDiv; ++stepi) + { + const label step0 = stepi*nStep; + const label step1 = stepi == nDiv - 1 ? myFc.size() : (stepi+1)*nStep; + + for (label i = step0; i < step1; ++i) + { + // Info<< "i/N = " << i << "/" << (myFc.size()-1) + // << " step0:" << step0 << " step1:" << step1 + // << endl; + + localFaceHits.clear(); + + const point& origin = myFc[i]; + const vector dir(-normalised(myArea[i])); + + const coordSystem::cartesian cs = createCoordSystem(origin, dir); + + const vectorField pts(cs.transformPoint(hemi)); + + for (const auto& p : pts) + { + const pointIndexHit hitInfo = hit(origin, p-origin); + + if (hitInfo.hit()) + { + label hitFacei = triToGlobalFace_[hitInfo.index()]; + + if (localFaceHits.insert(hitFacei)) + { + endFacei.push_back(hitFacei); + startFacei.push_back(i); + } + } + else + { + // Miss + } + } + } + + const label globalStepi = returnReduce(stepi, minOp<label>()) + 1; + + Info<< " " << globalStepi/nDiv*100 << "% complete" << endl; + } + + + // Ensure all rays are unique/filter out duplicates + // - add symmetric connections for non-self-intersecting rays + + if (UPstream::parRun()) + { + edgeHashSet uniqueRays; + List<DynamicList<label>> remoteStartFace(Pstream::nProcs()); + List<DynamicList<label>> remoteEndFace(Pstream::nProcs()); + + const labelList globalStartFaceIDs + ( + globalNumbering_.toGlobal(startFacei) + ); + + forAll(globalStartFaceIDs, rayi) + { + label start = globalStartFaceIDs[rayi]; + label end = endFacei[rayi]; + + const label endProci = globalNumbering_.whichProcID(end); + + if (start > end) Swap(start, end); + + if (uniqueRays.insert(edge(start, end))) + { + if (endProci != UPstream::myProcNo()) + { + // Convert local face into global face and vice-versa + remoteStartFace[endProci].push_back(start); + remoteEndFace[endProci].push_back(end); + } + } + } + + PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + + // Send remote data + for (const int domain : Pstream::allProcs()) + { + if (domain != Pstream::myProcNo()) + { + UOPstream str(domain, pBufs); + str << remoteStartFace[domain] + << remoteEndFace[domain]; + } + } + + pBufs.finishedSends(); + + // Consume + for (const int domain : Pstream::allProcs()) + { + if (domain != Pstream::myProcNo()) + { + UIPstream is(domain, pBufs); + is >> remoteStartFace[domain] + >> remoteEndFace[domain]; + + forAll(remoteStartFace[domain], i) + { + const label start = remoteStartFace[domain][i]; + const label end = remoteEndFace[domain][i]; + uniqueRays.insert(edge(start, end)); + } + } + } + + // Populate ray addressing based on uniqueRays + for (const edge& e : uniqueRays) + { + const label start = e.first(); + const label end = e.second(); + + bool sameFace = start == end; + + if (globalNumbering_.isLocal(start)) + { + // Ray originates from this processor + const label localStart = globalNumbering_.toLocal(start); + + rayStartFace.append(localStart); + rayEndFace.append(end); + } + + if (!sameFace && globalNumbering_.isLocal(end)) + { + // Ray hits this processor + // - add symmetric ray from end->start + const label localEnd = globalNumbering_.toLocal(end); + + rayStartFace.append(localEnd); + rayEndFace.append(start); + } + } + } + else + { + // Populate ray addressing based on uniqueRays + + edgeHashSet uniqueRays; + + forAll(startFacei, rayi) + { + label start = startFacei[rayi]; + label end = endFacei[rayi]; + + if (start > end) Swap(start, end); + + if (uniqueRays.insert(edge(start, end))) + { + rayStartFace.append(start); + rayEndFace.append(end); + + if (start != end) + { + // Add symmetric ray from end->start + rayStartFace.append(end); + rayEndFace.append(start); + } + } + } + } + + rayStartFaceOut.transfer(rayStartFace); + rayEndFaceOut.transfer(rayEndFace); + + Info<< " Time taken: " << mesh_.time().cpuTimeIncrement() << " s" + << endl; +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.H new file mode 100644 index 0000000000000000000000000000000000000000..1103e1a881ceea25283207420c60c96abd700720 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngine.H @@ -0,0 +1,284 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::VF::voxel + +Description + Ray search engine based on discretising space into uniform voxels + + Voxels are refined using 2x2x2 refinement. + + The number of rays per face is supplied by the user, whereby rays are + issued uniformly across a hemisphere. + +Usage + Minimal example by using \c <constant>/viewFactorsDict: + \verbatim + // Mandatory entries + nRayPerFace <label>; + + // Optional entries + nTriPerVoxelMax <label>; + depthMax <label>; + + // Inherited entries + ... + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + nRayPerFace | Number of rays issued per face | label | yes | - + nRayPerFace | Target number of triangles per voxel | label | no | 50 + depthMax | Maximum voxel refinement depth | label | no | 5 + \endtable + + The inherited entries are elaborated in: + - \link raySearchEngine.H \endlink + +SourceFiles + voxelRaySearchEngine.C + +SeeAlso +- Foam::VF::raySearchEngine + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_voxelRaySearchEngine_H +#define Foam_vf_voxelRaySearchEngine_H + +#include "raySearchEngine.H" +#include "labelVector.H" +#include "OBJstream.H" +#include "pointIndexHit.H" +#include "triSurface.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace VF +{ + +/*---------------------------------------------------------------------------*\ + Class voxel Declaration +\*---------------------------------------------------------------------------*/ + +class voxel +: + public raySearchEngine +{ + // Private Data + + //- Triangulation of view factor patches + triSurface surface_; + + //- Triangle to mesh face addressing + labelList triToGlobalFace_; + + //- Surface bounding box + boundBox bb0_; + + //- Span of surface bounding box + vector span0_; + + //- Voxel discretisation + labelVector nijk_; + + //- Voxel dimensions + vector dxyz_; + + //- Number of rays issued per face + const label nRayPerFace_; + + //- Maximum number of triangles per voxel (trigger to refine voxels) + const label nTriPerVoxelMax_; + + //- Maximum depth of voxel refinement. Note: voxels are refined 2x2x2 + const label depthMax_; + + //- List of triangle per voxel + List<DynamicList<label>> objects_; + + //- List of triangle bounding boxes + List<boundBox> objectBbs_; + + + // Private Member Functions + + inline bool outOfBounds(const labelVector& ijk, const label dir) const; + + inline point localPosition(const vector& globalPosition) const; + + inline point globalPosition(const vector& localPosition) const; + + inline void setVoxelDims(const label i, const label j, const label k); + + inline void refineVoxelDims(); + + inline point voxelMin + ( + const label i, + const label j, + const label k + ) const; + + inline point voxelMax + ( + const label i, + const label j, + const label k + ) const; + + inline constexpr label sign0(const scalar x) const; + + //- Set triangulation based on original mesh + void setTriangulation(const fvMesh& mesh); + + //- Set the participating face vertices when simplifying edges + static labelList setFaceVertexHits + ( + const fvMesh& mesh, + const labelList& patchIDs + ); + + //- Set triangulation based on agglomeration + void setCoarseTriangulation(const fvMesh& mesh); + + //- Broadcast triangulation across all procs + void broadcast(); + + void refineObjects + ( + List<DynamicList<label>>& objects, + const label triMax + ); + + label addBbToVoxels + ( + const boundBox& bb, + const label trii, + List<DynamicList<label>>& objects + ) const; + + void voxelise + ( + List<DynamicList<label>>& objects, + const label trii0, + const label depth + ); + + pointHit rayTriIntersect + ( + const label trii, + const point& origin, + const vector& direction + ) const; + + pointIndexHit hitObject + ( + const label voxeli, + const point& origin, + const vector& direction, + const vector& t, + const scalar minDistance = 1e-6 + ) const; + + void writeBox + ( + OBJstream& os, + bool lines, + const boundBox& bb + ) const; + + void writeVoxels(const word& fName) const; + + void writeTriBoundBoxes(const word& fName) const; + + void writeHitObjects + ( + const label voxeli, + const point& origin, + const vector& dir + ) const; + + +public: + + //- Runtime type information + TypeName("voxel"); + + //- Constructor + voxel(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~voxel() = default; + + + // Public Member Functions + + inline labelVector nijk() const noexcept; + + inline label nVoxel() const noexcept; + + inline label voxeli(const labelVector ijk) const noexcept; + + inline label voxeli + ( + const label i, + const label j, + const label k + ) const noexcept; + + inline labelVector ijk(const label voxeli) const noexcept; + + pointIndexHit hit(const point& origin, const vector& dir) const; + + pointIndexHit hit(const label tri0, const vector& dir) const; + + virtual void shootRays + ( + labelList& rayStartFaceOut, + labelList& rayEndFaceOut + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "voxelRaySearchEngineI.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngineI.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngineI.H new file mode 100644 index 0000000000000000000000000000000000000000..a46ca7e1da5fae77d5a8f03cae70ba02a742e945 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/raySearchEngine/voxel/voxelRaySearchEngineI.H @@ -0,0 +1,155 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +bool Foam::VF::voxel::outOfBounds +( + const labelVector& ijk, + const label dir +) const +{ + return (ijk[dir] < 0 || ijk[dir] >= nijk_[dir]); +}; + + +Foam::point Foam::VF::voxel::localPosition(const vector& globalPosition) const +{ + return globalPosition - bb0_.min(); +} + + +Foam::point Foam::VF::voxel::globalPosition(const vector& localPosition) const +{ + return bb0_.min() + localPosition; +} + + +void Foam::VF::voxel::setVoxelDims(const label i, const label j, const label k) +{ + nijk_[0] = max(1, i); + nijk_[1] = max(1, j); + nijk_[2] = max(1, k); + + dxyz_[0] = span0_[0]/nijk_[0]; + dxyz_[1] = span0_[1]/nijk_[1]; + dxyz_[2] = span0_[2]/nijk_[2]; +} + + +void Foam::VF::voxel::refineVoxelDims() +{ + nijk_ *= 2; + + // Do not refine empty direction for 2D + const auto& solutionD = mesh_.solutionD(); + for (direction d=0; d<3; ++d) + { + if (solutionD[d] == -1) + { + nijk_[d] = 1; + } + } + + setVoxelDims(nijk_[0], nijk_[1], nijk_[2]); +} + + +Foam::point Foam::VF::voxel::voxelMin +( + const label i, + const label j, + const label k +) const +{ + return point(i*dxyz_[0], j*dxyz_[1], k*dxyz_[2]); +} + + +Foam::point Foam::VF::voxel::voxelMax +( + const label i, + const label j, + const label k +) const +{ + return voxelMin(i+1, j+1, k+1); +} + + +constexpr Foam::label Foam::VF::voxel::sign0(const scalar x) const +{ + if (x > 0) return 1; + if (x < 0) return -1; + return 0; +}; + + +Foam::labelVector Foam::VF::voxel::nijk() const noexcept +{ + return nijk_; +} + + +Foam::label Foam::VF::voxel::nVoxel() const noexcept +{ + return nijk_[0]*nijk_[1]*nijk_[2]; +} + + +Foam::label Foam::VF::voxel::voxeli +( + const labelVector ijk +) const noexcept +{ + return voxeli(ijk[0], ijk[1], ijk[2]); +} + + +Foam::label Foam::VF::voxel::voxeli +( + const label i, + const label j, + const label k +) const noexcept +{ + return i + (nijk_[0]*(j + (nijk_[1]*k))); +} + + +Foam::labelVector Foam::VF::voxel::ijk(const label voxeli) const noexcept +{ + const label nx = nijk_[0]; + const label ny = nijk_[1]; + + const label i = voxeli%nx; + const label k = voxeli/nx/ny; + const label j = (voxeli/nx)%ny; + + return labelVector(i, j, k); +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.C new file mode 100644 index 0000000000000000000000000000000000000000..2b7afe34bff644309a57a8532eaa415eb71ca37d --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.C @@ -0,0 +1,138 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactor2AI.H" +#include "mathematicalConstants.H" +#include "addToRunTimeSelectionTable.H" + +using namespace Foam::constant; + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(viewFactor2AI, 0); + addToRunTimeSelectionTable(viewFactorModel, viewFactor2AI, mesh); +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +Foam::scalar Foam::VF::viewFactor2AI::calculateFij +( + const point& xi, + const point& xj, + const vector& dAi, + const vector& dAj +) +{ + const vector r(xj - xi); + const scalar rMag = mag(r); + const scalar dAiMag(mag(dAi)); + const scalar dAjMag(mag(dAj)); + + if (rMag > SMALL && dAiMag > SMALL && dAjMag > SMALL) + { + const vector nr(r/rMag); + const vector ni(dAi/dAiMag); + const vector nj(dAj/dAjMag); + + const scalar Fij = + -(nr & ni)*(nr & nj)/sqr(rMag)*dAjMag*dAiMag/mathematical::pi; + + if (Fij > 0) return Fij; + } + + return 0; +} + + +Foam::scalarListList Foam::VF::viewFactor2AI::calculate +( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId +) const +{ + // Fill local view factor matrix + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + scalarListList Fij(visibleFaceFaces.size()); + + forAll(visibleFaceFaces, facei) + { + if (debug > 1) + { + Pout<< "facei:" << facei << "/" << visibleFaceFaces.size() + << endl; + } + + const labelList& visibleFaces = visibleFaceFaces[facei]; + + Fij[facei].resize(visibleFaces.size(), Zero); + + const point& dCi = compactCf[facei]; + const vector& Ai = compactSf[facei]; + const scalar magAi = mag(Ai); + + if (magAi < SMALL) continue; + + forAll(visibleFaces, visibleFacei) + { + const label sloti = visibleFaces[visibleFacei]; + const point& dCj = compactCf[sloti]; + const vector& Aj = compactSf[sloti]; + + const scalar Fij2AI = calculateFij(dCi, dCj, Ai, Aj); + + Fij[facei][visibleFacei] = Fij2AI/magAi; + } + } + + + return Fij; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::viewFactor2AI::viewFactor2AI +( + const fvMesh& mesh, + const dictionary& dict +) +: + viewFactorModel(mesh, dict) +{} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.H new file mode 100644 index 0000000000000000000000000000000000000000..9ba377435b4d55193731e0d6ef6b1012e01888ca --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2AI/viewFactor2AI.H @@ -0,0 +1,117 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::VF::viewFactor2AI + +Description + Computes view factors according to the double area integral (2AI) method. + +Usage + Minimal example in \c <constant>/viewFactorsDict: + \verbatim + // Inherited entries + ... + \endverbatim + + The inherited entries are elaborated in: + - \link viewFactorModel.H \endlink + +SourceFiles + viewFactorModel.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_viewFactor2AI_H +#define Foam_vf_viewFactor2AI_H + +#include "viewFactorModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace VF +{ + +/*---------------------------------------------------------------------------*\ + Class viewFactor2AI Declaration +\*---------------------------------------------------------------------------*/ + +class viewFactor2AI +: + public viewFactorModel +{ + +protected: + + // Protected Member Functions + + //- Calculate view factor using the double-area integral + static scalar calculateFij + ( + const point& xi, + const point& xj, + const vector& dAi, + const vector& dAj + ); + + //- Calculate + virtual scalarListList calculate + ( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId + ) const; + + +public: + + //- Runtime type information + TypeName("viewFactor2AI"); + + //- Constructor + viewFactor2AI(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~viewFactor2AI() = default; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.C new file mode 100644 index 0000000000000000000000000000000000000000..273b5c2ac5e3f22ccddd99c6de10960989cb8b85 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.C @@ -0,0 +1,141 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactor2LI.H" +#include "mathematicalConstants.H" +#include "addToRunTimeSelectionTable.H" + +using namespace Foam::constant; + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(viewFactor2LI, 0); + addToRunTimeSelectionTable(viewFactorModel, viewFactor2LI, mesh); +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +Foam::scalar Foam::VF::viewFactor2LI::calculateFij +( + const List<point>& lPoints, + const List<point>& rPoints, + const scalar alpha +) +{ + scalar Fij = 0; + + forAll(lPoints, i) + { + // Edge vector and centroid of edge i + const vector si(lPoints[i] - lPoints.rcValue(i)); + const point ci(0.5*(lPoints[i] + lPoints.rcValue(i))); + + forAll(rPoints, j) + { + // Edge vector and centroid of edge j + const vector sj(rPoints[j] - rPoints.rcValue(j)); + const point cj(0.5*(rPoints[j] + rPoints.rcValue(j))); + + vector r(ci - cj); + if (mag(r) < SMALL) + { + r = alpha*si; + } + + Fij += (si & sj)*Foam::log(r & r); + } + } + + return max(0, 0.25*Fij/mathematical::pi); +} + + +Foam::scalarListList Foam::VF::viewFactor2LI::calculate +( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId +) const +{ + // Fill local view factor matrix + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + scalarListList Fij(visibleFaceFaces.size()); + + forAll(visibleFaceFaces, facei) + { + if (debug > 1) + { + Pout<< "facei:" << facei << "/" << visibleFaceFaces.size() + << endl; + } + + const labelList& visibleFaces = visibleFaceFaces[facei]; + + Fij[facei].resize(visibleFaces.size(), Zero); + + const vector& Ai = compactSf[facei]; + const scalar magAi = mag(Ai); + + forAll(visibleFaces, visibleFacei) + { + const label sloti = visibleFaces[visibleFacei]; + const List<point>& lPoints = compactPoints[facei]; + const List<point>& rPoints = compactPoints[sloti]; + + const scalar Fij2LI = calculateFij(lPoints, rPoints, alpha_); + + Fij[facei][visibleFacei] = Fij2LI/magAi; + } + } + + return Fij; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::viewFactor2LI::viewFactor2LI +( + const fvMesh& mesh, + const dictionary& dict +) +: + viewFactorModel(mesh, dict), + alpha_(dict.getOrDefault("alpha", 0.21)) +{} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.H new file mode 100644 index 0000000000000000000000000000000000000000..0d2c0d273d3403cc4000dc32a54d1d093aecfb12 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactor2LI/viewFactor2LI.H @@ -0,0 +1,130 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::VF::viewFactor2LI + +Description + Computes view factors according to the double line integral (2LI) method. + +Usage + Minimal example in \c <constant>/viewFactorsDict: + \verbatim + // Optional entries + alpha <scalar>; + + // Inherited entries + ... + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + alpha | Perturbation for common edges | scalar | no | 0.21 + \endtable + + The inherited entries are elaborated in: + - \link viewFactorModel.H \endlink + +SourceFiles + viewFactorModel.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_viewFactor2LI_H +#define Foam_vf_viewFactor2LI_H + +#include "viewFactorModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace VF +{ + +/*---------------------------------------------------------------------------*\ + Class viewFactor2LI Declaration +\*---------------------------------------------------------------------------*/ + +class viewFactor2LI +: + public viewFactorModel +{ +protected: + + // Protected Data + + //- Perturbation for common edges; default = 0.21 + const scalar alpha_; + + + // Protected Member Functions + + //- Calculate view factor using the double-area integral + static scalar calculateFij + ( + const List<point>& lPoints, + const List<point>& rPoints, + const scalar alpha + ); + + //- Calculate + virtual scalarListList calculate + ( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId + ) const; + + +public: + + //- Runtime type information + TypeName("viewFactor2LI"); + + //- Constructor + viewFactor2LI(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~viewFactor2LI() = default; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.C new file mode 100644 index 0000000000000000000000000000000000000000..3b352ab69f8c976833f9566fe2977a5c054ebf22 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.C @@ -0,0 +1,153 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactorHottel.H" +#include "mathematicalConstants.H" +#include "fvMesh.H" +#include "meshTools.H" +//#include "addToRunTimeSelectionTable.H" + +using namespace Foam::constant; + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(viewFactorHottel, 0); +// addToRunTimeSelectionTable(viewFactorModel, viewFactorHottel, mesh); +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +Foam::scalar Foam::VF::viewFactorHottel::calculateFij +( + const point& p0, + const point& p1, + const point& p2, + const point& p3 +) +{ + return 0.5*(mag(p2-p1) + mag(p3-p0) - mag(p2-p0) - mag(p3-p1)); +} + + +Foam::scalarListList Foam::VF::viewFactorHottel::calculate +( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId +) const +{ + // Fill local view factor matrix + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + scalarListList Fij(visibleFaceFaces.size()); + + forAll(visibleFaceFaces, facei) + { + if (debug > 1) + { + Pout<< "facei:" << facei << "/" << visibleFaceFaces.size() + << endl; + } + + const labelList& visibleFaces = visibleFaceFaces[facei]; + + Fij[facei].resize_nocopy(visibleFaces.size()); + + const point& dCi = compactCf[facei]; + const vector& Ai = compactSf[facei]; + const scalar magAi = mag(Ai); + + const vector d1((Ai/magAi) ^ emptyDir_); + const vector l1(0.5*magAi/w_*d1); + const point p0(dCi + l1); + const point p1(dCi - l1); + + forAll(visibleFaces, visibleFacei) + { + const label sloti = visibleFaces[visibleFacei]; + + const point& dCj = compactCf[sloti]; + const vector& Aj = compactSf[sloti]; + const scalar magAj = mag(Aj); + + const vector d2((Aj/magAj) ^ emptyDir_); + const vector l2(0.5*magAj/w_*d2); + const point p2(dCj - l2); + const point p3(dCj + l2); + + const scalar FijH = calculateFij(p0, p1, p2, p3); + + Fij[facei][visibleFacei] = FijH/(magAi/w_); + } + } + + + return Fij; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::viewFactorHottel::viewFactorHottel +( + const fvMesh& mesh, + const dictionary& dict +) +: + viewFactorModel(mesh, dict), + emptyDir_(vector::one), + w_(0) +{ + if (mesh.nSolutionD() != 2) + { + FatalErrorInFunction + << "Hottel crossed strings method only applicable to 2D cases" + << exit(FatalError); + } + + meshTools::constrainDirection(mesh, mesh.solutionD(), emptyDir_); + emptyDir_ = vector::one - emptyDir_; + emptyDir_.normalise(); + + // 2D width - assume slab + // TODO: warn wedge/axisymmetric? + w_ = mesh.bounds().span() & emptyDir_; + + Info<< "\nEmpty direction: " << emptyDir_ + << "\nWidth: " << w_ << endl; +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.H new file mode 100644 index 0000000000000000000000000000000000000000..da7bade587b3356ca40c9e4dfa406c362eee8cc8 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorHottel/viewFactorHottel.H @@ -0,0 +1,135 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::VF::viewFactorHottel + +Description + Computes view factors according to Hottel's crossed strings method. + + Reference: + \verbatim + Hottel, H. C., & Saforim, A. F. (1967). + Radiative transfer. + McGraw-Hill Book Company, New York. + \endverbatim + +Usage + Minimal example in \c <constant>/viewFactorsDict: + \verbatim + // Inherited entries + ... + \endverbatim + + The inherited entries are elaborated in: + - \link viewFactorModel.H \endlink + +Note + Only applicable to 2D cases + +SourceFiles + viewFactorModel.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_viewFactorHottel_H +#define Foam_vf_viewFactorHottel_H + +#include "viewFactorModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace VF +{ + +/*---------------------------------------------------------------------------*\ + Class viewFactorHottel Declaration +\*---------------------------------------------------------------------------*/ + +class viewFactorHottel +: + public viewFactorModel +{ + // Private Data + + //- Mesh empty direction + vector emptyDir_; + + //- Mesh 2D width + scalar w_; + + +protected: + + // Protected Member Functions + + //- Calculate view factor using the double-area integral + static scalar calculateFij + ( + const point& p0, + const point& p1, + const point& p2, + const point& p3 + ); + + //- Calculate + virtual scalarListList calculate + ( + const labelListList& visibleFaceFaces, + const pointField& compactCf, + const vectorField& compactSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId + ) const; + + +public: + + //- Runtime type information + TypeName("viewFactorHottel"); + + //- Constructor + viewFactorHottel(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~viewFactorHottel() = default; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.C new file mode 100644 index 0000000000000000000000000000000000000000..cc4e1442f6cc596342acc4f6f6011d86b6648a4e --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.C @@ -0,0 +1,290 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactorModel.H" +#include "raySearchEngine.H" +#include "OBJstream.H" +#include "volFields.H" +#include "IOmapDistribute.H" +#include "scalarListIOList.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace VF +{ + defineTypeNameAndDebug(viewFactorModel, 0); + defineRunTimeSelectionTable(viewFactorModel, mesh); +} +} + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +void Foam::VF::viewFactorModel::writeRays +( + const fileName& fName, + const pointField& compactCf, + const labelListList& visibleFaceFaces +) +{ + OBJstream str(fName); + + Pout<< "Writing rays to " << str.name() << endl; + + forAll(visibleFaceFaces, facei) + { + const labelList& visibleSlots = visibleFaceFaces[facei]; + + for (const label sloti : visibleSlots) + { + str.write(linePointRef(compactCf[facei], compactCf[sloti])); + } + } + + str.flush(); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::VF::viewFactorModel::viewFactorModel +( + const fvMesh& mesh, + const dictionary& dict +) +: + mesh_(mesh), + searchEnginePtr_(raySearchEngine::New(mesh, dict)), + writeViewFactors_(dict.get<bool>("writeViewFactors")), + writeRays_(dict.getOrDefault<bool>("writeRays", false)) +{} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +Foam::VF::viewFactorModel::~viewFactorModel() +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::VF::viewFactorModel::calculate() +{ + const auto& searchEngine = *searchEnginePtr_; + + labelListList visibleFaceFaces; + searchEngine.correct(visibleFaceFaces); + const auto& map = searchEngine.map(); + + // Construct data in compact addressing + // Compact addressing has all local data, followed by remote contributions + + pointField compactCf; + vectorField compactSf; + List<List<vector>> compactFineSf; + List<List<point>> compactFineCf; + DynamicList<List<point>> compactPoints; + DynamicList<label> compactPatchId; + + searchEngine.compactAddressing + ( + map, + compactCf, + compactSf, + compactFineSf, + compactFineCf, + compactPoints, + compactPatchId + ); + + if (writeRays_) + { + // Write all rays between visible faces using .OBJ format + + writeRays + ( + mesh_.time().path()/"allVisibleFaces.obj", + compactCf, + visibleFaceFaces + ); + } + + (void)mesh_.time().cpuTimeIncrement(); + + Info<< "\nCalculating view factors" << endl; + + scalarListIOList Fij + ( + IOobject + ( + "F", + mesh_.facesInstance(), + mesh_, + IOobject::NO_READ + ), + calculate + ( + visibleFaceFaces, + compactCf, + compactSf, + compactFineSf, + compactFineCf, + compactPoints, + compactPatchId + ) + ); + + const label totalPatches = mesh_.boundaryMesh().nNonProcessor(); + + // Matrix sum in j(Fij) for each i + // Note: if enclosure sum should = 1 + scalarSquareMatrix viewFactorPatch(totalPatches, Zero); + + forAll(visibleFaceFaces, startFacei) + { + const scalar magAi = mag(compactSf[startFacei]); + + const labelList& visibleSlots = visibleFaceFaces[startFacei]; + const label patchi = compactPatchId[startFacei]; + + forAll(visibleSlots, visSloti) + { + const label sloti = visibleSlots[visSloti]; + const label patchj = compactPatchId[sloti]; + + viewFactorPatch[patchi][patchj] += Fij[startFacei][visSloti]*magAi; + } + } + + reduce(viewFactorPatch, sumOp<scalarSquareMatrix>()); + + const scalarList patchArea = searchEngine.patchAreas(); + + + if (UPstream::master()) + { + Info<< "\nPatch view factor contributions:" << nl << endl; + + scalar vfSum = 0; + + const auto& patchIDs = searchEngine.patchIDs(); + const auto& patches = mesh_.boundaryMesh(); + + for (const label patchi : patchIDs) + { + Info<< " Patch " << patchi << ": " << patches[patchi].name() + << endl; + + scalar vfPatch = 0; + for (const label patchj: patchIDs) + { + scalar vf = viewFactorPatch[patchi][patchj]/patchArea[patchi]; + vfPatch += vf; + + Info<< " F" << patchi << patchj << ": " << vf << endl; + } + + Info<< " Sum: " << vfPatch << nl << endl; + + vfSum += vfPatch; + } + + Info<< "Sum(all patches) = " << vfSum << endl; + } + + // Write view factors matrix in list-list form + Info<< "\nWriting view factor matrix" << endl; + Fij.write(); + + if (writeViewFactors_) + { + Info<< "\nWriting view factor field" << endl; + + auto tviewFactorField = + volScalarField::New + ( + "viewFactorField", + mesh_, + dimensionedScalar(dimless, Zero) + ); + + auto& viewFactorField = tviewFactorField.ref(); + + searchEngine.interpolate(viewFactorField, Fij); + + viewFactorField.write(); + } + + + // Create globalFaceFaces needed to insert view factors + // in F to the global matrix Fmatrix + { + labelListIOList IOglobalFaceFaces + ( + IOobject + ( + "globalFaceFaces", + mesh_.facesInstance(), + mesh_, + IOobject::NO_READ + ), + visibleFaceFaces.size() + ); + + forAll(IOglobalFaceFaces, facei) + { + IOglobalFaceFaces[facei] = renumber + ( + searchEngine.compactToGlobal(), + visibleFaceFaces[facei] + ); + } + + IOglobalFaceFaces.write(); + } + + // Write parallel map + { + IOmapDistribute IOmapDist + ( + IOobject + ( + "mapDist", + mesh_.facesInstance(), + mesh_, + IOobject::NO_READ + ), + std::move(map) + ); + + IOmapDist.write(); + } +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.H b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.H new file mode 100644 index 0000000000000000000000000000000000000000..549c50978da3f15556a93d72b74903f79024eb84 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModel.H @@ -0,0 +1,185 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Namespace + Foam::VF + +Description + A namespace for various \c viewFactor model implementations. + +Class + Foam::VF::viewFactorModel + +Description + A base class for \c viewFactor models. + +Usage + Minimal example in \c <constant>/viewFactorsDict: + \verbatim + // Mandatory entries + writeViewFactors <bool>; + + // Optional entries + writeRays <bool>; + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + writeViewFactors | Flag to write the view factor field | bool | yes | - + writeRays | Flag to write the ray geometry | bool | no | false + \endtable + +SourceFiles + viewFactorModel.C + viewFactorModelNew.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_vf_viewFactorModel_H +#define Foam_vf_viewFactorModel_H + +#include "autoPtr.H" +#include "pointField.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +// Forward Declarations +class fvMesh; + +namespace VF +{ + +// Forward Declarations +class raySearchEngine; + +/*---------------------------------------------------------------------------*\ + Class viewFactorModel Declaration +\*---------------------------------------------------------------------------*/ + +class viewFactorModel +{ +protected: + + // Protected Data + + //- Reference to the mesh database + const fvMesh& mesh_; + + //- Run-time selectable ray search engine + autoPtr<raySearchEngine> searchEnginePtr_; + + //- Flag to write the view factor field + bool writeViewFactors_; + + //- Flag to write the ray geometry + bool writeRays_; + + + // Protected Member Functions + + //- Write ray geometry to file + static void writeRays + ( + const fileName& fName, + const pointField& compactCf, + const labelListList& visibleFaceFaces + ); + + //- Calculate the view factors using run-time selectable model + virtual scalarListList calculate + ( + const labelListList& visibleFaceFaces, + const pointField& compactCoarseCf, + const vectorField& compactCoarseSf, + const List<List<vector>>& compactFineSf, + const List<List<point>>& compactFineCf, + const DynamicList<List<point>>& compactPoints, + const DynamicList<label>& compactPatchId + ) const = 0; + + +public: + + //- Runtime type information + TypeName("viewFactorModel"); + + //- Selection table + declareRunTimeSelectionTable + ( + autoPtr, + viewFactorModel, + mesh, + ( + const fvMesh& mesh, + const dictionary& dict + ), + (mesh, dict) + ); + + //- Selector + static autoPtr<viewFactorModel> New + ( + const fvMesh& mesh, + const dictionary& dict + ); + + + // Generated Methods + + //- No copy construct + viewFactorModel(const viewFactorModel&) = delete; + + //- No copy assignment + void operator=(const viewFactorModel&) = delete; + + + //- Constructor + viewFactorModel(const fvMesh& mesh, const dictionary& dict); + + //- Destructor + virtual ~viewFactorModel(); + + + // Public Member Functions + + //- Calculate the view factors + virtual void calculate(); +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace VF +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModelNew.C b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModelNew.C new file mode 100644 index 0000000000000000000000000000000000000000..e87f7d459fd696e0a9a2371853e6ad05c902c4f2 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/viewFactorModels/viewFactorModel/viewFactorModel/viewFactorModelNew.C @@ -0,0 +1,72 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactorModel.H" +#include "viewFactorHottel.H" +#include "fvMesh.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +Foam::autoPtr<Foam::VF::viewFactorModel> Foam::VF::viewFactorModel::New +( + const fvMesh& mesh, + const dictionary& dict +) +{ + // Intercept 2D cases + if (mesh.nSolutionD() == 2) + { + Info<< "Selecting " << typeName << ": " << viewFactorHottel::typeName + << " for 2D cases" << nl << endl; + return autoPtr<viewFactorModel>(new viewFactorHottel(mesh, dict)); + } + + + // 3D cases - use run-time selection + + const word modelType(dict.get<word>("viewFactorModel")); + + Info<< "Selecting " << typeName << ": " << modelType << endl; + + auto* ctorPtr = meshConstructorTable(modelType); + + if (!ctorPtr) + { + FatalIOErrorInLookup + ( + dict, + typeName, + modelType, + *meshConstructorTablePtr_ + ) << exit(FatalIOError); + } + + return autoPtr<viewFactorModel>(ctorPtr(mesh, dict)); +} + + +// ************************************************************************* // diff --git a/applications/utilities/preProcessing/createZeroDirectory/createZeroDirectory.C b/applications/utilities/preProcessing/createZeroDirectory/createZeroDirectory.C index ebfef7d84aedd4ca889e68f25aecde41c5651018..899ce6ccb753f81f4593d44bc661c5420f44e964 100644 --- a/applications/utilities/preProcessing/createZeroDirectory/createZeroDirectory.C +++ b/applications/utilities/preProcessing/createZeroDirectory/createZeroDirectory.C @@ -143,17 +143,10 @@ void createFieldFiles dictionary field; - fileName regionPath = "/"; - - if (!regionName.empty()) - { - regionPath += regionName + '/'; - } - field.add ( "#include", - "$FOAM_CASE/system" + regionPath + "caseProperties" + "<system>"/regionName/"caseProperties" ); field.add("dimensions", fieldDimensions[i]); @@ -173,15 +166,22 @@ void createFieldFiles // Expand all of the dictionary redirections and remove unnecessary // entries - OStringStream os; - os << field; - entry::disableFunctionEntries = 0; - dictionary field2(IStringStream(os.str())()); - entry::disableFunctionEntries = 1; - field2.remove("#include"); - field2.remove("initialConditions"); - field2.remove("boundaryConditions"); + dictionary field2; + + { + OCharStream os; + os << field; + ISpanStream is(os.view()); + + entry::disableFunctionEntries = 0; + is >> field2; + entry::disableFunctionEntries = 1; + + field2.remove("#include"); + field2.remove("initialConditions"); + field2.remove("boundaryConditions"); + } // Construct and write field dictionary. Note use of localIOdictionary localIOdictionary fieldOut @@ -192,7 +192,9 @@ void createFieldFiles "0", regionName, runTime, - IOobject::NO_READ + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), field2 ); @@ -235,7 +237,8 @@ int main(int argc, char *argv[]) runTime.system(), runTime, IOobject::MUST_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ) ); diff --git a/applications/utilities/preProcessing/mapFieldsPar/MapVolFields.H b/applications/utilities/preProcessing/mapFieldsPar/MapVolFields.H index 1257d47aeb6a3fac77dae149ca90e082cba7af0f..34b26b49edbcfffd7c87cc54ef42dcc53f9154fa 100644 --- a/applications/utilities/preProcessing/mapFieldsPar/MapVolFields.H +++ b/applications/utilities/preProcessing/mapFieldsPar/MapVolFields.H @@ -26,8 +26,8 @@ License \*---------------------------------------------------------------------------*/ -#ifndef MapConsistentVolFields_H -#define MapConsistentVolFields_H +#ifndef Foam_MapConsistentVolFields_H +#define Foam_MapConsistentVolFields_H #include "GeometricField.H" #include "meshToMesh.H" @@ -41,48 +41,42 @@ namespace Foam template<class Type> void evaluateConstraintTypes(GeometricField<Type, fvPatchField, volMesh>& fld) { - auto& fldBf = fld.boundaryFieldRef(); + auto& bfld = fld.boundaryFieldRef(); const UPstream::commsTypes commsType = UPstream::defaultCommsType; - const label startOfRequests = UPstream::nRequests(); if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { - forAll(fldBf, patchi) - { - fvPatchField<Type>& tgtField = fldBf[patchi]; + const label startOfRequests = UPstream::nRequests(); + for (auto& pfld : bfld) + { if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { - tgtField.initEvaluate(commsType); + pfld.initEvaluate(commsType); } } - // Wait for outstanding requests - if (commsType == UPstream::commsTypes::nonBlocking) - { - UPstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - forAll(fldBf, patchi) + for (auto& pfld : bfld) { - fvPatchField<Type>& tgtField = fldBf[patchi]; - if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { - tgtField.evaluate(commsType); + pfld.evaluate(commsType); } } } @@ -94,22 +88,21 @@ void evaluateConstraintTypes(GeometricField<Type, fvPatchField, volMesh>& fld) for (const auto& schedEval : patchSchedule) { const label patchi = schedEval.patch; - - fvPatchField<Type>& tgtField = fldBf[patchi]; + auto& pfld = bfld[patchi]; if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { if (schedEval.init) { - tgtField.initEvaluate(commsType); + pfld.initEvaluate(commsType); } else { - tgtField.evaluate(commsType); + pfld.evaluate(commsType); } } } diff --git a/applications/utilities/preProcessing/setAlphaField/setAlphaField.C b/applications/utilities/preProcessing/setAlphaField/setAlphaField.C index 78f9b77e558f20cfa64b9973d0dc3535c7e57e67..89e10cd444974a8e808b5829e8f233cba1b43aa8 100644 --- a/applications/utilities/preProcessing/setAlphaField/setAlphaField.C +++ b/applications/utilities/preProcessing/setAlphaField/setAlphaField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 DHI - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. Copyright (C) 2017-2020 German Aerospace Center (DLR) Copyright (C) 2020 Johan Roenby ------------------------------------------------------------------------------- @@ -39,6 +39,7 @@ Description \*---------------------------------------------------------------------------*/ #include "fvCFD.H" +#include "timeSelector.H" #include "triSurface.H" #include "triSurfaceTools.H" @@ -139,6 +140,10 @@ void setAlpha int main(int argc, char *argv[]) { + argList::noFunctionObjects(); // Never use function objects + + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( "Uses cutCellIso to create a volume fraction field from an " @@ -151,9 +156,14 @@ int main(int argc, char *argv[]) "file", "Alternative setAlphaFieldDict dictionary" ); + #include "addRegionOption.H" #include "setRootCase.H" #include "createTime.H" + + // Set time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); + #include "createNamedMesh.H" const word dictName("setAlphaFieldDict"); diff --git a/applications/utilities/preProcessing/setAlphaField/setAlphaFieldDict b/applications/utilities/preProcessing/setAlphaField/setAlphaFieldDict index f655483202d352d8ae87563807aef59c9b587e5f..c5e38202f72e2e529c97c940f787342d6b107fd6 100644 --- a/applications/utilities/preProcessing/setAlphaField/setAlphaFieldDict +++ b/applications/utilities/preProcessing/setAlphaField/setAlphaFieldDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/preProcessing/setExprBoundaryFields/readFields.H b/applications/utilities/preProcessing/setExprBoundaryFields/readFields.H index 07e0bb443e629dd6bca23aefb4b925468dff9ad2..e72ac18820a9ab0bd41f383d986a30b58dccf738 100644 --- a/applications/utilities/preProcessing/setExprBoundaryFields/readFields.H +++ b/applications/utilities/preProcessing/setExprBoundaryFields/readFields.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,7 +71,7 @@ class readFieldsHandler Log << " Reading " << io.name() << " (" << FieldType::typeName << ')' << endl; - mesh_.objectRegistry::store(new FieldType(io, mesh_)); + regIOobject::store(new FieldType(io, mesh_)); return true; } diff --git a/applications/utilities/preProcessing/setExprBoundaryFields/setExprBoundaryFieldsDict b/applications/utilities/preProcessing/setExprBoundaryFields/setExprBoundaryFieldsDict index 323774047f4f261f01a38effef354246ff766865..cb3b2a2383f8353a0c2972e15108736ace275d06 100644 --- a/applications/utilities/preProcessing/setExprBoundaryFields/setExprBoundaryFieldsDict +++ b/applications/utilities/preProcessing/setExprBoundaryFields/setExprBoundaryFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/preProcessing/setExprFields/readFields.H b/applications/utilities/preProcessing/setExprFields/readFields.H index 8ab2063ed9edbc6489d8195ceda7846635e5e623..b150c97d973f084f712a92f4c1671fac759ccd10 100644 --- a/applications/utilities/preProcessing/setExprFields/readFields.H +++ b/applications/utilities/preProcessing/setExprFields/readFields.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,7 +71,7 @@ class readFieldsHandler Log << " Reading " << io.name() << " (" << FieldType::typeName << ')' << endl; - mesh_.objectRegistry::store(new FieldType(io, mesh_)); + regIOobject::store(new FieldType(io, mesh_)); return true; } diff --git a/applications/utilities/preProcessing/setExprFields/setExprFields.C b/applications/utilities/preProcessing/setExprFields/setExprFields.C index 59c180c551980468b37f32a3b8b6f6ca589e9729..2904f42d8ee3dad98231252bf88f36c159e5b649 100644 --- a/applications/utilities/preProcessing/setExprFields/setExprFields.C +++ b/applications/utilities/preProcessing/setExprFields/setExprFields.C @@ -148,7 +148,8 @@ bool setField ( fieldName, mesh, - dimensioned<typename GeoField::value_type>(dims) + Foam::zero{}, // value + dims ); } else diff --git a/applications/utilities/preProcessing/setExprFields/setExprFieldsDict b/applications/utilities/preProcessing/setExprFields/setExprFieldsDict index 0a65330e5e3ba145fd176c8d79d2f813721421be..5c6ac3b35aad92803139f44d3a6665d7e1a963ab 100644 --- a/applications/utilities/preProcessing/setExprFields/setExprFieldsDict +++ b/applications/utilities/preProcessing/setExprFields/setExprFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/preProcessing/setFields/setFields.C b/applications/utilities/preProcessing/setFields/setFields.C index d4312085a79242d240b55a907c6f6ebe2af57ecb..276b36c2f3d5d13b7a03745fefa75cc7f50f65a8 100644 --- a/applications/utilities/preProcessing/setFields/setFields.C +++ b/applications/utilities/preProcessing/setFields/setFields.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,6 +36,7 @@ Description \*---------------------------------------------------------------------------*/ #include "argList.H" +#include "timeSelector.H" #include "Time.H" #include "fvMesh.H" #include "faMesh.H" @@ -656,6 +657,10 @@ struct setAreaField int main(int argc, char *argv[]) { + argList::noFunctionObjects(); // Never use function objects + + timeSelector::addOptions_singleTime(); // Single-time options + argList::addNote ( "Set values on a selected set of cells/patch-faces via a dictionary" @@ -670,8 +675,15 @@ int main(int argc, char *argv[]) ); #include "addRegionOption.H" + + // ------------------------- + #include "setRootCase.H" #include "createTime.H" + + // Set time from specified time options, or no-op + timeSelector::setTimeIfPresent(runTime, args); + #include "createNamedMesh.H" autoPtr<faMesh> faMeshPtr; diff --git a/applications/utilities/surface/surfaceCheck/surfaceCheck.C b/applications/utilities/surface/surfaceCheck/surfaceCheck.C index fd6e5dbbca8439ae77ab54ebdd9ccbcdbd9cdc5a..7c6be507e1786efa4e23089dc970c96b5e123675 100644 --- a/applications/utilities/surface/surfaceCheck/surfaceCheck.C +++ b/applications/utilities/surface/surfaceCheck/surfaceCheck.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -413,7 +413,7 @@ int main(int argc, char *argv[]) // ~~~~~~~~~~~~ { - labelList regionSize(surf.patches().size(), Zero); + labelList regionSize(surf.patches().size(), Foam::zero{}); forAll(surf, facei) { @@ -433,11 +433,12 @@ int main(int argc, char *argv[]) } } - Info<< "Region\tSize" << nl - << "------\t----" << nl; + Info<< "Index\tRegion\tSize" << nl + << "-----\t------\t----" << nl; forAll(surf.patches(), patchi) { - Info<< surf.patches()[patchi].name() << '\t' + Info<< patchi << '\t' + << surf.patches()[patchi].name() << '\t' << regionSize[patchi] << nl; } Info<< nl << endl; diff --git a/applications/utilities/surface/surfaceInertia/surfaceInertia.C b/applications/utilities/surface/surfaceInertia/surfaceInertia.C index 2b5120978843c4882df69b4f804cabbf95485a11..44275cb4d06ac035178e6ebe6a10965c53a8c8bc 100644 --- a/applications/utilities/surface/surfaceInertia/surfaceInertia.C +++ b/applications/utilities/surface/surfaceInertia/surfaceInertia.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2021 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -161,25 +161,22 @@ int main(int argc, char *argv[]) // rather than tensors to allow indexed permutation. // Cartesian basis vectors - right handed orthogonal triplet - List<vector> cartesian(3); + FixedList<vector, 3> cartesian; cartesian[0] = vector(1, 0, 0); cartesian[1] = vector(0, 1, 0); cartesian[2] = vector(0, 0, 1); - // Principal axis basis vectors - right handed orthogonal - // triplet - List<vector> principal(3); + // Principal axis basis vectors - right handed orthogonal triplet + FixedList<vector, 3> principal; principal[0] = eVec.x(); principal[1] = eVec.y(); principal[2] = eVec.z(); - scalar maxMagDotProduct = -GREAT; - // Matching axis indices, first: cartesian, second:principal - Pair<label> match(-1, -1); + scalar maxMagDotProduct = -GREAT; forAll(cartesian, cI) { @@ -187,12 +184,11 @@ int main(int argc, char *argv[]) { scalar magDotProduct = mag(cartesian[cI] & principal[pI]); - if (magDotProduct > maxMagDotProduct) + if (maxMagDotProduct < magDotProduct) { maxMagDotProduct = magDotProduct; match.first() = cI; - match.second() = pI; } } @@ -208,7 +204,7 @@ int main(int argc, char *argv[]) // Invert the best match direction and swap the order of // the other two vectors - List<vector> tPrincipal = principal; + FixedList<vector, 3> tPrincipal = principal; tPrincipal[match.second()] *= -1; @@ -237,7 +233,7 @@ int main(int argc, char *argv[]) permutationDelta += 3; - List<vector> tPrincipal = principal; + FixedList<vector, 3> tPrincipal = principal; vector tEVal = eVal; @@ -253,10 +249,9 @@ int main(int argc, char *argv[]) eVal = tEVal; } - label matchedAlready = match.first(); - - match =Pair<label>(-1, -1); + const label matchedAlready = match.first(); + match = Pair<label>(-1, -1); maxMagDotProduct = -GREAT; forAll(cartesian, cI) @@ -275,12 +270,11 @@ int main(int argc, char *argv[]) scalar magDotProduct = mag(cartesian[cI] & principal[pI]); - if (magDotProduct > maxMagDotProduct) + if (maxMagDotProduct < magDotProduct) { maxMagDotProduct = magDotProduct; match.first() = cI; - match.second() = pI; } } @@ -295,7 +289,7 @@ int main(int argc, char *argv[]) { principal[match.second()] *= -1; - List<vector> tPrincipal = principal; + FixedList<vector, 3> tPrincipal = principal; tPrincipal[(matchedAlready + 1) % 3] = principal[(matchedAlready + 2) % 3]*-sense; @@ -335,15 +329,16 @@ int main(int argc, char *argv[]) showTransform = false; } - // calculate the total surface area + // Calculate total surface area and average normal vector scalar surfaceArea = 0; + vector averageNormal(Zero); forAll(surf, facei) { const labelledTri& f = surf[facei]; - if (f[0] == f[1] || f[0] == f[2] || f[1] == f[2]) + if (!f.good()) { WarningInFunction << "Illegal triangle " << facei << " vertices " << f @@ -351,20 +346,23 @@ int main(int argc, char *argv[]) } else { - surfaceArea += triPointRef - ( - surf.points()[f[0]], - surf.points()[f[1]], - surf.points()[f[2]] - ).mag(); + triPointRef tri = f.tri(surf.points()); + + surfaceArea += tri.mag(); + averageNormal += tri.areaNormal(); } } + // The unit normal (area-averaged) + averageNormal.normalise(); + + Info<< nl << setprecision(12) << "Density: " << density << nl << "Mass: " << m << nl << "Centre of mass: " << cM << nl << "Surface area: " << surfaceArea << nl + << "Average normal: " << averageNormal << nl << "Inertia tensor around centre of mass: " << nl << J << nl << "eigenValues (principal moments): " << eVal << nl << "eigenVectors (principal axes): " << nl @@ -398,21 +396,26 @@ int main(int argc, char *argv[]) << endl; } - OFstream str("axes.obj"); - Info<< nl << "Writing scaled principal axes at centre of mass of " - << surfFileName << " to " << str.name() << endl; + // Write (scaled) principal axes at centre of mass + { + OFstream str("axes.obj"); - scalar scale = mag(cM - surf.points()[0])/eVal.component(findMin(eVal)); + Info<< nl << "Writing scaled principal axes at centre of mass of " + << surfFileName << " to " << str.name() << endl; - meshTools::writeOBJ(str, cM); - meshTools::writeOBJ(str, cM + scale*eVal.x()*eVec.x()); - meshTools::writeOBJ(str, cM + scale*eVal.y()*eVec.y()); - meshTools::writeOBJ(str, cM + scale*eVal.z()*eVec.z()); + scalar scale = + mag(cM - surf.points()[0])/eVal.component(findMin(eVal)); - for (label i = 1; i < 4; i++) - { - str << "l " << 1 << ' ' << i + 1 << endl; + meshTools::writeOBJ(str, cM); + meshTools::writeOBJ(str, cM + scale*eVal.x()*eVec.x()); + meshTools::writeOBJ(str, cM + scale*eVal.y()*eVec.y()); + meshTools::writeOBJ(str, cM + scale*eVal.z()*eVec.z()); + + for (label i = 1; i < 4; i++) + { + str << "l " << 1 << ' ' << i + 1 << endl; + } } Info<< "\nEnd\n" << endl; diff --git a/applications/utilities/surface/surfaceInflate/surfaceInflate.C b/applications/utilities/surface/surfaceInflate/surfaceInflate.C index 364b00e0e7b33723231c2594754215eb813e119e..3292780ef73fdc7a8d4132f602d821dcd639c9ad 100644 --- a/applications/utilities/surface/surfaceInflate/surfaceInflate.C +++ b/applications/utilities/surface/surfaceInflate/surfaceInflate.C @@ -221,9 +221,10 @@ void detectSelfIntersections const edgeList& edges = s.edges(); const indexedOctree<treeDataTriSurface>& tree = s.tree(); const labelList& meshPoints = s.meshPoints(); - const pointField& points = s.points(); + const tmp<pointField> tpoints(s.points()); + const pointField& points = tpoints(); - isEdgeIntersecting.setSize(edges.size()); + isEdgeIntersecting.resize_nocopy(edges.size()); isEdgeIntersecting = false; forAll(edges, edgeI) @@ -311,7 +312,8 @@ label detectIntersectionPoints detectSelfIntersections(s, isEdgeIntersecting); const edgeList& edges = s.edges(); - const pointField& points = s.points(); + const tmp<pointField> tpoints(s.points()); + const pointField& points = tpoints(); forAll(edges, edgeI) { @@ -358,8 +360,8 @@ tmp<scalarField> avg const scalarField& edgeWeights ) { - tmp<scalarField> tres(new scalarField(s.nPoints(), Zero)); - scalarField& res = tres.ref(); + auto tres = tmp<scalarField>::New(s.nPoints(), Zero); + auto& res = tres.ref(); scalarField sumWeight(s.nPoints(), Zero); @@ -836,9 +838,10 @@ int main(int argc, char *argv[]) // Do some smoothing (Lloyds algorithm) lloydsSmoothing(nSmooth, s, isFeaturePoint, edgeStat, isAffectedPoint); - // Update pointDisplacement - const pointField& pts = s.points(); + const tmp<pointField> tpoints(s.points()); + const pointField& pts = tpoints(); + forAll(meshPoints, i) { label meshPointI = meshPoints[i]; diff --git a/applications/utilities/surface/surfaceLambdaMuSmooth/surfaceLambdaMuSmooth.C b/applications/utilities/surface/surfaceLambdaMuSmooth/surfaceLambdaMuSmooth.C index cde4e69ae59ebd074e20a8c875b170b3e44acd41..097c6d57fb756bf28b47ccc31f61909950237788 100644 --- a/applications/utilities/surface/surfaceLambdaMuSmooth/surfaceLambdaMuSmooth.C +++ b/applications/utilities/surface/surfaceLambdaMuSmooth/surfaceLambdaMuSmooth.C @@ -62,8 +62,8 @@ tmp<pointField> avg { const labelListList& pointEdges = s.pointEdges(); - tmp<pointField> tavg(new pointField(s.nPoints(), Zero)); - pointField& avg = tavg.ref(); + auto tavg = tmp<pointField>::New(s.nPoints(), Zero); + auto& avg = tavg.ref(); forAll(pointEdges, vertI) { diff --git a/applications/utilities/surface/surfaceMeshConvert/coordinateSystems b/applications/utilities/surface/surfaceMeshConvert/coordinateSystems index d8759c1e14c02ac1585067abc536b669d14f0bca..214153fcbbb73c5284443f4cd56666a795a78fe4 100644 --- a/applications/utilities/surface/surfaceMeshConvert/coordinateSystems +++ b/applications/utilities/surface/surfaceMeshConvert/coordinateSystems @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/applications/utilities/surface/surfaceMeshExtract/surfaceMeshExtract.C b/applications/utilities/surface/surfaceMeshExtract/surfaceMeshExtract.C index 21a9a20fc7d3c37ccb18ebe8dc94051aa168cb63..3387ad26411d3504e2bbd384a540e8dec8a2488f 100644 --- a/applications/utilities/surface/surfaceMeshExtract/surfaceMeshExtract.C +++ b/applications/utilities/surface/surfaceMeshExtract/surfaceMeshExtract.C @@ -51,6 +51,7 @@ Description #include "emptyPolyPatch.H" #include "processorPolyPatch.H" #include "ListListOps.H" +#include "stringListOps.H" // For stringListOps::findMatching() #include "indirectPrimitivePatch.H" #include "globalMeshData.H" #include "globalIndex.H" diff --git a/applications/utilities/surface/surfacePatch/searchableSurfaceModifier/cut.C b/applications/utilities/surface/surfacePatch/searchableSurfaceModifier/cut.C index 247b33116a8dbb2baede6d8f57d77def1b1e0ddb..465da8e412a30e3e7daef5c2a99dfa320d4616b4 100644 --- a/applications/utilities/surface/surfacePatch/searchableSurfaceModifier/cut.C +++ b/applications/utilities/surface/surfacePatch/searchableSurfaceModifier/cut.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -294,7 +294,7 @@ bool Foam::searchableSurfaceModifiers::cut::modify // Find the surfaces to cut with for (const wordRe& cutterName : cutterNames_) { - labelList geomIDs = findStrings(cutterName, geometry_.names()); + labelList geomIDs = wordRes::matching(cutterName, geometry_.names()); for (const label geomI : geomIDs) { diff --git a/applications/utilities/surface/surfacePatch/surfacePatch.C b/applications/utilities/surface/surfacePatch/surfacePatch.C index 0a2ea07db3ad3040f33e6e235c61f07d7a0a91d7..c07d22603a0e82322bcc749b443f7d752f80cb3a 100644 --- a/applications/utilities/surface/surfacePatch/surfacePatch.C +++ b/applications/utilities/surface/surfacePatch/surfacePatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -130,9 +130,14 @@ int main(int argc, char *argv[]) for (const entry& e : regionsDict) { - const keyType& regionName = e.keyword(); + const wordRe regionName(e.keyword()); const dictionary& regionDict = e.dict(); + labelList regionIDs + ( + wordRes::matching(regionName, surf.regions()) + ); + autoPtr<searchableSurfaceModifier> modifier ( searchableSurfaceModifier::New @@ -143,9 +148,6 @@ int main(int argc, char *argv[]) ) ); - labelList regionIDs = - findStrings(regionName, surf.regions()); - if (modifier().modify(regionIDs, surf)) { changed = true; diff --git a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C index e4674a5b63954146870213343727b259205c059b..6bcd3b20ea46041703d27b0fa7e3bb2ed9f690d0 100644 --- a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C +++ b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C @@ -56,7 +56,7 @@ Usage #include "argList.H" #include "MeshedSurfaces.H" -#include "stringListOps.H" +#include "stringListOps.H" // For stringListOps::findMatching() #include "geometricSurfacePatch.H" using namespace Foam; diff --git a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C index c8b1fa0ec2e59be3d3716498e1bb043b79555601..123c3431a2c3db0dca4ff7f18dafdef10cbb5e69 100644 --- a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C +++ b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,6 +58,7 @@ Description #include "axisAngleRotation.H" #include "EulerCoordinateRotation.H" #include "MeshedSurfaces.H" +#include "cylindricalCS.H" using namespace Foam; using namespace Foam::coordinateRotations; @@ -257,6 +258,12 @@ int main(int argc, char *argv[]) "type", "Output format (default: use file extension)" ); + argList::addOption + ( + "cylToCart", + "(originVec axisVec directionVec)", + "Tranform cylindrical coordinates to cartesian coordinates" + ); // Backward compatibility and with transformPoints argList::addOptionCompat("write-scale", {"scale", -2006}); @@ -277,7 +284,8 @@ int main(int argc, char *argv[]) "rollPitchYaw", "yawPitchRoll", "read-scale", - "write-scale" + "write-scale", + "cylToCart" }); if (!args.count(operationNames)) @@ -461,6 +469,24 @@ int main(int argc, char *argv[]) // Output scaling applyScaling(points, getScalingOpt("write-scale", args)); + // Conversion to cylindrical coords + if (args.found("cylToCart")) + { + vectorField n1n2(args.lookup("cylToCart")()); + n1n2[1].normalise(); + n1n2[2].normalise(); + + cylindricalCS ccs + ( + "ccs", + n1n2[0], + n1n2[1], + n1n2[2] + ); + + points = ccs.globalPosition(points); + } + surf1.movePoints(points); surf1.write(exportName, writeFileType); diff --git a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C index e248c45c979cad3911aed2aa86ad32e67ef0f425..0d29eaecf7da86959c6fb2e71f06075bd321a6ef 100644 --- a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C +++ b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -47,8 +47,8 @@ using namespace Foam; int main(int argc, char *argv[]) { - // Increase the precision of the output for JANAF coefficients - Ostream::defaultPrecision(10); + // More precision (for output of JANAF coefficients) + IOstream::minPrecision(10); argList::addNote ( @@ -99,9 +99,11 @@ int main(int argc, char *argv[]) // Temporary hack to splice the specie composition data into the thermo file // pending complete integration into the thermodynamics structure - OStringStream os; + OCharStream os; cr.speciesThermo().write(os); - dictionary thermoDict(IStringStream(os.str())()); + + ISpanStream is(os.view()); + dictionary thermoDict(is); // Add elements for (entry& dEntry : thermoDict) diff --git a/bin/foamInstallationTest b/bin/foamInstallationTest index 3949b0943746f17f236999a9f3a791fd26cade35..8adaabd6b8d025a2dd9e9af54391a11d2d24d626 100755 --- a/bin/foamInstallationTest +++ b/bin/foamInstallationTest @@ -210,7 +210,7 @@ reportExecutable() { APP_NAME="$1" APP_SPEC="$2" - APP_PATH="$(findExec $PATH $1)" + APP_PATH="$(findExec "$PATH" "$1")" VERSION="unknown" if [ -z "$APP_PATH" ] diff --git a/bin/foamUpgradeFiniteArea b/bin/foamUpgradeFiniteArea new file mode 100755 index 0000000000000000000000000000000000000000..f481f47b5f0c95005f92bfa4321f8ce25411e828 --- /dev/null +++ b/bin/foamUpgradeFiniteArea @@ -0,0 +1,322 @@ +#!/bin/bash +#------------------------------------------------------------------------------ +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | www.openfoam.com +# \\/ M anipulation | +#------------------------------------------------------------------------------ +# Copyright (C) 2023-2024 OpenCFD Ltd. +#------------------------------------------------------------------------------ +# License +# This file is part of OpenFOAM, distributed under GPL-3.0-or-later. +# +# Script +# foamUpgradeFiniteArea +# +# Description +# Relocate finite-area files to new sub-directory locations +# +#------------------------------------------------------------------------------ +printHelp() { + cat <<USAGE + +Usage: ${0##*/} [OPTION] +options: + -case=DIR Specify starting directory, default is cwd + -dry-run | -n Test without performing actions + -verbose | -v Additional verbosity + -force (currently ignored) + -link-back Link back from new finite-area/ to old locations + -no-mesh Do not move system/faMeshDefinition + -git Use 'git mv' when making changes + -help Print help and exit + +Relocate finite-area files to new sub-directory locations + +Equivalent options: + | -case=DIR | -case DIR | + +USAGE + exit 0 # A clean exit +} + +# Report error and exit +die() +{ + exec 1>&2 + echo + echo "Error encountered:" + while [ "$#" -ge 1 ]; do echo " $1"; shift; done + echo + echo "See '${0##*/} -help' for usage" + echo + exit 1 +} + +#------------------------------------------------------------------------------ + +# Parse options +unset caseDir optDryRun optGit optVerbose optLink optMeshDef hadError + +while [ "$#" -gt 0 ] +do + case "$1" in + (- | --) + shift + break # Stop option parsing + ;; + (-h | -help*) printHelp ;; + + (-n | -dry-run) optDryRun="(dry-run) " ;; + (-v | -verbose) optVerbose=true ;; + (-f | -force) echo "Ignored option: ${1%%=*}" 1>&2 ;; + (-link-back) optLink=back ;; +# (-link-only) optLink=forward ;; + (-no-mesh) optMeshDef=false ;; + (-git) optGit=true ;; + + (-case=*) + caseDir="${1#*=}" + ;; + (-case) + caseDir="$2" + [ "$#" -ge 2 ] || die "'$1' option requires an argument" + shift + ;; + + (-*) die "unknown option: $1" ;; + (*) die "unknown argument: $1" ;; + + esac + shift +done + +if [ -n "$caseDir" ] +then + cd "$caseDir" 2>/dev/null || { + echo "${0##*/}: No such directory $caseDir" 1>&2 + exit 2 + } +fi + +#------------------------------------------------------------------------------ + +# Proper umask +umask 022 + +# The commands +copy_cmd="cp -a${optVerbose:+ -v}" +move_cmd="mv${optVerbose:+ -v}" +link_cmd="ln -sf${optVerbose:+ -v}" +mkdir_cmd="mkdir -p" + +if [ -n "$optDryRun" ] +then + if [ -n "$optVerbose" ] + then + copy_cmd="echo cp -a" + move_cmd="echo mv" + link_cmd="echo ln -sf" + mkdir_cmd="echo mkdir -p" + else + copy_cmd=true + move_cmd=true + link_cmd=true + mkdir_cmd=true + fi +elif [ -n "$optGit" ] +then + move_cmd="git mv" + link_cmd="echo no symlink for git:" +fi + +regionDir="finite-area" + +#------------------------------------------------------------------------------ +# Various script parts +# +# awk : scan file for FoamFile { ... class NAME; } + +read -d '' getClass_awk << 'AWK_CONTENT' +BEGIN { state = 0 } # 0=begin, 1=header, 2=done + +/FoamFile/ { if (!state) { state = 1; next; } exit; } + +# FoamFile begin contents +/\{/ { if (state == 1) state = 2; next; } + +# FoamFile end contents +/\}/ { if (state == 2) exit; next; } + +/^[ ]*class[ ]/ { + if (state == 2) + { + sub("^[ ]*class[ ]+", "") + sub("[ ;]*$", "") + print + exit + } + next +} +AWK_CONTENT + + +# Check for FoamFile and return extracted 'class' +getFoamFile_class() +{ + local file="$1" + local class + + if grep -q FoamFile "$file" 2>/dev/null + then + # class="$(foamDictionary -disableFunctionEntries -entry FoamFile/class -value "$file" 2> stderr)" + class="$(awk -- "$getClass_awk" "$file")" + fi + echo "$class" +} + + +# Check if class corresponds to an finite-area field +# eg, areaScalarField, ... edgeVectorField +isAreaFieldClass() +{ + case "$1" in + (area*Field | edge*Field) return 0 ;; + esac + + return 1 +} + + +#------------------------------------------------------------------------------ + +#Debug# getFoamFile_class "system/faSchemes" + +#------------------------------------------------------------------------------ + +# Link back from the local finite-area/ directory to the current directory +# variables +# - regionDir = "finite-area" +# +performLinkBack() +{ + local file + + if [ -d "$regionDir" ] + then + find "$regionDir" -maxdepth 1 -type f 2>/dev/null | while read file + do + file="${file#*/}" + + if [ -f "$regionDir/$file" ] && [ ! -f "$file" ] + then + echo "${optDryRun} ln -s $regionDir/$file $file" 1>&2 + $link_cmd "$regionDir/$file" "$file" + fi + done + fi +} + + +# Move from current directory to local finite-area/ directory +# variables +# - regionDir = "finite-area" +# +performMove() +{ + local file="$1" + + if [ -f "$regionDir/$file" ] + then + echo "${optDryRun} already: $regionDir/$file" 1>&2 + elif [ -f "$file" ] + then + $mkdir_cmd "$regionDir" + echo "${optDryRun} mv $file -> $regionDir/" 1>&2 + $move_cmd "$file" "$regionDir/$file" + elif [ -n "$file" ] + then + echo "${optDryRun} no $file" 1>&2 + fi +} + + +#------------------------------------------------------------------------------ + +# system +# ---- +if [ -d system ] +then +( + cd system || exit + currDir="system" + + echo "${optDryRun}Examining files in $currDir/" 1>&2 + + performMove faSchemes + performMove faSolution + + if [ "$optMeshDef" = false ] + then + echo "${optDryRun} ignore: faMeshDefinition" 1>&2 + else + performMove faMeshDefinition + fi + + if [ -d "$regionDir" ] && [ "$optLink" = back ] + then + performLinkBack + fi +) +else + echo "${optDryRun}No system/ directory..." 1>&2 +fi + + +#------------------------------------------------------------------------------ + +# time dirs (initial conditions) +# ---- + +for timeDir in 0 0.orig +do + if [ -d "$timeDir" ] + then + ( + cd "$timeDir" || exit + currDir="$timeDir" + + echo "${optDryRun}Examining $currDir/" 1>&2 + + find . -maxdepth 1 -type f | while read file + do + file="${file#*/}" + + case "$file" in + (*.gz) + echo "${optDryRun} ignoring compressed file: $file" 1>&2 + continue + ;; + esac + + className="$(getFoamFile_class "$file")" + + if isAreaFieldClass "$className" + then + performMove "$file" + fi + done + + if [ -d "$regionDir" ] && [ "$optLink" = back ] + then + performLinkBack + fi + ) + else + echo "${optDryRun}No $timeDir/ directory..." 1>&2 + fi +done + + +#------------------------------------------------------------------------------ diff --git a/bin/tools/CleanFunctions b/bin/tools/CleanFunctions index 4b54ca4b34debf6b6ba14e3ad32aa65e10142260..bda0428f45909aeca035ef3540347c3652e13c57 100644 --- a/bin/tools/CleanFunctions +++ b/bin/tools/CleanFunctions @@ -181,7 +181,7 @@ cleanCase() # Debug output (blockMesh, decomposePar) rm -f \ blockTopology.vtu blockFaces.vtp blockTopology.obj blockCentres.obj \ - cellDist.vtu \ + cellDist.vtu decomposePar.vtu renumberMesh.vtu \ 0/cellDist # From mpirunDebug diff --git a/bin/tools/RunFunctions b/bin/tools/RunFunctions index 03bd194919ececf8c7d55a3d74ff4b28435f0964..4901d15ee0d0bf75f713817ed747f540ef7d3e74 100644 --- a/bin/tools/RunFunctions +++ b/bin/tools/RunFunctions @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2015-2023 OpenCFD Ltd. +# Copyright (C) 2015-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -501,9 +501,9 @@ cloneParallelCase() } -# Overwrite 0/ with the contents of 0.orig/ if it exists. -# The -processor option to do the processor directories instead -# +# If 0.orig/ exists, copy (overwrite) into 0/ [ie, serial case] +# * -processor : copy into processor directories instead +# * -all : copy into serial and processor directories restore0Dir() { if [ ! -d 0.orig ] @@ -513,35 +513,27 @@ restore0Dir() fi case "$1" in - -proc | -processor | -processors) - echo "Restore 0/ from 0.orig/ [processor directories]" + (-all | -proc | -processor*) + if [ "$1" = "-all" ] + then + echo "Restore 0/ from 0.orig/ [serial/processor dirs]" 1>&2 + \rm -rf 0 + \cp -r 0.orig 0 2>/dev/null + else + echo "Restore 0/ from 0.orig/ [processor dirs]" 1>&2 + fi \ls -d processor* | xargs -I {} \rm -rf ./{}/0 \ls -d processor* | xargs -I {} \cp -r 0.orig ./{}/0 > /dev/null 2>&1 - - # Remove '#include' directives from field dictionaries - # for collated format - if [ "$1" = "-processors" ] - then - ( - echo "Filter #include directives in processors/0:" - \cd processors/0 2>/dev/null || exit 0 - for file in $(grep -l "#include" * 2>/dev/null) - do - foamDictionary "$file" > "$file.$$." && mv "$file.$$." "$file" - echo " $file" - done | tr -d '\n' - echo - ) - fi ;; - *) - echo "Restore 0/ from 0.orig/" + (*) + echo "Restore 0/ from 0.orig/" 1>&2 \rm -rf 0 \cp -r 0.orig 0 2>/dev/null ;; esac + return 0 } diff --git a/bin/tools/foamPackRelease b/bin/tools/foamPackRelease index 399de71428e81b6184a3aea766f6485eb3157624..9851ad283d0bf69f80141e282cff9a37efdb6037 100755 --- a/bin/tools/foamPackRelease +++ b/bin/tools/foamPackRelease @@ -6,7 +6,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2019-2023 OpenCFD Ltd. +# Copyright (C) 2019-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -48,8 +48,16 @@ options: -name=NAME Stem for tar-file (default: auto) -output=DIR Output directory (default: ".") -prefix=NAME Prefix directory within tar-file (default: auto) - -pkg-modules Only package submodules - exclude OpenFOAM - -no-modules Exclude submodules + -pkg-modules Package 'modules' exclusively (no OpenFOAM) + -pkg-plugins Package 'plugins' exclusively (no OpenFOAM) + -no-extras Exclude 'modules, plugins,...' from source pack + -no-modules Exclude 'modules' from source pack (default: off) + -no-plugins Exclude 'plugins' from source pack (default: on) + -all-extras Include 'modules, plugins,...' into source pack + -with-modules Include 'modules' into source pack (default: on) + -with-plugins Include 'plugins' into source pack (default: off) + -modules=name1,.. Include specifed 'modules' into source pack + -plugins=name1,.. Include specifed 'plugins' into source pack -no-patch Ignore '_patch' number for output tar-file -no-prefix Do not prefix subdirectory -no-compress Disable compression @@ -67,7 +75,7 @@ Script generator for packing OpenFOAM sources and submodules. Eg, $Script -output=some-dir origin/master > create-tar-file - sh ./create-tar-file + bash ./create-tar-file $Script -tgz origin/master | bash @@ -90,11 +98,16 @@ die() #------------------------------------------------------------------------------- -outputDir="." +outputDir='.' versionSeparator='_' withPatchNum=true -unset compress packageApi withSource withModules prefixDir tarName -unset gitbase +# Default selections +select_source=true +select_modules=true +select_plugins=false + +unset compress gitbase packageApi prefixDir tarName + # Cleanup tarName to remove trailing '.tar', detect compression etc cleanTarName() { @@ -117,7 +130,7 @@ cleanTarName() { while [ "$#" -gt 0 ] do case "$1" in - -h | -help*) + -h | -help* | --help*) printHelp ;; -debian | -debian=[0-9]*) @@ -146,13 +159,43 @@ do prefixDir="${1#*=}" prefixDir="${prefixDir%/}" ;; - -pkg-modules) - withModules=true - withSource=false + -all-extras) + select_modules=true + select_plugins=true + ;; + -with-modules) + select_modules=true + ;; + -modules=*) + select_modules="${1#*=}" + : "${select_modules:=true}" + ;; + -with-plugins) + select_plugins=true + ;; + -plugins=*) + select_plugins="${1#*=}" + : "${select_plugins:=true}" + ;; + -no-extras) + select_modules=false + select_plugins=false ;; -no-modules) - withModules=false - withSource=true + select_modules=false + ;; + -no-plugins) + select_plugins=false + ;; + -pkg-modules) # Package modules exclusively + select_modules=true + select_plugins=false + select_source=false + ;; + -pkg-plugins) # Package plugins exclusively + select_modules=false + select_plugins=true + select_source=false ;; -no-patch) withPatchNum=false @@ -291,9 +334,15 @@ fi if [ -z "$prefixDir" ] then prefixDir="OpenFOAM-v${packageApi}" - if [ "$withSource" = false ] + if [ "$select_source" = false ] then - prefixDir="OpenFOAM-modules-v${packageApi}" + # Either -pkg-modules or -pkg-plugins, not both + if [ "$select_modules" != false ] + then + prefixDir="OpenFOAM-modules-v${packageApi}" + else + prefixDir="OpenFOAM-plugins-v${packageApi}" + fi fi elif [ "$prefixDir" = false ] then @@ -320,9 +369,15 @@ case "$tarName" in ('') tarName="OpenFOAM-v${packageApi}" - if [ "$withSource" = false ] + if [ "$select_source" = false ] then - tarName="OpenFOAM-modules-v${packageApi}" + # Either -pkg-modules or -pkg-plugins, not both + if [ "$select_modules" != false ] + then + tarName="OpenFOAM-modules-v${packageApi}" + else + tarName="OpenFOAM-plugins-v${packageApi}" + fi fi if [ "$withPatchNum" = false ] @@ -362,48 +417,56 @@ echo 'tar -cf "$outputDir/$tarName.tar" -T /dev/null' echo echo 'buildInfo="${prefixDir}${prefixDir:+@}META-INFO@build-info"' echo 'manifest0="${prefixDir}${prefixDir:+@}META-INFO@manifest.txt"' -echo 'manifest1="${prefixDir}${prefixDir:+@}META-INFO@modules-manifest.txt"' -echo '#--------' +echo 'manifest1="${prefixDir}${prefixDir:+@}META-INFO@manifest-modules.txt"' +echo 'manifest2="${prefixDir}${prefixDir:+@}META-INFO@manifest-plugins.txt"' #------------------------------------------------------------------------------ -# Sort out particulars related to modules -if [ "$withModules" = false ] +# Sort out particulars related to modules, source + +if [ "$select_source" = false ] then - echo '# No modules' - echo 'unset manifest1' + echo 'unset buildInfo manifest0 # No source' fi -if [ "$withSource" = false ] +if [ "$select_modules" = false ] then - echo '# No OpenFOAM source (package modules exclusively)' - echo 'unset buildInfo' - echo 'unset manifest0' + echo 'unset manifest1 # No modules' fi +if [ "$select_plugins" = false ] +then + echo 'unset manifest2 # No plugins' +fi + +echo '#--------' echo 'set -x' echo #------------------------------------------------------------------------------ -# OpenFOAM sources -if [ "$withSource" != false ] +# OpenFOAM sources (unless explicitly excluded) + +if [ "$select_source" != false ] then echo 'git -c tar.umask=0022 archive --format=tar ${prefixDir:+--prefix="$prefixDir/"} -o "$outputDir/$tarName.tar" "$head"' # Tag build information with underscore to distinguish from "real" build # information when git is available. - echo 'echo build="${build:+_}$build" > "$outputDir/$buildInfo"' - + echo echo 'build="${build:+_}$build" > "$outputDir/$buildInfo"' + echo + echo '# source' + echo 'manifestFile="$manifest0"' echo '{' echo ' echo api="$api"' echo ' echo patch="$patch"' echo ' echo head="$head"' echo ' echo' echo ' git ls-tree -r "$head"' - echo '} > "$outputDir/$manifest0"' + echo '} > "$outputDir/${manifestFile:?}"' + echo 'unset manifestFile' fi #------------------------------------------------------------------------------ -# Add in modules +# OpenFOAM modules/plugins # Recursive addition of submodule content. # NB: must be called from within the respective parent directory. @@ -411,11 +474,15 @@ fi # # packModule abc (implied cd) # packModule abc/def -# packModule abc/def/hij +# packModule abc/def/ghi # packModule() { local parent="$1" + local filter="$2" + + # Using filter=true means accept everything + if [ "$filter" = true ]; then unset filter; fi ( if [ -n "$parent" ] @@ -424,34 +491,51 @@ packModule() fi git ls-tree -d HEAD | \ - while read mode gittype sha1 module + while read mode gittype sha1 moduleName do [ "$gittype" == commit ] || continue - case "$module" in + case "$moduleName" in (. | ./) echo echo "# ----" - echo "# module $parent : not initialized?" + echo "# submodule $parent : not initialized?" echo "# ----" continue ;; esac # Fully qualified - module="$parent${parent:+/}$module" + module="$parent${parent:+/}$moduleName" + moduleName="${moduleName##*/}" echo - echo "# module" + echo "# submodule" echo "module='$module'" echo "commit='$sha1'" - echo "tmpTarFile='$tarName-${module##*/}.tar'" + + # Simplistic filtering + if [ -n "$filter" ] && [ "${filter/$moduleName/}" = "$filter" ] + then + echo "# ----" + echo '{' + echo ' echo' + echo ' echo "$module"' + echo ' echo commit="$commit"' + echo ' echo "# not exported"' + echo ' echo' + echo '} >> "$outputDir/${manifestFile:?}"' + continue + fi + + # Intermediate tar file for module contents + echo "tmpTarFile='$tarName-$moduleName.tar'" echo "# ----" echo '(' echo ' cd "$module" || exit' echo ' newPrefix="$prefixDir${prefixDir:+/}$module"' echo ' git -c tar.umask=0022 archive --format=tar --prefix="$newPrefix/" -o "$outputDir/$tmpTarFile" "$commit" || exit' - # Without {test,tests,validation} directories (potentially large) + echo ' # Without {test,tests,validation} directories (potentially large)' echo ' tar --delete -f "$outputDir/$tmpTarFile" "$newPrefix/test" "$newPrefix/tests" "$newPrefix/validation" 2>/dev/null' echo ' tar -Af "$outputDir/$tarName.tar" "$outputDir/$tmpTarFile"' echo ' {' @@ -461,32 +545,58 @@ packModule() echo ' echo' echo ' # Without {test,tests,validation} directories' echo ' git ls-tree -r "$commit" | sed -e '"'"'/\t\(test\|\tests\|validation\)\//d'"'" - echo ' } >> "$outputDir/$manifest1"' + echo ' } >> "$outputDir/${manifestFile:?}"' echo ')' - # Remove tmp tar file, even if git archive failed (creates zero-sized tar) + echo "# ----" echo 'rm -f "$outputDir/$tmpTarFile"' + # No filter for lower levels... packModule "$module" done ) } -if [ "$withModules" != false ] +# modules/ +if [ "$select_modules" != false ] then echo - echo '# Modules' + echo '# modules/' + echo 'manifestFile="$manifest1"' echo '{' echo ' echo "# OpenFOAM modules"' echo ' echo api="$api"' echo ' echo patch="$patch"' echo ' echo head="$head"' - echo '} > "$outputDir/$manifest1"' + echo '} > "$outputDir/${manifestFile:?}"' + + # With all or specified modules + packModule modules "$select_modules" + + echo + echo '{ echo; echo "# End"; } >> "$outputDir/${manifestFile:?}"' + echo 'unset manifestFile' +fi + +# plugins/ +if [ "$select_plugins" != false ] +then + echo + echo '# plugins/' + echo 'manifestFile="$manifest2"' + echo '{' + echo ' echo "# OpenFOAM plugins"' + echo ' echo api="$api"' + echo ' echo patch="$patch"' + echo ' echo head="$head"' + echo '} > "$outputDir/${manifestFile:?}"' - packModule modules + # With all or specified plugins + packModule plugins "$select_plugins" echo - echo '{ echo; echo "# End"; } >> "$outputDir/$manifest1"' + echo '{ echo; echo "# End"; } >> "$outputDir/${manifestFile:?}"' + echo 'unset manifestFile' fi #------------------------------------------------------------------------------ @@ -494,10 +604,10 @@ fi # Decode '@' in the names as '/' directory separator echo -echo "echo 'Adding build-info and manifest files'" +echo echo 'Adding build-info and manifest files' echo 'if pushd "$outputDir"; then' -echo "tar --owner=root --group=root --append --transform='s|@|/|g' -v -f \"\$tarName.tar\" \"\$buildInfo\" \"\$manifest0\" \"\$manifest1\"" -echo 'rm -f "$buildInfo" "$manifest0" "$manifest1"' +echo "tar --owner=root --group=root --append --transform='s|@|/|g' -v -f \"\$tarName.tar\" \"\$buildInfo\" \"\$manifest0\" \"\$manifest1\" \"\$manifest2\"" +echo 'rm -f "$buildInfo" "$manifest0" "$manifest1" "$manifest2"' echo 'popd; fi' echo @@ -509,18 +619,18 @@ echo "# -----------------------" # Compression case "$compress" in - ('') +('') echo "No compression requested" 1>&2 ;; - (gz | gzip) +(gz | gzip) echo "Using gzip compression" 1>&2 echo 'gzip -f -9 "$outputDir/$tarName.tar"' echo echo '# End of compression' ;; - (tgz) +(tgz) echo "Using gzip compression with tgz ending" 1>&2 echo 'gzip -c -9 "$outputDir/$tarName.tar" > "$outputDir/$tarName.tgz"' echo 'rm -f "$outputDir/$tarName.tar"' @@ -528,28 +638,28 @@ case "$compress" in echo '# End of compression' ;; - (bz | bzip | bzip2) +(bz | bzip | bzip2) echo "Using bzip2 compression" 1>&2 echo 'bzip2 -f -9 "$outputDir/$tarName.tar"' echo echo '# End of compression' ;; - (xz) +(xz) echo "Using xz compression" 1>&2 echo 'xz -f -9 "$outputDir/$tarName.tar"' echo echo '# End of compression' ;; - (zst | zstd) +(zst | zstd) echo "Using zstd compression" 1>&2 echo 'zstd --rm -f -9 "$outputDir/$tarName.tar"' echo echo '# End of compression' ;; - (*) +(*) echo "Unknown compression scheme: $compress" 1>&2 ;; esac diff --git a/doc/Build.md b/doc/Build.md index 3120428883a01ae97b425541e6ff90e3fae27faf..bb20e72f8d6bb75d42fa6a39726657c4296282c4 100644 --- a/doc/Build.md +++ b/doc/Build.md @@ -1,23 +1,23 @@ ## Getting the code -Links to all code packs are available on https://dl.openfoam.com. For OpenFOAM-v2312: +Links to all code packs are available on https://dl.openfoam.com. For OpenFOAM-v2406: - https://dl.openfoam.com/source/latest/ -- Source: https://dl.openfoam.com/source/v2312/OpenFOAM-v2312.tgz -- ThirdParty: https://dl.openfoam.com/source/v2312/ThirdParty-v2312.tgz +- Source: https://dl.openfoam.com/source/v2406/OpenFOAM-v2406.tgz +- ThirdParty: https://dl.openfoam.com/source/v2406/ThirdParty-v2406.tgz ## OpenFOAM® Quick Build Guide Prior to building, ensure that the [system requirements][link openfoam-require] are satisfied (including any special [cross-compiling][wiki-cross-compile] considerations), and source the correct OpenFOAM environment. -For example, for the OpenFOAM-v2312 version: +For example, for the OpenFOAM-v2406 version: ``` -source <installation path>/OpenFOAM-v2312/etc/bashrc +source <installation path>/OpenFOAM-v2406/etc/bashrc ``` e.g. if installed under the `~/openfoam` directory ``` -source ~/openfoam/OpenFOAM-v2312/etc/bashrc +source ~/openfoam/OpenFOAM-v2406/etc/bashrc ``` @@ -157,4 +157,4 @@ More details in the [ThirdParty build guide][link third-build]. [wiki-config]: https://develop.openfoam.com/Development/openfoam/-/wikis/configuring --- -Copyright 2019-2023 OpenCFD Ltd +Copyright 2019-2024 OpenCFD Ltd diff --git a/doc/BuildIssues.md b/doc/BuildIssues.md index 2726ea8a2c19d2695e0fc230cb20329c1c9e5b1b..44b0202490f4dd629e09b946d9acb044754df722 100644 --- a/doc/BuildIssues.md +++ b/doc/BuildIssues.md @@ -1,4 +1,4 @@ -## Known Build Issues (v2312, v2306, v2212, v2206, v2112, v2106, v2012) +## Known Build Issues (v2406, v2312, v2306, v2212, v2206, v2112, v2106, v2012) ### Windows cross-compilation @@ -188,4 +188,4 @@ and attempt to install a `paraview~qt` version instead. [wiki-config]: https://develop.openfoam.com/Development/openfoam/-/wikis/configuring --- -Copyright 2019-2023 OpenCFD Ltd +Copyright 2019-2024 OpenCFD Ltd diff --git a/doc/Doxygen/Doxyfile b/doc/Doxygen/Doxyfile index ee97f543f500d4cd18d965825e6e65353d21c367..8c49c32b267dc6f440e33a4a3db0686a202b5d79 100644 --- a/doc/Doxygen/Doxyfile +++ b/doc/Doxygen/Doxyfile @@ -801,6 +801,7 @@ INPUT_ENCODING = UTF-8 FILE_PATTERNS = *.H \ *.C \ + *.cpp \ *.dox # The RECURSIVE tag can be used to specify whether or not subdirectories should @@ -1396,7 +1397,7 @@ DISABLE_INDEX = NO # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -GENERATE_TREEVIEW = NO +GENERATE_TREEVIEW = YES # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that # doxygen will group on one line in the generated HTML documentation. diff --git a/etc/bashrc b/etc/bashrc index 548f726cd228ba7dde3d37530ce7cc6bb003814d..c65844adafc65d040f3c6b1ba883ec58c53156ee 100644 --- a/etc/bashrc +++ b/etc/bashrc @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -55,7 +55,7 @@ # [WM_PROJECT_VERSION] - A human-readable version name # A development version is often named 'com' - as in www.openfoam.com -export WM_PROJECT_VERSION=v2312 +export WM_PROJECT_VERSION=v2406 #------------------------------------------------------------------------------ # Configuration environment variables. diff --git a/etc/caseDicts/annotated/PDRMeshDict b/etc/caseDicts/annotated/PDRMeshDict index f57cf29e337a21cc81c055709fd4c4861ef8f7a5..f522a64eb1c2612f2060cf49d44eb454e251c48a 100644 --- a/etc/caseDicts/annotated/PDRMeshDict +++ b/etc/caseDicts/annotated/PDRMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/PDRblockMeshDict b/etc/caseDicts/annotated/PDRblockMeshDict index 55ecc39dd058b86df02eee4253396d2f2a9cdf73..dfceb8b01987f824b9ed0ffc46ec4573cb433a77 100644 --- a/etc/caseDicts/annotated/PDRblockMeshDict +++ b/etc/caseDicts/annotated/PDRblockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/ROMfieldsDict b/etc/caseDicts/annotated/ROMfieldsDict index 45cc581a14d4f5b1326762fd9b364d48accf04d1..2adb13165b04cfae06109e4a697528e2d0b0fc5b 100644 --- a/etc/caseDicts/annotated/ROMfieldsDict +++ b/etc/caseDicts/annotated/ROMfieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/adiabaticFlameTDict b/etc/caseDicts/annotated/adiabaticFlameTDict index 524c0a23252ebdee708d765a7b3b46145c1b6755..e36b8db8479b5452810d9f9df0b331a3b53ad30f 100644 --- a/etc/caseDicts/annotated/adiabaticFlameTDict +++ b/etc/caseDicts/annotated/adiabaticFlameTDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/adiosWriteDict b/etc/caseDicts/annotated/adiosWriteDict index 424bb8fd5c932cca1080131e2472a1a7f650a6de..87efd373d9ebdc80d561a3ad3b7d54facbf4eb62 100644 --- a/etc/caseDicts/annotated/adiosWriteDict +++ b/etc/caseDicts/annotated/adiosWriteDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/blockMeshDict b/etc/caseDicts/annotated/blockMeshDict index a8b60077718323074cde050d0b599138a69833b5..0dff06a88dd5bac9913b79ec12425c110411567c 100644 --- a/etc/caseDicts/annotated/blockMeshDict +++ b/etc/caseDicts/annotated/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/boxTurbDict b/etc/caseDicts/annotated/boxTurbDict index 36f140f68f927e59d76e6ab65f3ffb2e1d41683f..7a690399d515fb59d5442e27ae7eed32bc2de2cd 100644 --- a/etc/caseDicts/annotated/boxTurbDict +++ b/etc/caseDicts/annotated/boxTurbDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/changeDictionaryDict b/etc/caseDicts/annotated/changeDictionaryDict index 64bf8ffd7539ffb32e0b248328014055efbf8420..a1a3415fa66fd9056105e2ef70df34c9b693c60a 100644 --- a/etc/caseDicts/annotated/changeDictionaryDict +++ b/etc/caseDicts/annotated/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/collapseDict b/etc/caseDicts/annotated/collapseDict index cf1ae7e97e77be7e5b6cee6a619bb8fec4c69a97..0e0472c7e864d64c0b3f1aa0c9b1d7248ec359b3 100644 --- a/etc/caseDicts/annotated/collapseDict +++ b/etc/caseDicts/annotated/collapseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/createBafflesDict b/etc/caseDicts/annotated/createBafflesDict index 6a4f5282c027ee5771dbee8d683b337a33610740..882907eae6c052ebe82b90b53d8c39e45a8a4f6d 100644 --- a/etc/caseDicts/annotated/createBafflesDict +++ b/etc/caseDicts/annotated/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/createBoxTurbDict b/etc/caseDicts/annotated/createBoxTurbDict index 3f0d64ec742ee3c3e2c9dd2144d60bae4ed2598f..8d01b5e8837dca71d39b84ffb2d8ec825a479912 100644 --- a/etc/caseDicts/annotated/createBoxTurbDict +++ b/etc/caseDicts/annotated/createBoxTurbDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/createPatchDict b/etc/caseDicts/annotated/createPatchDict index af13e54ddb581e34530afd0fdd12d3ff9ff0e3ee..8582a9c698c91e9e48ba7aa9af505d066d4ee6db 100644 --- a/etc/caseDicts/annotated/createPatchDict +++ b/etc/caseDicts/annotated/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/decomposeParDict b/etc/caseDicts/annotated/decomposeParDict index 5d93752807152a317a56f7c0c347547bbc632775..53c44c33e6c254a5be39d940af4592a90b750863 100644 --- a/etc/caseDicts/annotated/decomposeParDict +++ b/etc/caseDicts/annotated/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/dsmcInitialiseDict b/etc/caseDicts/annotated/dsmcInitialiseDict index 81658c89837bffd7b89ad9fbe4ddf34c923f63f8..23cd78fef879ab17aada7059f71a9c389d6e754d 100644 --- a/etc/caseDicts/annotated/dsmcInitialiseDict +++ b/etc/caseDicts/annotated/dsmcInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/equilibriumFlameTDict b/etc/caseDicts/annotated/equilibriumFlameTDict index 61335b218cacdfc98daa0029ee3430638da98a9f..b8726508b23d0259948ad4e12ac7dce0b3816fb4 100644 --- a/etc/caseDicts/annotated/equilibriumFlameTDict +++ b/etc/caseDicts/annotated/equilibriumFlameTDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/extrude2DMeshDict b/etc/caseDicts/annotated/extrude2DMeshDict index 7c1ea7831e265a7e3720dbbc41caa78fcd5109c6..a43a554dbf56ac982d7131366da4ee481e47a73f 100644 --- a/etc/caseDicts/annotated/extrude2DMeshDict +++ b/etc/caseDicts/annotated/extrude2DMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/extrudeMeshDict b/etc/caseDicts/annotated/extrudeMeshDict index d8ad0e0e6a0438e634f7e5609a2117b7fe612713..6832d739bb120399487b474470cc1d0447f8a331 100644 --- a/etc/caseDicts/annotated/extrudeMeshDict +++ b/etc/caseDicts/annotated/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/extrudeToRegionMeshDict b/etc/caseDicts/annotated/extrudeToRegionMeshDict index fa9865b4ddfe8a0c4d992e29f7ef5260644502d9..acb2808bc058c4970e55fc28709d9245f2446002 100644 --- a/etc/caseDicts/annotated/extrudeToRegionMeshDict +++ b/etc/caseDicts/annotated/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/fieldCoordinateSystemTransformDict b/etc/caseDicts/annotated/fieldCoordinateSystemTransformDict index 575d04dc07c244628fcb656fec0cf81545c7987a..2ef2aac82fdf19126c8c6e66688f38871fa48cf9 100644 --- a/etc/caseDicts/annotated/fieldCoordinateSystemTransformDict +++ b/etc/caseDicts/annotated/fieldCoordinateSystemTransformDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/foamDataToFluentDict b/etc/caseDicts/annotated/foamDataToFluentDict index ae41460adbd6072782553a9e8de7eb7e2958b1d3..93ab47f37d470286a74d86a884ea44e42d0f581a 100644 --- a/etc/caseDicts/annotated/foamDataToFluentDict +++ b/etc/caseDicts/annotated/foamDataToFluentDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/foamyHexMeshDict b/etc/caseDicts/annotated/foamyHexMeshDict index 7b5039f11db1defd07257b888d25ed4c2a603410..dec5dfc00929058f03766d159d31288f43eef0d0 100644 --- a/etc/caseDicts/annotated/foamyHexMeshDict +++ b/etc/caseDicts/annotated/foamyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/foamyQuadMeshDict b/etc/caseDicts/annotated/foamyQuadMeshDict index a1afe674183a20444ef0b27b3b05cf0f52e659f8..61787c87e25ac5a9b164e0de067a4d11acfcb01a 100644 --- a/etc/caseDicts/annotated/foamyQuadMeshDict +++ b/etc/caseDicts/annotated/foamyQuadMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mapFieldsDict b/etc/caseDicts/annotated/mapFieldsDict index 50f07809fbdb9fb91e69c633432932c9e18d4bca..e693c2847b02c6fc7a0c00d36c77d56515076022 100644 --- a/etc/caseDicts/annotated/mapFieldsDict +++ b/etc/caseDicts/annotated/mapFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mdEquilibrationDict b/etc/caseDicts/annotated/mdEquilibrationDict index 15e196598dd6808fb54349141183e0d9205b1fc6..603a076d856ec54e01cdfd30e49cfdb3274932a0 100644 --- a/etc/caseDicts/annotated/mdEquilibrationDict +++ b/etc/caseDicts/annotated/mdEquilibrationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mdInitialiseDict b/etc/caseDicts/annotated/mdInitialiseDict index fae9d5746f4eb494d8700277df98750cb338e344..9fe5cc1e1e095ffd2507cfa23620324df25f4d07 100644 --- a/etc/caseDicts/annotated/mdInitialiseDict +++ b/etc/caseDicts/annotated/mdInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mergeOrSplitBafflesDict b/etc/caseDicts/annotated/mergeOrSplitBafflesDict index bbeeed15125f875ecf4fe94c03932db7932e3d7e..bf125ccd0e7e23ae63e69b4a3f40d58dacc04d12 100644 --- a/etc/caseDicts/annotated/mergeOrSplitBafflesDict +++ b/etc/caseDicts/annotated/mergeOrSplitBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/meshQualityDict-collapseEdges b/etc/caseDicts/annotated/meshQualityDict-collapseEdges index 7f4d4a465b3332f8d81194b8963bcca4bbc42d36..3e10a9330e65213255d386e496f3502709e6d7ee 100644 --- a/etc/caseDicts/annotated/meshQualityDict-collapseEdges +++ b/etc/caseDicts/annotated/meshQualityDict-collapseEdges @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mirrorMeshDict b/etc/caseDicts/annotated/mirrorMeshDict index 5c3448f471acd3b366a71d60f8edbaa1ba7376a4..695508c817237c1d175f04f525538efa22dbf6b3 100644 --- a/etc/caseDicts/annotated/mirrorMeshDict +++ b/etc/caseDicts/annotated/mirrorMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/mixtureAdiabaticFlameTDict b/etc/caseDicts/annotated/mixtureAdiabaticFlameTDict index fda6bb78cc9158ec0ae0026b157acbe684861866..13c1eeaeb7a31188a4a744fed522fc75d6f97119 100644 --- a/etc/caseDicts/annotated/mixtureAdiabaticFlameTDict +++ b/etc/caseDicts/annotated/mixtureAdiabaticFlameTDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/modifyMeshDict b/etc/caseDicts/annotated/modifyMeshDict index c9c2f996b392de1f96b949c01841565a6291fc2f..a41c29d364610c4bbb7fb3e06719520eabad9018 100644 --- a/etc/caseDicts/annotated/modifyMeshDict +++ b/etc/caseDicts/annotated/modifyMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/noiseDict b/etc/caseDicts/annotated/noiseDict index 88c447a3e180402b9dd762c7575c804b97f9d2e6..768d98f63baa4e16ba31608502eb3c2ace8c5e3d 100644 --- a/etc/caseDicts/annotated/noiseDict +++ b/etc/caseDicts/annotated/noiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/obstaclesDict b/etc/caseDicts/annotated/obstaclesDict index a1cc2a9ccf43eef566de5f83bd034f7b714eabb4..d08689f34424d6c86f95cca383b12830f8f30618 100644 --- a/etc/caseDicts/annotated/obstaclesDict +++ b/etc/caseDicts/annotated/obstaclesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/optimisationDict b/etc/caseDicts/annotated/optimisationDict index f9af8096c55d675b9db2fe922d31e0e48371f9d5..56b8f75a3e09ada80c77c730fc5b17856e8e97ee 100644 --- a/etc/caseDicts/annotated/optimisationDict +++ b/etc/caseDicts/annotated/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/particleTrackDict b/etc/caseDicts/annotated/particleTrackDict index e273282153b5e8da88e1d6b648a762cdd76ca9c5..088e54a28b95ed694079ad0dbc164cf137047dc0 100644 --- a/etc/caseDicts/annotated/particleTrackDict +++ b/etc/caseDicts/annotated/particleTrackDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/pdfDict b/etc/caseDicts/annotated/pdfDict index 1823e64eb0ce37940e0569a5e8acc862316c7505..ec213e555f4adbac27b08f5a0755e595d53a7086 100644 --- a/etc/caseDicts/annotated/pdfDict +++ b/etc/caseDicts/annotated/pdfDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/postChannelDict b/etc/caseDicts/annotated/postChannelDict index 91912aa45e5b412c0befe83397d308819cefa418..6552c217dd959dd066de1bb9536630a9121db0f6 100644 --- a/etc/caseDicts/annotated/postChannelDict +++ b/etc/caseDicts/annotated/postChannelDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/potentialDict b/etc/caseDicts/annotated/potentialDict index 8bb3354b9b63a29c4e7918885f934201d24bd5a1..176949a13ef339cb1c000fec8d921999f7a0da37 100644 --- a/etc/caseDicts/annotated/potentialDict +++ b/etc/caseDicts/annotated/potentialDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/probesDict b/etc/caseDicts/annotated/probesDict index 088055a78dc6c0734f93705dac5d770675c6a9c4..61486f97f72b3d4aa4987ec738a3188306109a27 100644 --- a/etc/caseDicts/annotated/probesDict +++ b/etc/caseDicts/annotated/probesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/processorFieldDict b/etc/caseDicts/annotated/processorFieldDict index 7dce9c838d3efbac0ea5ee62530ab51667ee47af..c87e4281d4aee37216b56e8153e12388e5a428c7 100644 --- a/etc/caseDicts/annotated/processorFieldDict +++ b/etc/caseDicts/annotated/processorFieldDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/readFieldsDict b/etc/caseDicts/annotated/readFieldsDict index 278e97062faa38e03a8be80d6d71797bb1859678..7f27880829deb5ba370178f52117e04a0a19bd10 100644 --- a/etc/caseDicts/annotated/readFieldsDict +++ b/etc/caseDicts/annotated/readFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/refineMeshDict b/etc/caseDicts/annotated/refineMeshDict index 87f3badec1e620d2ee697f7460f7bd1409eabd39..8da26d99df7479863bac9567c09d57f2988b33ce 100644 --- a/etc/caseDicts/annotated/refineMeshDict +++ b/etc/caseDicts/annotated/refineMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/renumberMeshDict b/etc/caseDicts/annotated/renumberMeshDict index 00ce52e88518415d670a229721137c431a5751bb..1bf012a57eff5a811ae1451d8fa9896a46d204b0 100644 --- a/etc/caseDicts/annotated/renumberMeshDict +++ b/etc/caseDicts/annotated/renumberMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -15,8 +15,12 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -// Write maps from renumbered back to original mesh -writeMaps false; +// Additional libraries +//libs (SloanRenumber); +//libs (zoltanRenumber); + +// Optional entry: write maps from renumbered back to original mesh +writeMaps false; // Optional entry: sort cells on coupled boundaries to last for use with // e.g. nonBlockingGaussSeidel. @@ -34,63 +38,73 @@ sortCoupledFaceCells false; // Optional entry: sort points into internal and boundary points //orderPoints false; +// Optional entry (experimental) - for block-by-block (blockSize > 0) option: +// - sort intra-region and iter-region faces separately. +// This will likely lead to non-upper triangular ordering between regions. +//regionFaceOrder false; + method CuthillMcKee; -//method Sloan; +//method RCM; // == reverseCuthillMcKee; +//method Sloan; //<- libs (zoltanRenumber); //method manual; //method random; //method structured; //method spring; -//method zoltan; // only if compiled with zoltan support +//method zoltan; //<- libs (zoltanRenumber); //CuthillMcKeeCoeffs //{ -// // Reverse CuthillMcKee (RCM) or plain -// reverse true; +// // Plain or reverse CuthillMcKee (RCM) +// reverse true; //} manualCoeffs { // In system directory: new-to-original (i.e. order) labelIOList - dataFile "cellMap"; + dataFile "cellMap"; } // For extruded (i.e. structured in one direction) meshes structuredCoeffs { - // Patches that mesh was extruded from. These determine the starting - // layer of cells - patches (movingWall); + // Patches that mesh was extruded from. + // These determine the starting layer of cells + patches (movingWall); + // Method to renumber the starting layer of cells - method random; + method random; // Renumber in columns (depthFirst) or in layers - depthFirst true; + depthFirst true; // Reverse ordering - reverse false; + reverse false; } springCoeffs { // Maximum jump of cell indices. Is fraction of number of cells - maxCo 0.01; + maxCo 0.01; // Limit the amount of movement; the fraction maxCo gets decreased // with every iteration freezeFraction 0.999; // Maximum number of iterations - maxIter 1000; + maxIter 1000; + + // Enable/disable verbosity + verbose true; } blockCoeffs { - method scotch; - //method hierarchical; + method scotch; + //method hierarchical; //hierarchicalCoeffs //{ // n (1 2 1); diff --git a/etc/caseDicts/annotated/runTimePostProcessingDict b/etc/caseDicts/annotated/runTimePostProcessingDict index 323c059e216d8180a7face712b6bc2ce8d20576f..f43e23cf568818fbef68a0fd78487c5cf2b96cec 100644 --- a/etc/caseDicts/annotated/runTimePostProcessingDict +++ b/etc/caseDicts/annotated/runTimePostProcessingDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/sampleDict b/etc/caseDicts/annotated/sampleDict index 98f4fef066552f0d97cfad2d164b25a9a09d8369..beeaa1f0db07690c4ef8bdf96a9fdd8dbce3fb37 100644 --- a/etc/caseDicts/annotated/sampleDict +++ b/etc/caseDicts/annotated/sampleDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -72,7 +72,7 @@ fields // midPoint one point per cell, inbetween two face intersections // midPointAndFace combination of face and midPoint // -// polyLine specified points, not nessecary on line, uses +// polyLine specified points, not necessary on line, uses // tracking // cloud specified points, uses findCell // triSurfaceMeshPointSet points of triSurface diff --git a/etc/caseDicts/annotated/selectCellsDict b/etc/caseDicts/annotated/selectCellsDict index d5a376c1336a7210c4c09f1256cb3081ec6acbaa..796961429487361d0a59553d12ac1d60cbf7ff20 100644 --- a/etc/caseDicts/annotated/selectCellsDict +++ b/etc/caseDicts/annotated/selectCellsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/setAlphaFieldDict b/etc/caseDicts/annotated/setAlphaFieldDict index f3a6208d8cc229bca4e947ac4299db3ed4566443..a3db655c4182eef4f365b61c1cf5c2af3651b5c5 100644 --- a/etc/caseDicts/annotated/setAlphaFieldDict +++ b/etc/caseDicts/annotated/setAlphaFieldDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/setExprBoundaryFieldsDict b/etc/caseDicts/annotated/setExprBoundaryFieldsDict index de82bfbb9d84fe42d323afe09fb66a22a3241ec9..39390e88f6ea217eb40709f2324e0e7cedea77fd 100644 --- a/etc/caseDicts/annotated/setExprBoundaryFieldsDict +++ b/etc/caseDicts/annotated/setExprBoundaryFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/setExprFieldsDict b/etc/caseDicts/annotated/setExprFieldsDict index f5b85f5f8387f0bb8ba74b57b8645c91c64c37ad..ee3c92f76802fe508e86b2ecf44b04d2369ae700 100644 --- a/etc/caseDicts/annotated/setExprFieldsDict +++ b/etc/caseDicts/annotated/setExprFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/setFieldsDict b/etc/caseDicts/annotated/setFieldsDict index 329a63c1af64162326dfc996d425cc851a0470af..f36e68f7e835234120b44365847b8f6e270cc5fe 100644 --- a/etc/caseDicts/annotated/setFieldsDict +++ b/etc/caseDicts/annotated/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/snappyHexMeshDict b/etc/caseDicts/annotated/snappyHexMeshDict index 522283b15035b8bc64423ed1aee09754cedc9d8a..c45b2bfa65ee8a3d5d418466321bf9bb533dc91f 100644 --- a/etc/caseDicts/annotated/snappyHexMeshDict +++ b/etc/caseDicts/annotated/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/snappyRefineMeshDict b/etc/caseDicts/annotated/snappyRefineMeshDict index f06dc2f65dc98846f7700395671115a390fe691d..2c1879ea78288c61f863af4e6f8c82116e6bf861 100644 --- a/etc/caseDicts/annotated/snappyRefineMeshDict +++ b/etc/caseDicts/annotated/snappyRefineMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/stitchMeshDict b/etc/caseDicts/annotated/stitchMeshDict index 0883fe821d16673b5e3dc3c77ae5b55e8288c548..c0fdaac81d70c295d99c4559fc2333ebc5f5e71d 100644 --- a/etc/caseDicts/annotated/stitchMeshDict +++ b/etc/caseDicts/annotated/stitchMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/surfaceFeatureExtractDict b/etc/caseDicts/annotated/surfaceFeatureExtractDict index 83f94a06827fd4f7fb431c72738f0bad9fd7cb0d..ce9e135edd76ca3f4af3b24a10e3adbab93eda25 100644 --- a/etc/caseDicts/annotated/surfaceFeatureExtractDict +++ b/etc/caseDicts/annotated/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/surfaceHookUpDict b/etc/caseDicts/annotated/surfaceHookUpDict index 9703185357e965dd10b9de2076bf424a76102685..94e4f49b63cddbea22e49817d1296a0b78d18c29 100644 --- a/etc/caseDicts/annotated/surfaceHookUpDict +++ b/etc/caseDicts/annotated/surfaceHookUpDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/surfacePatchDict b/etc/caseDicts/annotated/surfacePatchDict index 6bd8c085dc6484705acb8517cc586eb5fcb098fb..b1581c94f4bbac2f1049984257c42872b7b0102c 100644 --- a/etc/caseDicts/annotated/surfacePatchDict +++ b/etc/caseDicts/annotated/surfacePatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/surfaceSubsetDict b/etc/caseDicts/annotated/surfaceSubsetDict index b698122d5c2389930ec47d6550f672c90864da58..06366738d19f51de36d1d6085856a4e332a5c100 100644 --- a/etc/caseDicts/annotated/surfaceSubsetDict +++ b/etc/caseDicts/annotated/surfaceSubsetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/toleranceDict b/etc/caseDicts/annotated/toleranceDict index b80e3c017aeddd2bc16d24ac3e02e3cc29a7fd84..169b6c4f07081eb2354a7c7ba57f5b1029a0d42d 100644 --- a/etc/caseDicts/annotated/toleranceDict +++ b/etc/caseDicts/annotated/toleranceDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/topoSetDict b/etc/caseDicts/annotated/topoSetDict index 789a7e027beac3d0537c2af0963d3b23baf4c524..5f8d13684f8564c43fecda08d5af05d7af3913c0 100644 --- a/etc/caseDicts/annotated/topoSetDict +++ b/etc/caseDicts/annotated/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -103,6 +103,16 @@ actions source boxToCell; box (0.04 0 0)(0.06 100 100); } + + // Example: create faceZone from explicit contents. Assumes faceZone same + // orientation as face (flipMap is false) + { + name f0; + type faceZoneSet; + action new; + source labelToFace; + value (2); + } ); // ************************************************************************* // diff --git a/etc/caseDicts/annotated/topoSetSourcesDict b/etc/caseDicts/annotated/topoSetSourcesDict index 11e2608439d5abb81dd29f86b4d41b2a277d16f6..58727baa7e3fa6a61731f581188855d5fc2058ea 100644 --- a/etc/caseDicts/annotated/topoSetSourcesDict +++ b/etc/caseDicts/annotated/topoSetSourcesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -34,6 +34,16 @@ cellSet_doc // or min (0 0 0); max (1 1 1); + + // Optional the cell centres can be transformed before being used. This + // can be used to simulate moving selections in transient simulations. + // Any solidBodyMotionFunction can be used. Note: the same optional + // transformation can be used for any selection requiring face centres + // or point locations. + solidBodyMotionFunction linearMotion + { + velocity (-0.1 -0.1 0); + } } @@ -43,6 +53,10 @@ cellSet_doc sets (c1 c2); // or set c1; + // or + zones (c1Zone c2Zone); + // or + zone c1Zone; } @@ -54,6 +68,8 @@ cellSet_doc radius 5.0; // optional innerRadius 1.0; + + // See boxToCell for optional transformation of the cell centres } //- Select based on faceSet @@ -62,6 +78,10 @@ cellSet_doc sets (f0 f1); // or set f0; // Name of faceSet + // or + zones (f0Zone f1Zone); + // or + zone f0Zone; //- selection option (mandatory) option any; // cell with any face in faceSet @@ -109,6 +129,8 @@ cellSet_doc { source nearestToCell; points ((0 0 0) (1 1 1)(2 2 2)); + + // See boxToCell for optional transformation of the cell centres } @@ -127,6 +149,10 @@ cellSet_doc sets (p0 p1); // or sets p0; + // or + zones (p0Zone p1Zone); + // or + zone p0Zone; option any; // cell with any point in pointSet //option edge; // cell with an edge with both points in pointSet @@ -150,6 +176,8 @@ cellSet_doc i (0.2 0.2 0); j (-0.2 0.2 0); k (10 10 10); + + // See boxToCell for optional transformation of the cell centres } @@ -158,6 +186,8 @@ cellSet_doc source searchableSurfaceToCell; surfaceType triSurfaceMesh; // Type of surface surfaceName blob.obj; // Name for surface object + + // See boxToCell for optional transformation of the cell centres } @@ -176,6 +206,8 @@ cellSet_doc // optional innerRadius 1.0; + + // See boxToCell for optional transformation of the cell centres } @@ -197,6 +229,7 @@ cellSet_doc useSurfaceOrientation false; // use closed surface inside/outside // test (ignores includeCut, // outsidePoints) + // See boxToCell for optional transformation of the cell centres } @@ -245,6 +278,8 @@ faceSet_doc // or min (0 0 0); max (1 1 1); + + // See boxToCell for optional transformation of the face centres } @@ -254,6 +289,10 @@ faceSet_doc sets (c0 c1); // or set c0; // Name of cellSet + // or + zones (c0Zone c1Zone); + // or + zone c0Zone; option all; // All faces of cells //option both; // Only faces with owner+neighbour in cellSet @@ -270,6 +309,8 @@ faceSet_doc radius 5.0; // optional innerRadius 1.0; + + // See boxToCell for optional transformation of the face centres } @@ -310,6 +351,10 @@ faceSet_doc sets (p0 p1); // or set p0; // Name of pointSet + // or + zones (p0Zone p1Zone); + // or + zone p0Zone; option any; // Faces using any point in pointSet //option all // Faces with all points in pointSet @@ -332,6 +377,8 @@ faceSet_doc source searchableSurfaceToFace; surfaceType triSurfaceMesh; // Type of surface surfaceName blob.obj; // Name for surface object + + // See boxToCell for optional transformation of the face centres } @@ -342,6 +389,8 @@ faceSet_doc radius 5.0; // optional innerRadius 1.0; + + // See boxToCell for optional transformation of the face centres } @@ -390,6 +439,8 @@ pointSet_doc // or min (0 0 0); max (1 1 1); + + // See boxToCell for optional transformation of the points } @@ -399,6 +450,10 @@ pointSet_doc sets (c1 c2); // or set c1; + // or + zones (c1Zone c2Zone); + // or + zone c1Zone; option all; // all points of cell } @@ -412,6 +467,7 @@ pointSet_doc radius 5.0; // optional innerRadius 1.0; + // See boxToCell for optional transformation of the points } @@ -421,6 +477,10 @@ pointSet_doc sets (f1 f2); // or set f1; + // or + zones (f1Zone f2Zone); + // or + zone f1Zone; option all; // all points of face } @@ -437,6 +497,7 @@ pointSet_doc { source nearestToPoint; points ((0 0 0) (1 1 1)); + // See boxToCell for optional transformation of the points } @@ -446,6 +507,10 @@ pointSet_doc sets (p1 p2); // or set p1; + // or + zones (p1Zone p2Zone); + // or + zone p1Zone; } @@ -454,6 +519,7 @@ pointSet_doc source searchableSurfaceToCell; surfaceType triSurfaceMesh; // Type of surface surfaceName blob.obj; // Name for surface object + // See boxToCell for optional transformation of the points } @@ -464,6 +530,7 @@ pointSet_doc radius 5.0; // optional innerRadius 1.0; + // See boxToCell for optional transformation of the points } @@ -476,6 +543,7 @@ pointSet_doc // (requires closed surface with consistent // normals) includeOutside false; // ,, outside ,, + // See boxToCell for optional transformation of the points } diff --git a/etc/caseDicts/annotated/turbulenceFieldsDict b/etc/caseDicts/annotated/turbulenceFieldsDict index 1181c071605ad56830e50d1771ef5f72ea6fc968..8c3bdac2cb8cf883097b8537936fbc79bf71ce37 100644 --- a/etc/caseDicts/annotated/turbulenceFieldsDict +++ b/etc/caseDicts/annotated/turbulenceFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/viewFactorsDict b/etc/caseDicts/annotated/viewFactorsDict index 440a14d92e567456932ab45d17b2395aa4c42b6d..806d1de5848502e89566272e32a20372c6d9e6e7 100644 --- a/etc/caseDicts/annotated/viewFactorsDict +++ b/etc/caseDicts/annotated/viewFactorsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/annotated/wallFunctionDict b/etc/caseDicts/annotated/wallFunctionDict index 258fa42619cb72f6a6e25ee81328dc7a54fac0f6..4a56bf250a7553a0ecb900e002fe4246babc0263 100644 --- a/etc/caseDicts/annotated/wallFunctionDict +++ b/etc/caseDicts/annotated/wallFunctionDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/boundaries b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/boundaries index 05d67c82434195ff4f0d6af99df34d8cfb9ec88b..1906b2571cae39cadf97d0529e117c47a042458c 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/boundaries +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/boundaries @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inlet index fa3ac0f879445f1da62249945a170553027f0ac2..dc8c5857cadf27bf17fbd769f6569c92f3d9459e 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inletOptions index 4e651076af68f700cf13f1b7db507145cd1f4d00..9de239b0237ee6b84b8d1f59fe3e14f85bc5c00a 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/inletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outlet index 8b0dc9bbe32fdd82d374a73278469e5d004ea919..80ced5d91f9807f2e80b91590f7ea86c38521b23 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outletOptions index 4c85e76de275c77990996be73190c846f9412af9..a48472620ad10844b9af4c6f745dc32daec49fa4 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/outletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wall b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wall index cf70f6a36bddec8d1a39c1cf6b01c90e34583c20..0e067b4f1740c9c33bee65e1f85d0232d16cde79 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wall +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wall @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wallOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wallOptions index 3c7be4ba5a515a5243c21caaf2a575c8bb82b850..7a50f5385f6ce37ef84bfa887bb2d3e7d387b81a 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wallOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/buoyant/wallOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inlet index fa3ac0f879445f1da62249945a170553027f0ac2..dc8c5857cadf27bf17fbd769f6569c92f3d9459e 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inletOptions index b54ba150ff5d273fa7cc1626795dd117fd5d3d76..e1327825444cf9b7c6de4bbb69c37bdaafe9576e 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/inletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outlet index 324e80cfd9749be2217d90a4ea5c1f1f6acda42d..6933abf8713b4b999eeb28f1e74b9f23601a5e32 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outletOptions index 92cee6ad717611a304537d0a222baf69f2994987..22a3b7d035232482ea1be6a0565df3a99da0f189 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/outletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wall b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wall index 9e3cec6f43048ee8be47a17a27baccc2911891a7..6c30540fe4a7d9569bfc2b01441cee3f68ee0ae7 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wall +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wall @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wallOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wallOptions index 707bfcd30a82cb0d8f66471ab97d8ab8a749a3d3..c9a729ad32f02da745e581e7d4089082b2f22cbe 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wallOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/compressible/wallOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inlet index 9595b4420072151d9a4bd96627ce2cd1c2164551..40747deccdcf5bdf9d93564aaf6e9c6fefa2aeca 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inletOptions index f7e6f8e09b4d3702b59420218678b9913056ec04..19c22fc23a2aaad36abb5fbe82d35b4344ded4bf 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/inletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/outlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/outlet index c88fe9a0457271ab4199c35da298064952c66e0a..eb35977345c1dba58abd418653df7ee9232a2855 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/outlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/outlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wall b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wall index e8ce7e908018faddc971ab2c7d6aea6f4977f7cd..7acc950e52c70dd61c46276768256df1c75f972a 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wall +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wall @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wallOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wallOptions index 10c6ba8ef82e7b27bbcc61c5df252132330d04af..9b73cb9050200dfbdf5bc5bfe5b288177793d353 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wallOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/incompressible/wallOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inlet index 5a652f659aa15ad5576fc4be3a8476ca5964c781..8106cb4c9eb7781297b1d1e0f4dedc64b8838628 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inletOptions index 676f7b4382054ce205bc55991085db364cd55832..9a6b281b1be24c6883fec24b3d42eca2b35cf6bc 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/inletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outlet b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outlet index 9df8d31519634fce1533f55b4423f12b55d12e61..a8a8cd66a3fb441bea814718ac1e47978a7e6aee 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outlet +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outletOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outletOptions index d761b04091299818fdf0033057ebd4d08156b8bd..4df0a5ac784e891fffd4777b3c79b4b00de1673e 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outletOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/outletOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wall b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wall index 9e3a5805f72990a8da1b013c5646325bf964a275..17fc23000d7faec2a517c731f817a6accda9b770 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wall +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wall @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wallOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wallOptions index aa317e57ebe84cb617a98aeb89bb2de51eedef28..f9171e1c6e4d1ec6bd3968510d7b6fb046c3b635 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wallOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/fluid/wallOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wall b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wall index a9fc8aff54665cd841048dde3a24e0428ba4bcff..a751be07eebc18f70b025b8f109f39d5a11fcf43 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wall +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wall @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wallOptions b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wallOptions index 59917d5a7303761e014640915b20220a4b9688b6..e7dd4fe44a0dc25d2743352fd5b538bba8b4dab7 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wallOptions +++ b/etc/caseDicts/createZeroDirectoryTemplates/boundaryConditions/solid/wallOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kEpsilon b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kEpsilon index 2e5ddb58ba24047eac49fdcc58aa77404b896099..4cf02a9228302145e1a9c08770dd0b1df788dceb 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kEpsilon +++ b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kEpsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmega b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmega index 27495f56dcf93b0b9dde822d87fab3c720082acc..db57e8f0213782d6c4881292ca64de10c8f29f6b 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmega +++ b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmegaSST b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmegaSST index 900c2c98fdb2c9517720600b321ffd4c3c5d2da8..efe8270c67c899af0cf4fcc4151a0ffc1ee32d5f 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmegaSST +++ b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/kOmegaSST @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/laminar b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/laminar index 3a5f3a8428da393e03e289310ad14b55bc85a398..2fdcb6e82c9ee51137a32bf9653796edf381e1b9 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/laminar +++ b/etc/caseDicts/createZeroDirectoryTemplates/models/turbulence/laminar @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/chtMultiRegionFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/chtMultiRegionFoam index c06b5183a666f61eb0389952889ddc88b724b38a..3ee9016cea3f3d6dd3eaa34ccc573a54b620a68d 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/chtMultiRegionFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/chtMultiRegionFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/icoFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/icoFoam index c4672f9c7eaac945b19e3017a96ea1fad851ab01..f846f49085eac287133a3d36d060e3b93b419e76 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/icoFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/icoFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/pimpleFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/pimpleFoam index f9ba12263404db303b2728f5e1dcfe6b107ec8a4..afb5b591c8deefb7b7e83bd750e8d7bfe94aae3e 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/pimpleFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/pimpleFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/pisoFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/pisoFoam index 0d9cabd932ee43f48adb94ea4efe811639e1eff9..edc4a0369464c30e2ecf3e55d4357497a566bd46 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/pisoFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/pisoFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/rhoPimpleFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/rhoPimpleFoam index 540e3b991cfb4747ed940cd37297450a68a458e2..3b810275a945f73d40ca04f767557cbff1e17ae1 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/rhoPimpleFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/rhoPimpleFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/createZeroDirectoryTemplates/solvers/simpleFoam b/etc/caseDicts/createZeroDirectoryTemplates/solvers/simpleFoam index 2c27fa7602e6e7f116f381fc459c112d10b31d9f..dcfba2a69bd7308831d630c9a7b989ce077a138c 100644 --- a/etc/caseDicts/createZeroDirectoryTemplates/solvers/simpleFoam +++ b/etc/caseDicts/createZeroDirectoryTemplates/solvers/simpleFoam @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/foamyHexMeshDict b/etc/caseDicts/foamyHexMeshDict index be28fbaba59bc0d64f4b074efddd6fcf0ab79a2e..4c38a427a1d4c0040ebfb88ef8bd19eb57feeccf 100644 --- a/etc/caseDicts/foamyHexMeshDict +++ b/etc/caseDicts/foamyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/coordinateSystem/cartesianXY b/etc/caseDicts/general/coordinateSystem/cartesianXY index 651203097618f5acb826b5ae2bcbdc35ab2f3884..7e9f8f35fca58aaa94bc91507f7cd993d5f428d1 100644 --- a/etc/caseDicts/general/coordinateSystem/cartesianXY +++ b/etc/caseDicts/general/coordinateSystem/cartesianXY @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/coordinateSystem/cartesianXZ b/etc/caseDicts/general/coordinateSystem/cartesianXZ index 92dc7557d76bc5255faf0d8535f3e1c5747c38d3..0d685e273b16b28078e076614cd9f54c10024985 100644 --- a/etc/caseDicts/general/coordinateSystem/cartesianXZ +++ b/etc/caseDicts/general/coordinateSystem/cartesianXZ @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/coordinateSystem/cartesianYZ b/etc/caseDicts/general/coordinateSystem/cartesianYZ index b91bfac877c71171b125c8dace2e3802288c3e92..bcc2972cb81bb5f748bb8f53739a37204b53e4be 100644 --- a/etc/caseDicts/general/coordinateSystem/cartesianYZ +++ b/etc/caseDicts/general/coordinateSystem/cartesianYZ @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/coordinateSystem/cylindrical b/etc/caseDicts/general/coordinateSystem/cylindrical index 287bfdce97c8a030a979d517c0e523e27c7dc79e..a565c561f1fac03c70327520d3d707cfabb007fd 100644 --- a/etc/caseDicts/general/coordinateSystem/cylindrical +++ b/etc/caseDicts/general/coordinateSystem/cylindrical @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/fvOptions/porosity/porousZone b/etc/caseDicts/general/fvOptions/porosity/porousZone index b8530d7ceef633a16f78c4db3d9cd36aced32f78..a48c566f894f4b6dd56493c7f96f04fc2a21a2c9 100644 --- a/etc/caseDicts/general/fvOptions/porosity/porousZone +++ b/etc/caseDicts/general/fvOptions/porosity/porousZone @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/fvSolution/relaxationFactors/steadyState b/etc/caseDicts/general/fvSolution/relaxationFactors/steadyState index a5bf11d22df848065e7764015b84aa65ef34483b..3b816ae29eab82ee911d50050414b398257fcdf8 100644 --- a/etc/caseDicts/general/fvSolution/relaxationFactors/steadyState +++ b/etc/caseDicts/general/fvSolution/relaxationFactors/steadyState @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/general/fvSolution/relaxationFactors/transient b/etc/caseDicts/general/fvSolution/relaxationFactors/transient index 9ef75a1d5044256fa5d6883cac7458cbdfdb3843..286157418d7f65c7aebe4b2e81fabbfced82e2a6 100644 --- a/etc/caseDicts/general/fvSolution/relaxationFactors/transient +++ b/etc/caseDicts/general/fvSolution/relaxationFactors/transient @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/insitu/adios/adiosWrite.cfg b/etc/caseDicts/insitu/adios/adiosWrite.cfg index a1360478b21c98191612a69cb2f709daae6a8193..373d5f15b9c8d8f5f32e0510b5e34649696c82cb 100644 --- a/etc/caseDicts/insitu/adios/adiosWrite.cfg +++ b/etc/caseDicts/insitu/adios/adiosWrite.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/insitu/catalyst/catalyst.cfg b/etc/caseDicts/insitu/catalyst/catalyst.cfg index 755c31af6c7a96a9a9c470c93931b1b6d100a24f..9f53f0d58de07de0e3789612ab4c94b8343e2dbb 100644 --- a/etc/caseDicts/insitu/catalyst/catalyst.cfg +++ b/etc/caseDicts/insitu/catalyst/catalyst.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/mesh/generation/meshQualityDict.cfg b/etc/caseDicts/mesh/generation/meshQualityDict.cfg index 0fd36bc594bcb2bc59a93ca9f11a08a3416d572a..162d5913afd8f218f5f8c0785726930c853b4bbc 100644 --- a/etc/caseDicts/mesh/generation/meshQualityDict.cfg +++ b/etc/caseDicts/mesh/generation/meshQualityDict.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/mesh/generation/snappyHexMeshDict.cfg b/etc/caseDicts/mesh/generation/snappyHexMeshDict.cfg index 3f1f550786038bad306a38298109999103558105..0acb8d59f1e1e79084b4819e45252a85f095bdb4 100644 --- a/etc/caseDicts/mesh/generation/snappyHexMeshDict.cfg +++ b/etc/caseDicts/mesh/generation/snappyHexMeshDict.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/mesh/manipulation/refineRegion/refineMeshDict b/etc/caseDicts/mesh/manipulation/refineRegion/refineMeshDict index 8d4512ce7abde91bd103c38495c929720502f901..19ecfffae78345426e0bc44ed03a3daa0905d308 100644 --- a/etc/caseDicts/mesh/manipulation/refineRegion/refineMeshDict +++ b/etc/caseDicts/mesh/manipulation/refineRegion/refineMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/mesh/manipulation/refineRegion/topoSetDict b/etc/caseDicts/mesh/manipulation/refineRegion/topoSetDict index ca3275c238b357f75bf14f0088cc849560b79a7a..91d8736c74d11b175dae0ad14de0f8e09f670a6a 100644 --- a/etc/caseDicts/mesh/manipulation/refineRegion/topoSetDict +++ b/etc/caseDicts/mesh/manipulation/refineRegion/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/meshQualityDict b/etc/caseDicts/meshQualityDict index 6c9ab8d3d3199189d9c2588670376e5d6db867c4..7c46956cfa1b43faf34ee03486450523a4cf19cc 100644 --- a/etc/caseDicts/meshQualityDict +++ b/etc/caseDicts/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/fields/AMIWeights b/etc/caseDicts/postProcessing/fields/AMIWeights index eaceb07dbf0b0a3b67cd246c8467ccb82c6c3787..30ac99ed4d2a462bbc132dae507899aff7103bb1 100644 --- a/etc/caseDicts/postProcessing/fields/AMIWeights +++ b/etc/caseDicts/postProcessing/fields/AMIWeights @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/CourantNo b/etc/caseDicts/postProcessing/fields/CourantNo index aebe397c5dbfdea7c07c53092258127f43418e8d..d6a4ed9ed895a91480d5cb84203d67cf5ddf8f31 100644 --- a/etc/caseDicts/postProcessing/fields/CourantNo +++ b/etc/caseDicts/postProcessing/fields/CourantNo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/LambVector b/etc/caseDicts/postProcessing/fields/LambVector index 29904e4043d57331b17a4a52399608f779f86dc8..51821d4b4fea9f609da3480de420cd6479eddd08 100644 --- a/etc/caseDicts/postProcessing/fields/LambVector +++ b/etc/caseDicts/postProcessing/fields/LambVector @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/Lambda2 b/etc/caseDicts/postProcessing/fields/Lambda2 index 50fff6c462a057e742e864cead7297f6ac2ba012..1624e2bbe91d781335d254dc7ebd499fc61c5e32 100644 --- a/etc/caseDicts/postProcessing/fields/Lambda2 +++ b/etc/caseDicts/postProcessing/fields/Lambda2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/MachNo b/etc/caseDicts/postProcessing/fields/MachNo index 7e433bf8e0f7a1226b0707d87c0b0fa3ac483ce8..0401989af513f649fadc3adbc4a9de2dd864acb9 100644 --- a/etc/caseDicts/postProcessing/fields/MachNo +++ b/etc/caseDicts/postProcessing/fields/MachNo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/ObukhovLength b/etc/caseDicts/postProcessing/fields/ObukhovLength index f7050f4cb375acf92f605733b514f7d1c9b77cf2..722407d16337c90dbbd6277dfa30709c70561601 100644 --- a/etc/caseDicts/postProcessing/fields/ObukhovLength +++ b/etc/caseDicts/postProcessing/fields/ObukhovLength @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/PecletNo b/etc/caseDicts/postProcessing/fields/PecletNo index 563517030db9fca523501fc79a209e371b43141f..c5a1e998377d84c9a9eaf295715afea054f50a78 100644 --- a/etc/caseDicts/postProcessing/fields/PecletNo +++ b/etc/caseDicts/postProcessing/fields/PecletNo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/Q b/etc/caseDicts/postProcessing/fields/Q index 3d3bb36b76d403ef5243e26ab06dc80b69e27d46..a8df80569c921162cf259ddebcacd94b78396823 100644 --- a/etc/caseDicts/postProcessing/fields/Q +++ b/etc/caseDicts/postProcessing/fields/Q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/R b/etc/caseDicts/postProcessing/fields/R index 4e47a08100b20e134516053b45108ad48b643d21..eaa3d73764df2fea7a3cbeffe330a121dabdaf78 100644 --- a/etc/caseDicts/postProcessing/fields/R +++ b/etc/caseDicts/postProcessing/fields/R @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/XiReactionRate b/etc/caseDicts/postProcessing/fields/XiReactionRate index 0bb2f7fb4894a57f5d66df4d18341e6a06264617..e6f268117aa7327db143e29f5623643f13d6d6d9 100644 --- a/etc/caseDicts/postProcessing/fields/XiReactionRate +++ b/etc/caseDicts/postProcessing/fields/XiReactionRate @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/add b/etc/caseDicts/postProcessing/fields/add index 3c29d5a369ede8f23b19f5b42a39fd3a55efae9a..4ef45123fcaa0c3af57fd9ecb8eaabcba963b787 100644 --- a/etc/caseDicts/postProcessing/fields/add +++ b/etc/caseDicts/postProcessing/fields/add @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/components b/etc/caseDicts/postProcessing/fields/components index bf3208359f99726b8820678da3f7a934f78aa37f..a76b3a1d71a76dd7a6c9ca395e9510b35e3f4672 100644 --- a/etc/caseDicts/postProcessing/fields/components +++ b/etc/caseDicts/postProcessing/fields/components @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/ddt b/etc/caseDicts/postProcessing/fields/ddt index 17e6695b79b7602603a0c68a25a5c4edc37f2615..a106cd003d3e51f482d19d2bba1c890e031b3179 100644 --- a/etc/caseDicts/postProcessing/fields/ddt +++ b/etc/caseDicts/postProcessing/fields/ddt @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/div b/etc/caseDicts/postProcessing/fields/div index 35486dc42d986cd9fe80b75e1ee31b7f22e977f9..d066818fd18f0c874c7fd9f09d92a9c57363d207 100644 --- a/etc/caseDicts/postProcessing/fields/div +++ b/etc/caseDicts/postProcessing/fields/div @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/energySpectrum b/etc/caseDicts/postProcessing/fields/energySpectrum index bbc39589ea71cd09952f8a4992376d055143df58..b59ef9fd89a8dd6bd699234d7e839378f934f377 100644 --- a/etc/caseDicts/postProcessing/fields/energySpectrum +++ b/etc/caseDicts/postProcessing/fields/energySpectrum @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/enstrophy b/etc/caseDicts/postProcessing/fields/enstrophy index 03233da26b5ff256bd1e464975649576be04948c..4e4c58c8388eb1a28a2ac0a913a14dcfdd84d6c0 100644 --- a/etc/caseDicts/postProcessing/fields/enstrophy +++ b/etc/caseDicts/postProcessing/fields/enstrophy @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/fieldMinMax b/etc/caseDicts/postProcessing/fields/fieldMinMax index 8c986794cc7fac2d0484155f715d1b1f9cf0d76e..27379b805ad3021bce518a6e664d1d9d7f3290fc 100644 --- a/etc/caseDicts/postProcessing/fields/fieldMinMax +++ b/etc/caseDicts/postProcessing/fields/fieldMinMax @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/flowType b/etc/caseDicts/postProcessing/fields/flowType index dd03aba530efc1d599333713a78db2622761a508..f079fe95757b8be02e340245a1b8e54b491150b3 100644 --- a/etc/caseDicts/postProcessing/fields/flowType +++ b/etc/caseDicts/postProcessing/fields/flowType @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/grad b/etc/caseDicts/postProcessing/fields/grad index 544e80547ce6020e1a1d75622b98f92dffc73631..32835603e95cdbabb939feed07fc79b2a15e6944 100644 --- a/etc/caseDicts/postProcessing/fields/grad +++ b/etc/caseDicts/postProcessing/fields/grad @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/heatTransferCoeff b/etc/caseDicts/postProcessing/fields/heatTransferCoeff index 551bec5e27694b592a1817bcf791c48e79c707f1..30043561893775ac55f30d9f7523ec9930c5825b 100644 --- a/etc/caseDicts/postProcessing/fields/heatTransferCoeff +++ b/etc/caseDicts/postProcessing/fields/heatTransferCoeff @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/log b/etc/caseDicts/postProcessing/fields/log index 79188e7f65d42e78c6086ad93cff208080536b3f..0f2b080f577069b645ec2905f90ce0a4baed33bd 100644 --- a/etc/caseDicts/postProcessing/fields/log +++ b/etc/caseDicts/postProcessing/fields/log @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/mag b/etc/caseDicts/postProcessing/fields/mag index a9cb3567fc64b0fc61a8a419386a64810b704128..c07b8dc70530b7c1a677ebfa83ec4c91f5344e5f 100644 --- a/etc/caseDicts/postProcessing/fields/mag +++ b/etc/caseDicts/postProcessing/fields/mag @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/magSqr b/etc/caseDicts/postProcessing/fields/magSqr index b768ef04d8a4203d2c500ff2e254bbf94a293298..fc6d3f19969e2b0b8ee4937aee497aa0a124638a 100644 --- a/etc/caseDicts/postProcessing/fields/magSqr +++ b/etc/caseDicts/postProcessing/fields/magSqr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/processorField b/etc/caseDicts/postProcessing/fields/processorField index aa8409df573230242191423690b5dfe2091455f2..e9660c809ef5a784ceb8d019ab94fb1eae0e9486 100644 --- a/etc/caseDicts/postProcessing/fields/processorField +++ b/etc/caseDicts/postProcessing/fields/processorField @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/randomise b/etc/caseDicts/postProcessing/fields/randomise index a6a9d794f720c0ec106a39a4885e386fa74df33e..bd79bab1abcf750b26bc395a5f3a7221f2084620 100644 --- a/etc/caseDicts/postProcessing/fields/randomise +++ b/etc/caseDicts/postProcessing/fields/randomise @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/randomise.cfg b/etc/caseDicts/postProcessing/fields/randomise.cfg index eeba7f78859b4b98e3f2b0a9d96ccb972e573ce8..20d98fc7aa09247ed3dd7281779d3f523bc0ccbf 100644 --- a/etc/caseDicts/postProcessing/fields/randomise.cfg +++ b/etc/caseDicts/postProcessing/fields/randomise.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/fields/streamFunction b/etc/caseDicts/postProcessing/fields/streamFunction index b9bcec34f49e919fc51c34463bc928f3064d4988..5c485023f230ce7049cb2414d1284aa1406be6e6 100644 --- a/etc/caseDicts/postProcessing/fields/streamFunction +++ b/etc/caseDicts/postProcessing/fields/streamFunction @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/subtract b/etc/caseDicts/postProcessing/fields/subtract index 9f52752336e8c9a5a2443e830dad7f55c8ab2afe..277a517feed16945b1ba12d13b2a26fdbef2820e 100644 --- a/etc/caseDicts/postProcessing/fields/subtract +++ b/etc/caseDicts/postProcessing/fields/subtract @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/turbulenceFields b/etc/caseDicts/postProcessing/fields/turbulenceFields index 1fa37a370d97632411cbafa54da5f34e2d2da230..1b45cf9c0c0dc5d40d26fce58373883621db0987 100644 --- a/etc/caseDicts/postProcessing/fields/turbulenceFields +++ b/etc/caseDicts/postProcessing/fields/turbulenceFields @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/vorticity b/etc/caseDicts/postProcessing/fields/vorticity index fcb386bf9c12dbe47eaa9297c4ea602240f7bfbe..524391161cea2ba83c4204a96e3da3adb79c05e4 100644 --- a/etc/caseDicts/postProcessing/fields/vorticity +++ b/etc/caseDicts/postProcessing/fields/vorticity @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/wallHeatFlux b/etc/caseDicts/postProcessing/fields/wallHeatFlux index 654ade9e8864576b5ccdc761a6807767296fb6c5..3d4297a3c1e4dd4674611dbabc953481d0f30355 100644 --- a/etc/caseDicts/postProcessing/fields/wallHeatFlux +++ b/etc/caseDicts/postProcessing/fields/wallHeatFlux @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/wallShearStress b/etc/caseDicts/postProcessing/fields/wallShearStress index b19f7bb5c435f9d00d78a66588629102db5c714c..836ee40527034f5019365487b858adb04c9ca6bd 100644 --- a/etc/caseDicts/postProcessing/fields/wallShearStress +++ b/etc/caseDicts/postProcessing/fields/wallShearStress @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/writeCellCentres b/etc/caseDicts/postProcessing/fields/writeCellCentres index e054c2fe06fb88de8105abac94c11e1fe70b7fb7..26e97d45b22ba4027a84c670abc833347a169864 100644 --- a/etc/caseDicts/postProcessing/fields/writeCellCentres +++ b/etc/caseDicts/postProcessing/fields/writeCellCentres @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/writeCellVolumes b/etc/caseDicts/postProcessing/fields/writeCellVolumes index 17ee22540ca8d1916302831d5da54f986eaa2691..b7b912510322b95a8d145a62ca7c7003f3815fdd 100644 --- a/etc/caseDicts/postProcessing/fields/writeCellVolumes +++ b/etc/caseDicts/postProcessing/fields/writeCellVolumes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/writeObjects b/etc/caseDicts/postProcessing/fields/writeObjects index 97d4e5df6ac0ef1c76cdd2808abb382611502d5a..19754c5987d48babc1a0ce5ba8c25d312a606fc1 100644 --- a/etc/caseDicts/postProcessing/fields/writeObjects +++ b/etc/caseDicts/postProcessing/fields/writeObjects @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/fields/yPlus b/etc/caseDicts/postProcessing/fields/yPlus index f3d79bdba5fd4d0979ff4020d81a86261d15a7d6..518eeb638ce89a6cc64f373d8e4db9f8b5d4835e 100644 --- a/etc/caseDicts/postProcessing/fields/yPlus +++ b/etc/caseDicts/postProcessing/fields/yPlus @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone b/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone index 10c5ec15d4efb3b2276dccf4a541cd96ac38e2ac..47c19a007391ca61c409197172589ef07fc4088b 100644 --- a/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone +++ b/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone.cfg b/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone.cfg index 489d0f5e3434d4249e7271918f08cf495b09e96d..540f34ded45ef8473e1fc20a68101e05947a0ea1 100644 --- a/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone.cfg +++ b/etc/caseDicts/postProcessing/flowRate/flowRateFaceZone.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/flowRate/flowRatePatch b/etc/caseDicts/postProcessing/flowRate/flowRatePatch index 6f1a2c12ac4fa63ba8d14059deb7bb6f2f2dbfc0..7d94e858599a5b0f12769dfdde3f8b90a0d240d7 100644 --- a/etc/caseDicts/postProcessing/flowRate/flowRatePatch +++ b/etc/caseDicts/postProcessing/flowRate/flowRatePatch @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/flowRate/flowRatePatch.cfg b/etc/caseDicts/postProcessing/flowRate/flowRatePatch.cfg index 92dca6633a609c62428f1be46dd68ed67cc8a596..9637fd2ef247efc466db23132c26999f927ed354 100644 --- a/etc/caseDicts/postProcessing/flowRate/flowRatePatch.cfg +++ b/etc/caseDicts/postProcessing/flowRate/flowRatePatch.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface b/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface index 5be46dd25763d3076eadedd28ecdbaf7cc4ccd82..295cbdbea0867ee1d9cf8967270ca117332bf682 100644 --- a/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface +++ b/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface.cfg b/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface.cfg index fe33118ab07d6af9e50d68caac3773763f9a4505..e19f710b01cc5babdb26abaedd9092579578ce9b 100644 --- a/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface.cfg +++ b/etc/caseDicts/postProcessing/flowRate/volFlowRateSurface.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/forces/forceCoeffs.cfg b/etc/caseDicts/postProcessing/forces/forceCoeffs.cfg index b4f6536fea89a60a5d67e1a2c6e5f227f28cc7af..09af6e9bc33c2ffc55ae7ff47762c1878567a52d 100644 --- a/etc/caseDicts/postProcessing/forces/forceCoeffs.cfg +++ b/etc/caseDicts/postProcessing/forces/forceCoeffs.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/forces/forceCoeffsCompressible b/etc/caseDicts/postProcessing/forces/forceCoeffsCompressible index 640bb716194991aeaeedf531000611d134c42f86..e9324bd1073263dcaa71f2b7182d61a29d187ee3 100644 --- a/etc/caseDicts/postProcessing/forces/forceCoeffsCompressible +++ b/etc/caseDicts/postProcessing/forces/forceCoeffsCompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible b/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible index 1bb2c7835056ec4289272d1fc746503961ec2a9a..3519379726483f74715da3e85770433893fcd6b9 100644 --- a/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible +++ b/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible.cfg b/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible.cfg index cf2a2edba46e7f734639eda6f25de0cce4c65103..0aada5416b9509645813a6d7ed3cb44eaeaef420 100644 --- a/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible.cfg +++ b/etc/caseDicts/postProcessing/forces/forceCoeffsIncompressible.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/forces/forces.cfg b/etc/caseDicts/postProcessing/forces/forces.cfg index aa9aa825ee3e223da2b8af321239afb71f6c32a9..7375f2c7c81884f76600854c21d36190898f0028 100644 --- a/etc/caseDicts/postProcessing/forces/forces.cfg +++ b/etc/caseDicts/postProcessing/forces/forces.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/forces/forcesCompressible b/etc/caseDicts/postProcessing/forces/forcesCompressible index 8833658de3789ffa15fc565b85aa106f3205e127..7d8148cc507eaae7d860e5a360d5aef4943f95cb 100644 --- a/etc/caseDicts/postProcessing/forces/forcesCompressible +++ b/etc/caseDicts/postProcessing/forces/forcesCompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/forces/forcesIncompressible b/etc/caseDicts/postProcessing/forces/forcesIncompressible index ea64a742416b85265afb0dd5010dc669315425a7..90fd8605c683bedfb1f2ccc9c126f9c1d738db5b 100644 --- a/etc/caseDicts/postProcessing/forces/forcesIncompressible +++ b/etc/caseDicts/postProcessing/forces/forcesIncompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/forces/forcesIncompressible.cfg b/etc/caseDicts/postProcessing/forces/forcesIncompressible.cfg index 0d424e77c2c328e0e3b1ac7605ef8c4dd7d9300a..0cb30b1b0d17ab902439de59a6badbea3935c069 100644 --- a/etc/caseDicts/postProcessing/forces/forcesIncompressible.cfg +++ b/etc/caseDicts/postProcessing/forces/forcesIncompressible.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/graphs/graph.cfg b/etc/caseDicts/postProcessing/graphs/graph.cfg index 24f8c7bbf2322bcafe74a82d065cd2e644c0449a..34d22ba40cc7dbb2d0e1f44f51ec85f314ac70f0 100644 --- a/etc/caseDicts/postProcessing/graphs/graph.cfg +++ b/etc/caseDicts/postProcessing/graphs/graph.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/graphs/sampleDict.cfg b/etc/caseDicts/postProcessing/graphs/sampleDict.cfg index c2d7cb506fa1843b37ca56d7ed8f366657f93b2d..a4e9669f6c9eddee12b084149fa6306744785693 100644 --- a/etc/caseDicts/postProcessing/graphs/sampleDict.cfg +++ b/etc/caseDicts/postProcessing/graphs/sampleDict.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/graphs/singleGraph b/etc/caseDicts/postProcessing/graphs/singleGraph index e800c151a2b4f4d864266f09059f678130f0036c..67a2be2f8c6f3709d4628f703068eb13b54c252e 100644 --- a/etc/caseDicts/postProcessing/graphs/singleGraph +++ b/etc/caseDicts/postProcessing/graphs/singleGraph @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/lagrangian/dsmcFields b/etc/caseDicts/postProcessing/lagrangian/dsmcFields index 5d310f196d917c3ff3f3d3b41a416846fee4a5b1..2e8f61c1f546020b8a8927cd1e2b2988b8c2185a 100644 --- a/etc/caseDicts/postProcessing/lagrangian/dsmcFields +++ b/etc/caseDicts/postProcessing/lagrangian/dsmcFields @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/cellMax b/etc/caseDicts/postProcessing/minMax/cellMax index 29a38b5db6290fd98bd1deecb840af7c6dcb3aaf..39f307414f3cde5702e83ce90acecbeff0b18a03 100644 --- a/etc/caseDicts/postProcessing/minMax/cellMax +++ b/etc/caseDicts/postProcessing/minMax/cellMax @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/cellMin b/etc/caseDicts/postProcessing/minMax/cellMin index 9c4f13a4ae7ea664cf5317773c1a5b488b03ae8a..01b17cacf60f23e3a8b0d304b13811e1729882c6 100644 --- a/etc/caseDicts/postProcessing/minMax/cellMin +++ b/etc/caseDicts/postProcessing/minMax/cellMin @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/cellMin.cfg b/etc/caseDicts/postProcessing/minMax/cellMin.cfg index 8a2a1e0d6018ae6682a456af4df5f349d2638ebb..c6fdb1e10c06593b1adaef26a22aa4dbfb1e1c68 100644 --- a/etc/caseDicts/postProcessing/minMax/cellMin.cfg +++ b/etc/caseDicts/postProcessing/minMax/cellMin.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg b/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg index e9d7870504854a29a6c4a29d68ae56c6c306624e..6b1743bced44b50e07689a6d52dc278f4738709d 100644 --- a/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/faceMax b/etc/caseDicts/postProcessing/minMax/faceMax index fcf36447a45ad228b37859b3ba71587ad35889bb..5500eaa96b5fbacd54cb4ca64c58ba86692f5181 100644 --- a/etc/caseDicts/postProcessing/minMax/faceMax +++ b/etc/caseDicts/postProcessing/minMax/faceMax @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/faceMin b/etc/caseDicts/postProcessing/minMax/faceMin index 8070aceccec8ce96cb284ef9a0941c30392cf400..5db3b9532799c4be6a858216fd72706bff4816eb 100644 --- a/etc/caseDicts/postProcessing/minMax/faceMin +++ b/etc/caseDicts/postProcessing/minMax/faceMin @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/faceMin.cfg b/etc/caseDicts/postProcessing/minMax/faceMin.cfg index fc9e23d93ed5fbe2161ff9336e88966378701ee0..9e755bdc49e6c1dd856a17c729fb3b7462ae1e62 100644 --- a/etc/caseDicts/postProcessing/minMax/faceMin.cfg +++ b/etc/caseDicts/postProcessing/minMax/faceMin.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg b/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg index 270d39af959b9a2569caea53e02e5146a26b8979..407b3f0526a1753c231e9873174c22a896ed3cb5 100644 --- a/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg b/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg index c3e726ce19fb3293654d82ca3788791ca3c8db50..711ba37fb8de12d5c617dc5b2a9005e86dd8c6f1 100644 --- a/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/minMaxComponents b/etc/caseDicts/postProcessing/minMax/minMaxComponents index 5dcf7b5d709759801e950367312ad6e1858ce484..31a60a7f9d53b7d78c2c6551cc39c71f08291bae 100644 --- a/etc/caseDicts/postProcessing/minMax/minMaxComponents +++ b/etc/caseDicts/postProcessing/minMax/minMaxComponents @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/minMax/minMaxComponents.cfg b/etc/caseDicts/postProcessing/minMax/minMaxComponents.cfg index 7adba74f88bec929059baf77846a5df8b6021b37..e1f5d4df52d4957952adac1a5005346316b8ea57 100644 --- a/etc/caseDicts/postProcessing/minMax/minMaxComponents.cfg +++ b/etc/caseDicts/postProcessing/minMax/minMaxComponents.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/minMax/minMaxMagnitude b/etc/caseDicts/postProcessing/minMax/minMaxMagnitude index 8b3b762db2a9536848803f9fc5668e0b3c44a7db..3006661bc9f1500f6f14c14747578da2023409f5 100644 --- a/etc/caseDicts/postProcessing/minMax/minMaxMagnitude +++ b/etc/caseDicts/postProcessing/minMax/minMaxMagnitude @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/numerical/solverInfo b/etc/caseDicts/postProcessing/numerical/solverInfo index 632cdc176878cb6c671f0fb184dd02834effa385..50540a6fea6ceb34def6c18c8a60a3dce0ddeb44 100644 --- a/etc/caseDicts/postProcessing/numerical/solverInfo +++ b/etc/caseDicts/postProcessing/numerical/solverInfo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/numerical/solverInfo.cfg b/etc/caseDicts/postProcessing/numerical/solverInfo.cfg index a3355f6d30234ec4c301211b7e0e95c048da325e..45b1ed1e291807751fe0d6b505b70472f9ba6a2e 100644 --- a/etc/caseDicts/postProcessing/numerical/solverInfo.cfg +++ b/etc/caseDicts/postProcessing/numerical/solverInfo.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/pressure.cfg b/etc/caseDicts/postProcessing/pressure/pressure.cfg index 4e7be8206b3afe3b8f514c35cb075d8bf11cd619..5f0f7b2b053d21da850e9745d7a19cb3a0182620 100644 --- a/etc/caseDicts/postProcessing/pressure/pressure.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressure.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg b/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg index 46f997c881c309998e256623e2359397fcde4f03..90411fff58679b57b06c425faadd5edad3076271 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch b/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch index 4d9c7de3e31a24c78989794831c6226804ac3848..78a394618b1983dc3ad006f55aa09c0362936c70 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch +++ b/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch.cfg b/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch.cfg index 5a222473f4b7fadef3b34b2c147656882ace88ba..a9a9be3f4cf3b51a677337b7100c20598a73d5de 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressureDifferencePatch.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface b/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface index a29f0cf678714f63012fa87a3e78482458c52676..69eb52c5eb927deaaa62828a235bec594476655f 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface +++ b/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface.cfg b/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface.cfg index 631482ae27cae8a572760d71ebc970155166f5b5..489417f1459cfce1e6d129bca9ec08545c49b2cd 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressureDifferenceSurface.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/staticPressure b/etc/caseDicts/postProcessing/pressure/staticPressure index 887ab19f67b9f8d4fc49fbe649b4b4146bb9f460..2cf3412d1ef67af0b17491cfdd87960b81765990 100644 --- a/etc/caseDicts/postProcessing/pressure/staticPressure +++ b/etc/caseDicts/postProcessing/pressure/staticPressure @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/pressure/staticPressure.cfg b/etc/caseDicts/postProcessing/pressure/staticPressure.cfg index cae82890a2b41bbec036a00bea8173471adee4a2..c32381a3310715c51a624fb514300765a9be8884 100644 --- a/etc/caseDicts/postProcessing/pressure/staticPressure.cfg +++ b/etc/caseDicts/postProcessing/pressure/staticPressure.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/totalPressureCompressible b/etc/caseDicts/postProcessing/pressure/totalPressureCompressible index c26476d94c80b9b37b656b2c878bda625fa4d777..a9d594aa340308da2123e48dbf3c8f7be4eddecf 100644 --- a/etc/caseDicts/postProcessing/pressure/totalPressureCompressible +++ b/etc/caseDicts/postProcessing/pressure/totalPressureCompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/pressure/totalPressureCompressible.cfg b/etc/caseDicts/postProcessing/pressure/totalPressureCompressible.cfg index 54134c511c3305f055504e41bca563d729ac433b..4c830dfc9314b8d36d4e14525e62837d600fb415 100644 --- a/etc/caseDicts/postProcessing/pressure/totalPressureCompressible.cfg +++ b/etc/caseDicts/postProcessing/pressure/totalPressureCompressible.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible b/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible index 04025e9da29eebab7af33a4a7086403cc4b702a7..6e74873f6c29e3f9c2159d47ef44f752af2da03a 100644 --- a/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible +++ b/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible.cfg b/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible.cfg index e708a6134561fafa7b6d612ed0c4045ea0a4966e..7460e480059a400e05793c04cd36d8f1d0fa9124 100644 --- a/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible.cfg +++ b/etc/caseDicts/postProcessing/pressure/totalPressureIncompressible.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/probes/boundaryCloud b/etc/caseDicts/postProcessing/probes/boundaryCloud index a1e6d2b5621287397e0e624736696e7ab5e1103b..cb7cf124063114df0837968eb952ce42417d3e4b 100644 --- a/etc/caseDicts/postProcessing/probes/boundaryCloud +++ b/etc/caseDicts/postProcessing/probes/boundaryCloud @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/probes/boundaryCloud.cfg b/etc/caseDicts/postProcessing/probes/boundaryCloud.cfg index 83d4d802e97e639b3d5c9987ca0fd68a83dd7ba5..0e054d121063b09ae716991b96303b3d9608bed9 100644 --- a/etc/caseDicts/postProcessing/probes/boundaryCloud.cfg +++ b/etc/caseDicts/postProcessing/probes/boundaryCloud.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/probes/cloud.cfg b/etc/caseDicts/postProcessing/probes/cloud.cfg index 7c0995aa7653497a3905d1dea0b598dec07b87ed..eac66edea1e5f608daf61ed6e052fcb8497fffe1 100644 --- a/etc/caseDicts/postProcessing/probes/cloud.cfg +++ b/etc/caseDicts/postProcessing/probes/cloud.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/probes/internalCloud b/etc/caseDicts/postProcessing/probes/internalCloud index ca76c56c32171684e90dfeb738e8fb176e27c946..bb353f4b7c604e8f955f8335376dfeb13e3ab88b 100644 --- a/etc/caseDicts/postProcessing/probes/internalCloud +++ b/etc/caseDicts/postProcessing/probes/internalCloud @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/probes/internalCloud.cfg b/etc/caseDicts/postProcessing/probes/internalCloud.cfg index f7bb879707a1ab2ad7b8d5bc042a95137420b2b2..1b20a8add41ddb820e406f7b4934b7f889d3d2d3 100644 --- a/etc/caseDicts/postProcessing/probes/internalCloud.cfg +++ b/etc/caseDicts/postProcessing/probes/internalCloud.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/probes/probes b/etc/caseDicts/postProcessing/probes/probes index 3d4e159560408c6493783daee9d92b2df37243c9..18f277233debba2e33dddfcc89b1d8b159618d59 100644 --- a/etc/caseDicts/postProcessing/probes/probes +++ b/etc/caseDicts/postProcessing/probes/probes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/probes/probes.cfg b/etc/caseDicts/postProcessing/probes/probes.cfg index f268d977299563bd059f53cf5e8454e6f1712c1a..302fb4fd36ba88d2f5ec7cd5375e92e07e1eca90 100644 --- a/etc/caseDicts/postProcessing/probes/probes.cfg +++ b/etc/caseDicts/postProcessing/probes/probes.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport b/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport index 950c9d0306ffc496b10ff209591ffae2372a1190..bf2b1cb36635b9d85578e794cc725c34046d8661 100644 --- a/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport +++ b/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport.cfg b/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport.cfg index ba935a40f8ff75048e58c691fcdbd814cbdd516a..0c3ab885b829fd82065594b54a48ae2af9f845b7 100644 --- a/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport.cfg +++ b/etc/caseDicts/postProcessing/solvers/scalarTransport/scalarTransport.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/faceZone.cfg b/etc/caseDicts/postProcessing/surfaceFieldValue/faceZone.cfg index 37479fa13604c38d34dddf0190e371f31bf5005e..8c9f952fd79a384e9fc3a95b6a8b152f4b6f8a7c 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/faceZone.cfg +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/faceZone.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/patch.cfg b/etc/caseDicts/postProcessing/surfaceFieldValue/patch.cfg index 1c9f262203b58411616d2c7a7e738308fd2689cd..8f5d161b1c718f3a9dea3f9067cd2654ff6f4692 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/patch.cfg +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/patch.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/patchAverage b/etc/caseDicts/postProcessing/surfaceFieldValue/patchAverage index 12171ee1e34f8fb06051a86c20cae8a8b2e8fbf3..4efce230ba9330b4f01f562cd74d420f01eee347 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/patchAverage +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/patchAverage @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/patchIntegrate b/etc/caseDicts/postProcessing/surfaceFieldValue/patchIntegrate index 938d3825b2df9b4a353d32b519e11857c7daebe2..2a6815f6e7cbbfe5a108a224d79a84213b9e0d5b 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/patchIntegrate +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/patchIntegrate @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/surfaceRegion.cfg b/etc/caseDicts/postProcessing/surfaceFieldValue/surfaceRegion.cfg index 4c823612d41a2ea862548e4d3746803800165568..b47cf520554e2835a95b465e58f19937cee4df2f 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/surfaceRegion.cfg +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/surfaceRegion.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/surfaceFieldValue/triSurfaceRegion.cfg b/etc/caseDicts/postProcessing/surfaceFieldValue/triSurfaceRegion.cfg index 135a6b90fef2a2644361c5d2c04256a07576a4ee..bfaa3d305c2fba7cd6f4b40212ad8b0f2cad377d 100644 --- a/etc/caseDicts/postProcessing/surfaceFieldValue/triSurfaceRegion.cfg +++ b/etc/caseDicts/postProcessing/surfaceFieldValue/triSurfaceRegion.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/visualization/runTimePostPro.cfg b/etc/caseDicts/postProcessing/visualization/runTimePostPro.cfg index bea4e534dd844d3f03889ffd95249eebca916b06..48e8d6564ad8c6bd373d65ef8c7649daa986a413 100644 --- a/etc/caseDicts/postProcessing/visualization/runTimePostPro.cfg +++ b/etc/caseDicts/postProcessing/visualization/runTimePostPro.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/visualization/streamlines b/etc/caseDicts/postProcessing/visualization/streamlines index 56f9635b1b7f1dfb49d9ba1ea8b5d7847aaddad2..88db7428b8242647fb9d1755c2c82d7340c622bd 100644 --- a/etc/caseDicts/postProcessing/visualization/streamlines +++ b/etc/caseDicts/postProcessing/visualization/streamlines @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/visualization/streamlines.cfg b/etc/caseDicts/postProcessing/visualization/streamlines.cfg index 9261096f36ff012ecbf547ad8b5042b1286b7358..d82adbddcfbe595ec63e3bcd4faf60824dd70398 100644 --- a/etc/caseDicts/postProcessing/visualization/streamlines.cfg +++ b/etc/caseDicts/postProcessing/visualization/streamlines.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/postProcessing/visualization/surfaces b/etc/caseDicts/postProcessing/visualization/surfaces index 50a5ac37db40d7739311857c5de4fca0013cc677..168bbd17b13bfe7922f9cc88bc6739e2e9d7808d 100644 --- a/etc/caseDicts/postProcessing/visualization/surfaces +++ b/etc/caseDicts/postProcessing/visualization/surfaces @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/postProcessing/visualization/surfaces.cfg b/etc/caseDicts/postProcessing/visualization/surfaces.cfg index b38b0de4ce0a0a785477129454f4ba42f5ebc80a..4df007e631a88b73495ed98f3f0276b928a60f68 100644 --- a/etc/caseDicts/postProcessing/visualization/surfaces.cfg +++ b/etc/caseDicts/postProcessing/visualization/surfaces.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/profiling/parallel.cfg b/etc/caseDicts/profiling/parallel.cfg index e4d5479d59601b77d877419ce15c19fbdc55d117..eac135d29f7d096c9a34db97e9117f2ba9d66176 100644 --- a/etc/caseDicts/profiling/parallel.cfg +++ b/etc/caseDicts/profiling/parallel.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Version: v2312 + \\ / O peration | Version: v2406 \\ / A nd | Website: www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- diff --git a/etc/caseDicts/setConstraintTypes b/etc/caseDicts/setConstraintTypes index 939659331c5baef10bf95dc27bc3694409ef728d..25586b42279527f4e20cfdfcad8e62b1f4b815c3 100644 --- a/etc/caseDicts/setConstraintTypes +++ b/etc/caseDicts/setConstraintTypes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -14,6 +14,7 @@ cyclic cyclicAMI { type cyclicAMI; + value $internalField; } cyclicACMI diff --git a/etc/caseDicts/solvers/scalarTransport/s b/etc/caseDicts/solvers/scalarTransport/s index dfc39ce0e26a645f583d10a4cd2e3f4c1c372cc6..d5a54a1e0ef200cc4e2156ea0f62ad20b6bd86f0 100644 --- a/etc/caseDicts/solvers/scalarTransport/s +++ b/etc/caseDicts/solvers/scalarTransport/s @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/solvers/scalarTransport/scalarTransportDict b/etc/caseDicts/solvers/scalarTransport/scalarTransportDict index 3dd77e8fb6837a4652c439499ef7b011f755a0d9..648a80372daaec4f0608bcda322226582b46229a 100644 --- a/etc/caseDicts/solvers/scalarTransport/scalarTransportDict +++ b/etc/caseDicts/solvers/scalarTransport/scalarTransportDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/solvers/scalarTransport/scalarTransportDict.cfg b/etc/caseDicts/solvers/scalarTransport/scalarTransportDict.cfg index 23cd05769529c37d72804bccad4cfe67aff74b0d..9b8e7c656dd0a7cc6a813775c5a8e26c7158c1c6 100644 --- a/etc/caseDicts/solvers/scalarTransport/scalarTransportDict.cfg +++ b/etc/caseDicts/solvers/scalarTransport/scalarTransportDict.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/caseDicts/surface/surfaceFeatureExtractDict.cfg b/etc/caseDicts/surface/surfaceFeatureExtractDict.cfg index ab7339ca6a90572e7909013d3c4475aa19c2eddb..e851fd9dc05fcda9ee5804786941659a9e3d6369 100644 --- a/etc/caseDicts/surface/surfaceFeatureExtractDict.cfg +++ b/etc/caseDicts/surface/surfaceFeatureExtractDict.cfg @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/cellModels b/etc/cellModels index 7d9a0d842286d9b7b1a5de0544b76c802c01e675..83475a72992915d6da6d7f966868ba1d3d6c979c 100644 --- a/etc/cellModels +++ b/etc/cellModels @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/codeTemplates/dynamicCode/codedFunction1Template.H b/etc/codeTemplates/dynamicCode/codedFunction1Template.H index 3b2de974a937201c76899149d3902fc4c947ee72..d54e4a350cca9f2a7f051bb28b668eee119def41 100644 --- a/etc/codeTemplates/dynamicCode/codedFunction1Template.H +++ b/etc/codeTemplates/dynamicCode/codedFunction1Template.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,13 +86,10 @@ public: const ${typeName}Function1_${TemplateType}& rhs ) = default; - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<${TemplateType}>> clone() const { - return tmp<Function1<${TemplateType}>> - ( - new ${typeName}Function1_${TemplateType}(*this) - ); + return Function1<${TemplateType}>::Clone(*this); } diff --git a/etc/codeTemplates/dynamicCode/codedPatchFunction1Template.H b/etc/codeTemplates/dynamicCode/codedPatchFunction1Template.H index c67d16001272039e067b1f2165930a5484158cf8..16b38abecc9c643368ba4fc281b094c0475c6f6d 100644 --- a/etc/codeTemplates/dynamicCode/codedPatchFunction1Template.H +++ b/etc/codeTemplates/dynamicCode/codedPatchFunction1Template.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -85,12 +85,6 @@ public: const bool faceValues = true ); - //- Copy construct - ${typeName}PatchFunction1${FieldType} - ( - const ${typeName}PatchFunction1${FieldType}& rhs - ) = default; - //- Copy construct, resetting patch ${typeName}PatchFunction1${FieldType} ( @@ -98,25 +92,25 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + ${typeName}PatchFunction1${FieldType} + ( + const ${typeName}PatchFunction1${FieldType}& rhs + ) = default; + + //- Return a clone virtual tmp<PatchFunction1<${TemplateType}>> clone() const { - return tmp<PatchFunction1<${TemplateType}>> - ( - new ${typeName}PatchFunction1${FieldType}(*this) - ); + return PatchFunction1<${TemplateType}>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<${TemplateType}>> clone ( const polyPatch& pp ) const { - return tmp<PatchFunction1<${TemplateType}>> - ( - new ${typeName}PatchFunction1${FieldType}(*this, pp) - ); + return PatchFunction1<${TemplateType}>::Clone(*this, pp); } diff --git a/etc/codeTemplates/dynamicCode/fixedValueFvPatchFieldTemplate.H b/etc/codeTemplates/dynamicCode/fixedValueFvPatchFieldTemplate.H index 1baf7be91e73294948c3241c02d044886ef48d3d..92f61528f660bd388c2eb2b4ae42e8de7d8bcbf8 100644 --- a/etc/codeTemplates/dynamicCode/fixedValueFvPatchFieldTemplate.H +++ b/etc/codeTemplates/dynamicCode/fixedValueFvPatchFieldTemplate.H @@ -107,15 +107,6 @@ public: const ${typeName}FixedValueFvPatch${FieldType}& ); - //- Construct and return a clone - virtual tmp<fvPatch${FieldType}> clone() const - { - return tmp<fvPatch${FieldType}> - ( - new ${typeName}FixedValueFvPatch${FieldType}(*this) - ); - } - //- Construct as copy setting internal field reference ${typeName}FixedValueFvPatch${FieldType} ( @@ -123,16 +114,19 @@ public: const DimensionedField<${TemplateType}, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatch${FieldType}> clone + //- Return a clone + virtual tmp<fvPatchField<${TemplateType}>> clone() const + { + return fvPatchField<${TemplateType}>::Clone(*this); + } + + //- Clone with an internal field reference + virtual tmp<fvPatchField<${TemplateType}>> clone ( const DimensionedField<${TemplateType}, volMesh>& iF ) const { - return tmp<fvPatch${FieldType}> - ( - new ${typeName}FixedValueFvPatch${FieldType}(*this, iF) - ); + return fvPatchField<${TemplateType}>::Clone(*this, iF); } diff --git a/etc/codeTemplates/dynamicCode/fixedValuePointPatchFieldTemplate.H b/etc/codeTemplates/dynamicCode/fixedValuePointPatchFieldTemplate.H index d46cd3e1a6f38c8ac2ecad65efad26f08830b40b..3fef28149c84f06b7250ce1d246f719c70b70b29 100644 --- a/etc/codeTemplates/dynamicCode/fixedValuePointPatchFieldTemplate.H +++ b/etc/codeTemplates/dynamicCode/fixedValuePointPatchFieldTemplate.H @@ -108,15 +108,6 @@ public: const ${typeName}FixedValuePointPatch${FieldType}& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<${TemplateType}>> clone() const - { - return autoPtr<pointPatchField<${TemplateType}>> - ( - new ${typeName}FixedValuePointPatch${FieldType}(*this) - ); - } - //- Construct as copy setting internal field reference ${typeName}FixedValuePointPatch${FieldType} ( @@ -124,16 +115,19 @@ public: const DimensionedField<${TemplateType}, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<${TemplateType}>> clone() const + { + return pointPatchField<${TemplateType}>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<${TemplateType}>> clone ( const DimensionedField<${TemplateType}, pointMesh>& iF ) const { - return autoPtr<pointPatchField<${TemplateType}>> - ( - new ${typeName}FixedValuePointPatch${FieldType}(*this, iF) - ); + return pointPatchField<${TemplateType}>::Clone(*this, iF); } diff --git a/etc/codeTemplates/dynamicCode/mixedFvPatchFieldTemplate.H b/etc/codeTemplates/dynamicCode/mixedFvPatchFieldTemplate.H index 74195dc8df5b3dc1a5f56245bba701446d98c8d6..8e9ee59f8236015b892d6940774e87be746aa68c 100644 --- a/etc/codeTemplates/dynamicCode/mixedFvPatchFieldTemplate.H +++ b/etc/codeTemplates/dynamicCode/mixedFvPatchFieldTemplate.H @@ -107,15 +107,6 @@ public: const ${typeName}MixedValueFvPatch${FieldType}& ); - //- Construct and return a clone - virtual tmp<fvPatch${FieldType}> clone() const - { - return tmp<fvPatch${FieldType}> - ( - new ${typeName}MixedValueFvPatch${FieldType}(*this) - ); - } - //- Construct as copy setting internal field reference ${typeName}MixedValueFvPatch${FieldType} ( @@ -123,16 +114,19 @@ public: const DimensionedField<${TemplateType}, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatch${FieldType}> clone + //- Return a clone + virtual tmp<fvPatchField<${TemplateType}>> clone() const + { + return fvPatchField<${TemplateType}>::Clone(*this); + } + + //- Clone with an internal field reference + virtual tmp<fvPatchField<${TemplateType}>> clone ( const DimensionedField<${TemplateType}, volMesh>& iF ) const { - return tmp<fvPatch${FieldType}> - ( - new ${typeName}MixedValueFvPatch${FieldType}(*this, iF) - ); + return fvPatchField<${TemplateType}>::Clone(*this, iF); } diff --git a/etc/colourTables b/etc/colourTables index 2eb5dea8fd1c37dc7d7c386c3a7ef1ac7b390603..291ecd5d48ce1877c52149dbba0464d073d41166 100644 --- a/etc/colourTables +++ b/etc/colourTables @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/config.csh/adios2 b/etc/config.csh/adios2 index bd134ea44445a65820fd9e16b000ecd30be4ea55..eaf0eeab4eb35cdc049bc48a5c8dd817bb5de2a1 100644 --- a/etc/config.csh/adios2 +++ b/etc/config.csh/adios2 @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2017-2023 OpenCFD Ltd. +# Copyright (C) 2017-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -20,7 +20,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -set adios2_version=ADIOS2-2.9.2 +set adios2_version=ADIOS2-2.10.1 setenv ADIOS2_ARCH_PATH "$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$adios2_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.csh/compiler b/etc/config.csh/compiler index 262c79212522bb5a3a36d9349fea543272023de6..5a1c2eca95e090a967ef22249f00f2f01758d1cd 100644 --- a/etc/config.csh/compiler +++ b/etc/config.csh/compiler @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -73,9 +73,30 @@ case ThirdParty: case Gcc: set gcc_version="$default_gcc_version" breaksw + case Gcc141*: + set gcc_version=gcc-14.1.0 + breaksw + case Gcc133*: + set gcc_version=gcc-13.3.0 + breaksw + case Gcc132*: + set gcc_version=gcc-13.2.0 + breaksw + case Gcc131*: + set gcc_version=gcc-13.1.0 + breaksw + case Gcc123*: + set gcc_version=gcc-12.3.0 + breaksw + case Gcc122*: + set gcc_version=gcc-12.2.0 + breaksw case Gcc121*: set gcc_version=gcc-12.1.0 breaksw + case Gcc114*: + set gcc_version=gcc-11.4.0 + breaksw case Gcc113*: set gcc_version=gcc-11.3.0 breaksw @@ -83,7 +104,13 @@ case ThirdParty: set gcc_version=gcc-11.2.0 breaksw case Gcc111*: - set gcc_version=gcc-11.1.1 + set gcc_version=gcc-11.1.0 + breaksw + case Gcc105*: + set gcc_version=gcc-10.5.0 + breaksw + case Gcc104*: + set gcc_version=gcc-10.4.0 breaksw case Gcc103*: set gcc_version=gcc-10.3.0 @@ -182,8 +209,20 @@ case ThirdParty: case Clang: set clang_version="$default_clang_version" breaksw + case Clang181*: + set clang_version=llvm-18.1.6 + breaksw + case Clang170*: + set clang_version=llvm-17.0.6 + breaksw + case Clang160*: + set clang_version=llvm-16.0.6 + breaksw + case Clang150*: + set clang_version=llvm-15.0.7 + breaksw case Clang140*: - set clang_version=llvm-14.0.5 + set clang_version=llvm-14.0.6 breaksw case Clang130*: set clang_version=llvm-13.0.1 diff --git a/etc/config.csh/hypre b/etc/config.csh/hypre index 56c45ad1eb5583a3a96c308c6685756e55da89f8..9e3d4af9fa8cfd1efdcc2a855101fc7bd5b38a8c 100644 --- a/etc/config.csh/hypre +++ b/etc/config.csh/hypre @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2018-2021 OpenCFD Ltd. +# Copyright (C) 2018-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -30,7 +30,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -set hypre_version=hypre-2.23.0 +set hypre_version=hypre-2.31.0 setenv HYPRE_ARCH_PATH "$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$hypre_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.csh/paraview b/etc/config.csh/paraview index 2e6819a744cc6a386ca1a29ce7a1ff7092d7052d..bf990e749eefb8401f89e5c605f8cb72b5497125 100644 --- a/etc/config.csh/paraview +++ b/etc/config.csh/paraview @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -52,7 +52,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -set ParaView_VERSION=5.11.2 +set ParaView_VERSION=5.12.1 set ParaView_QT=qt-system # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.csh/petsc b/etc/config.csh/petsc index b4518e6053fa82865a383a97fe6bf86df7cd395c..b118ea0f5e31f509811ae92a2974521f763f1870 100644 --- a/etc/config.csh/petsc +++ b/etc/config.csh/petsc @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2018-2023 OpenCFD Ltd. +# Copyright (C) 2018-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -30,7 +30,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -set petsc_version=petsc-3.19.2 +set petsc_version=petsc-3.21.2 setenv PETSC_ARCH_PATH "$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$petsc_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.sh/adios2 b/etc/config.sh/adios2 index ae967dc7c8b4a206b2e58f2ca3a179b025adc113..72439447591d425ebcb56335fb162adb82879ceb 100644 --- a/etc/config.sh/adios2 +++ b/etc/config.sh/adios2 @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2017-2023 OpenCFD Ltd. +# Copyright (C) 2017-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -21,7 +21,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -adios2_version=ADIOS2-2.9.2 +adios2_version=ADIOS2-2.10.1 export ADIOS2_ARCH_PATH="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$adios2_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.sh/compiler b/etc/config.sh/compiler index 94c03678d1966172f37a71a7f5d19f7df6c77139..74697e6ee15f20e324f1351c2e85bd41b8aea459 100644 --- a/etc/config.sh/compiler +++ b/etc/config.sh/compiler @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -74,10 +74,19 @@ ThirdParty) case "$WM_COMPILER" in Gcc) gcc_version="$default_gcc_version" ;; + Gcc141*) gcc_version=gcc-14.1.0 ;; + Gcc133*) gcc_version=gcc-13.3.0 ;; + Gcc132*) gcc_version=gcc-13.2.0 ;; + Gcc131*) gcc_version=gcc-13.1.0 ;; + Gcc123*) gcc_version=gcc-12.3.0 ;; + Gcc122*) gcc_version=gcc-12.2.0 ;; Gcc121*) gcc_version=gcc-12.1.0 ;; + Gcc114*) gcc_version=gcc-11.4.0 ;; Gcc113*) gcc_version=gcc-11.3.0 ;; Gcc112*) gcc_version=gcc-11.2.0 ;; - Gcc111*) gcc_version=gcc-11.1.1 ;; + Gcc111*) gcc_version=gcc-11.1.0 ;; + Gcc105*) gcc_version=gcc-10.5.0 ;; + Gcc104*) gcc_version=gcc-10.4.0 ;; Gcc103*) gcc_version=gcc-10.3.0 ;; Gcc102*) gcc_version=gcc-10.2.0 ;; Gcc101*) gcc_version=gcc-10.1.0 ;; @@ -112,7 +121,11 @@ ThirdParty) #ancient# Gcc48*) gcc_version=gcc-4.8.5 ;; Clang) clang_version="$default_clang_version" ;; - Clang140*) clang_version=llvm-14.0.5 ;; + Clang181*) clang_version=llvm-18.1.6 ;; + Clang170*) clang_version=llvm-17.0.6 ;; + Clang160*) clang_version=llvm-16.0.6 ;; + Clang150*) clang_version=llvm-15.0.7 ;; + Clang140*) clang_version=llvm-14.0.6 ;; Clang130*) clang_version=llvm-13.0.1 ;; Clang120*) clang_version=llvm-12.0.1 ;; Clang111*) clang_version=llvm-11.1.0 ;; diff --git a/etc/config.sh/completion_cache b/etc/config.sh/completion_cache index d7a084a9b3ec406768d4e1684ecb7e2bfdfbc966..50d2e1c2dbabc0600af453ad2ed279c8fc1d92d9 100644 --- a/etc/config.sh/completion_cache +++ b/etc/config.sh/completion_cache @@ -25,13 +25,14 @@ _of_complete_cache_[boundaryFoam]="-case -fileHandler | -dry-run -dry-run-write _of_complete_cache_[boxTurb]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[buoyantBoussinesqPimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[buoyantBoussinesqSimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" +_of_complete_cache_[buoyantPbePimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[buoyantPimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[buoyantSimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[cavitatingDyMFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[cavitatingFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[cfx4ToFoam]="-case -fileHandler -scale | -noFunctionObjects -doc -help" _of_complete_cache_[changeDictionary]="-case -decomposeParDict -dict -fileHandler -instance -region -subDict -time -world | -constant -disablePatchGroups -enableFunctionEntries -latestTime -literalRE -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" -_of_complete_cache_[checkFaMesh]="-case -decomposeParDict -fileHandler -geometryOrder -region -world | -mpi-threads -noFunctionObjects -parallel -write-vtk -doc -help" +_of_complete_cache_[checkFaMesh]="-area-region -case -decomposeParDict -fileHandler -geometryOrder -region -world | -mpi-threads -noFunctionObjects -parallel -write-vtk -doc -help" _of_complete_cache_[checkMesh]="-case -decomposeParDict -fileHandler -region -regions -time -world -writeChecks -writeFields -writeSets | -allGeometry -allRegions -allTopology -constant -latestTime -meshQuality -mpi-threads -noFunctionObjects -noTopology -noZero -parallel -write-edges -writeAllFields -writeAllSurfaceFields -doc -help" _of_complete_cache_[chemFoam]="-case -fileHandler | -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -noFunctionObjects -postProcess -doc -help" _of_complete_cache_[chemkinToFoam]="-case -fileHandler | -newFormat -doc -help" @@ -47,12 +48,15 @@ _of_complete_cache_[compressibleInterFilmFoam]="-case -decomposeParDict -fileHan _of_complete_cache_[compressibleInterFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[compressibleInterIsoFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[compressibleMultiphaseInterFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" +_of_complete_cache_[compressiblePbeTransportFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" +_of_complete_cache_[computeMoments]="-case -decomposeParDict -fileHandler -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[computeSensitivities]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[createBaffles]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -overwrite -parallel -doc -help" _of_complete_cache_[createBoxTurb]="-case -decomposeParDict -fileHandler -world | -createBlockMesh -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[createExternalCoupledPatchGeometry]="-case -commsDir -decomposeParDict -fileHandler -region -regions -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[createPatch]="-case -decomposeParDict -dict -fileHandler -region -regions -world | -allRegions -mpi-threads -overwrite -parallel -writeObj -doc -help" _of_complete_cache_[createROMfields]="-case -decomposeParDict -dict -fileHandler -region -time | -latestTime -mpi-threads -parallel -doc -help" +_of_complete_cache_[createViewFactors]="-case -decomposeParDict -fileHandler -region -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[createZeroDirectory]="-case -decomposeParDict -fileHandler -templateDir -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[cumulativeDisplacement]="-case -decomposeParDict -fileHandler -region -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[datToFoam]="-case -fileHandler | -noFunctionObjects -doc -help" @@ -75,7 +79,6 @@ _of_complete_cache_[equilibriumCO]="-case -fileHandler | -doc -help" _of_complete_cache_[equilibriumFlameT]="-case -fileHandler | -doc -help" _of_complete_cache_[explicitRhoFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[extrude2DMesh]="-case -decomposeParDict -fileHandler -world | -mpi-threads -overwrite -parallel -doc -help" -_of_complete_cache_[extrudeEdgesInto2DSurface]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[extrudeMesh]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[extrudeToRegionMesh]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -noFunctionObjects -overwrite -parallel -doc -help" _of_complete_cache_[faceAgglomerate]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -noFunctionObjects -parallel -doc -help" @@ -99,13 +102,12 @@ _of_complete_cache_[foamToFireMesh]="-case -fileHandler -scale -time | -ascii -c _of_complete_cache_[foamToGMV]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[foamToStarMesh]="-case -fileHandler -scale -time | -constant -latestTime -noBnd -noFunctionObjects -noZero -doc -help" _of_complete_cache_[foamToSurface]="-case -fileHandler -scale -time | -constant -latestTime -noFunctionObjects -noZero -tri -doc -help" -_of_complete_cache_[foamToTetDualMesh]="-case -decomposeParDict -fileHandler -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noZero -overwrite -parallel -doc -help" +_of_complete_cache_[foamToTetDualMesh]="-case -decomposeParDict -fileHandler -time -world | -constant -latestTime -mpi-threads -noZero -overwrite -parallel -doc -help" _of_complete_cache_[foamToVTK]="-case -cellSet -cellZone -decomposeParDict -exclude-fields -exclude-patches -faceSet -faceZones -fields -fileHandler -name -patches -pointSet -region -regions -time -world | -allRegions -ascii -constant -latestTime -legacy -mpi-threads -nearCellValue -no-boundary -no-fields -no-finite-area -no-internal -no-lagrangian -no-point-data -noFunctionObjects -noZero -one-boundary -overwrite -parallel -poly-decomp -processor-fields -surfaceFields -verbose -with-ids -with-point-ids -doc -help" _of_complete_cache_[foamUpgradeCyclics]="-case -decomposeParDict -fileHandler -region -time -world | -constant -dry-run -enableFunctionEntries -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[foamyHexMesh]="-case -decomposeParDict -fileHandler -world | -checkGeometry -conformationOnly -mpi-threads -parallel -doc -help" _of_complete_cache_[foamyQuadMesh]="-case -fileHandler -pointsFile | -noFunctionObjects -overwrite -doc -help" _of_complete_cache_[gambitToFoam]="-case -fileHandler -scale | -noFunctionObjects -doc -help" -_of_complete_cache_[generateBoundaryLayers]="-case -decomposeParDict -fileHandler -world | -2DLayers -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[generateMoments]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[gmshToFoam]="-case -fileHandler -region | -keepOrientation -noFunctionObjects -doc -help" _of_complete_cache_[icoFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" @@ -113,9 +115,6 @@ _of_complete_cache_[icoReactingMultiphaseInterFoam]="-case -decomposeParDict -fi _of_complete_cache_[icoUncoupledKinematicParcelDyMFoam]="-case -cloud -decomposeParDict -fileHandler -world | -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[icoUncoupledKinematicParcelFoam]="-case -cloud -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[ideasUnvToFoam]="-case -fileHandler | -dump -noFunctionObjects -doc -help" -_of_complete_cache_[importSurfaceAsSubset]="-case -fileHandler | -noFunctionObjects -doc -help" -_of_complete_cache_[improveMeshQuality]="-case -constrainedCellsSet -decomposeParDict -fileHandler -nIterations -nLoops -nSurfaceIterations -qualityThreshold -world | -mpi-threads -noFunctionObjects -parallel -doc -help" -_of_complete_cache_[improveSymmetryPlanes]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[insideCells]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[interCondensatingEvaporatingFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[interFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" @@ -131,7 +130,7 @@ _of_complete_cache_[lumpedPointForces]="-case -decomposeParDict -fileHandler -re _of_complete_cache_[lumpedPointMovement]="-case -decomposeParDict -fileHandler -max -scale -span -visual-length -world | -dry-run -mpi-threads -parallel -removeLock -slave -doc -help" _of_complete_cache_[lumpedPointZones]="-case -decomposeParDict -fileHandler -region -visual-length -world | -dry-run -mpi-threads -no-interpolate -parallel -verbose -doc -help" _of_complete_cache_[magneticFoam]="-case -decomposeParDict -fileHandler -world | -HdotGradH -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noB -noFunctionObjects -noH -parallel -doc -help" -_of_complete_cache_[makeFaMesh]="-case -decomposeParDict -dict -empty-patch -fileHandler -region -world | -dry-run -mpi-threads -no-decompose -no-fields -noFunctionObjects -parallel -write-edges-obj -write-vtk -doc -help" +_of_complete_cache_[makeFaMesh]="-area-region -case -decomposeParDict -dict -empty-patch -fileHandler -region -world | -dry-run -mpi-threads -no-decompose -no-fields -noFunctionObjects -parallel -write-edges-obj -write-vtk -doc -help" _of_complete_cache_[mapFields]="-case -fileHandler -mapMethod -sourceDecomposeParDict -sourceRegion -sourceTime -targetDecomposeParDict -targetRegion | -consistent -noFunctionObjects -parallelSource -parallelTarget -subtract -doc -help" _of_complete_cache_[mapFieldsPar]="-case -decomposeParDict -fields -fileHandler -mapMethod -patchMapMethod -procMapMethod -sourceRegion -sourceTime -targetRegion -world | -consistent -mpi-threads -no-lagrangian -noFunctionObjects -parallel -subtract -doc -help" _of_complete_cache_[mdEquilibrationFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -doc -help" @@ -139,9 +138,9 @@ _of_complete_cache_[mdFoam]="-case -decomposeParDict -fileHandler -world | -list _of_complete_cache_[mdInitialise]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[mergeMeshes]="-addRegion -case -decomposeParDict -fileHandler -masterRegion -resultTime -world | -mpi-threads -noFunctionObjects -overwrite -parallel -doc -help" _of_complete_cache_[mergeOrSplitBaffles]="-case -decomposeParDict -dict -fileHandler -region -world | -detectOnly -mpi-threads -overwrite -parallel -split -doc -help" -_of_complete_cache_[mergeSurfacePatches]="-case -fileHandler -output -patchIdRange -patchIds -patchNames | -keep -noFunctionObjects -doc -help" _of_complete_cache_[mhdFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[mirrorMesh]="-case -decomposeParDict -dict -fileHandler -world | -mpi-threads -noFunctionObjects -overwrite -parallel -doc -help" +_of_complete_cache_[mixingFoam]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[mixingTransportFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[mixtureAdiabaticFlameT]="-case -fileHandler | -doc -help" _of_complete_cache_[modifyMesh]="-case -decomposeParDict -dict -fileHandler -world | -mpi-threads -overwrite -parallel -doc -help" @@ -171,7 +170,6 @@ _of_complete_cache_[overRhoPimpleDyMFoam]="-case -decomposeParDict -fileHandler _of_complete_cache_[overRhoSimpleFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[overSimpleFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[particleTracks]="-case -decomposeParDict -dict -fields -fileHandler -format -region -stride -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -verbose -doc -help" -_of_complete_cache_[patchesToSubsets]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[patchSummary]="-case -decomposeParDict -fileHandler -region -time -world | -constant -expand -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[pbeFoam]="-case -fileHandler | -noFunctionObjects -postProcess -doc -help" _of_complete_cache_[pbeTransportFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" @@ -183,7 +181,6 @@ _of_complete_cache_[PDRsetFields]="-case -dict -fileHandler -time | -dry-run -le _of_complete_cache_[pimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[pisoFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[plot3dToFoam]="-2D -case -fileHandler -scale | -noBlank -noFunctionObjects -singleBlock -doc -help" -_of_complete_cache_[pMesh]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[polydisperseBubbleFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[polyDualMesh]="-case -fileHandler | -concaveMultiCells -doNotPreserveFaceZones -noFunctionObjects -overwrite -splitAllFaces -doc -help" _of_complete_cache_[porousSimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" @@ -192,7 +189,6 @@ _of_complete_cache_[postProcess]="-case -decomposeParDict -dict -field -fields - _of_complete_cache_[potentialFoam]="-case -decomposeParDict -fileHandler -pName -region -world | -dry-run -dry-run-write -initialiseUBCs -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -withFunctionObjects -writePhi -writep -writephi -doc -help" _of_complete_cache_[potentialFreeSurfaceDyMFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[potentialFreeSurfaceFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" -_of_complete_cache_[preparePar]="-case -decomposeParDict -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[profilingSummary]="-case -fileHandler -time | -constant -latestTime -noZero -withZero -doc -help" _of_complete_cache_[reactingFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[reactingHeterogenousParcelFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" @@ -207,10 +203,8 @@ _of_complete_cache_[refineHexMesh]="-case -decomposeParDict -fileHandler -region _of_complete_cache_[refinementLevel]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -readLevel -doc -help" _of_complete_cache_[refineMesh]="-case -decomposeParDict -dict -fileHandler -region -world | -all -mpi-threads -overwrite -parallel -doc -help" _of_complete_cache_[refineWallLayer]="-case -decomposeParDict -fileHandler -useSet -world | -mpi-threads -overwrite -parallel -doc -help" -_of_complete_cache_[releaseAreaMapping]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[removeFaces]="-case -decomposeParDict -fileHandler -world | -mpi-threads -overwrite -parallel -doc -help" -_of_complete_cache_[removeSurfaceFacets]="-case -fileHandler | -noFunctionObjects -doc -help" -_of_complete_cache_[renumberMesh]="-case -decomposeParDict -dict -fileHandler -region -regions -time -world | -allRegions -constant -frontWidth -latestTime -mpi-threads -noZero -overwrite -parallel -doc -help" +_of_complete_cache_[renumberMesh]="-case -decomposeParDict -dict -fileHandler -region -regions -renumber-coeffs -renumber-method -time -world | -allRegions -constant -decompose -dry-run -frontWidth -latestTime -list-renumber -mpi-threads -no-fields -noZero -overwrite -parallel -verbose -write-maps -doc -help" _of_complete_cache_[rhoCentralFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[rhoPimpleAdiabaticFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[rhoPimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" @@ -220,13 +214,11 @@ _of_complete_cache_[rhoReactingFoam]="-case -decomposeParDict -fileHandler -worl _of_complete_cache_[rhoSimpleFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[rotateMesh]="-case -decomposeParDict -fileHandler -region -regions -time -world | -allRegions -constant -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[scalarTransportFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -doc -help" -_of_complete_cache_[scaleMesh]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" -_of_complete_cache_[scaleSurfaceMesh]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[selectCells]="-case -fileHandler | -noFunctionObjects -doc -help" -_of_complete_cache_[setAlphaField]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -noFunctionObjects -parallel -doc -help" +_of_complete_cache_[setAlphaField]="-case -decomposeParDict -dict -fileHandler -region -time -world | -constant -latestTime -mpi-threads -noZero -parallel -doc -help" _of_complete_cache_[setExprBoundaryFields]="-case -decomposeParDict -dict -fileHandler -load-fields -region -time -world | -ascii -backup -cache-fields -dry-run -latestTime -mpi-threads -noZero -parallel -withFunctionObjects -doc -help" _of_complete_cache_[setExprFields]="-case -decomposeParDict -dict -dimensions -expression -field -field-mask -fileHandler -load-fields -region -time -value-patches -world | -ascii -create -debug-parser -dry-run -dummy-phi -keepPatches -latestTime -mpi-threads -no-variable-cache -noZero -parallel -verbose -withFunctionObjects -doc -help" -_of_complete_cache_[setFields]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -no-finite-area -noFunctionObjects -parallel -doc -help" +_of_complete_cache_[setFields]="-case -decomposeParDict -dict -fileHandler -region -time -world | -constant -latestTime -mpi-threads -no-finite-area -noZero -parallel -doc -help" _of_complete_cache_[setSet]="-batch -case -decomposeParDict -fileHandler -region -time -world | -constant -latestTime -loop -mpi-threads -noFunctionObjects -noSync -noVTK -noZero -parallel -doc -help" _of_complete_cache_[setsToZones]="-case -decomposeParDict -fileHandler -region -time -world | -constant -latestTime -mpi-threads -noFlipMap -noFunctionObjects -noZero -parallel -doc -help" _of_complete_cache_[setTurbulenceFields]="-case -decomposeParDict -dict -fileHandler -region -world | -mpi-threads -parallel -doc -help" @@ -236,7 +228,6 @@ _of_complete_cache_[simpleFoam]="-case -decomposeParDict -fileHandler -world | - _of_complete_cache_[simpleReactingParcelFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[simpleSprayFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[singleCellMesh]="-case -decomposeParDict -fileHandler -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noZero -parallel -doc -help" -_of_complete_cache_[slopeMesh]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[smapToFoam]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[smoothSurfaceData]="-case -decomposeParDict -field -fileHandler -radius -read-format -sweeps -world | -mpi-threads -noFunctionObjects -parallel -verbose -doc -help" _of_complete_cache_[snappyHexMesh]="-case -decomposeParDict -dict -fileHandler -outFile -patches -region -surfaceSimplify -world | -checkGeometry -dry-run -mpi-threads -overwrite -parallel -profiling -doc -help" @@ -259,7 +250,6 @@ _of_complete_cache_[star4ToFoam]="-case -fileHandler -scale | -ascii -noFunction _of_complete_cache_[steadyParticleTracks]="-case -dict -fileHandler -region -time | -constant -latestTime -noFunctionObjects -noZero -verbose -doc -help" _of_complete_cache_[stitchMesh]="-case -dict -fileHandler -region -toleranceDict | -integral -intermediate -overwrite -partial -perfect -doc -help" _of_complete_cache_[subsetMesh]="-case -decomposeParDict -exclude-patches -fileHandler -patch -patches -region -resultTime -world | -mpi-threads -overwrite -parallel -zone -doc -help" -_of_complete_cache_[subsetToPatch]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceAdd]="-case -fileHandler -points -scale | -mergeRegions -noFunctionObjects -verbose -doc -help" _of_complete_cache_[surfaceBooleanFeatures]="-case -fileHandler -scale -trim | -invertedSpace -no-cgal -noFunctionObjects -perturb -surf1Baffle -surf2Baffle -doc -help" _of_complete_cache_[surfaceCheck]="-case -fileHandler -outputThreshold -writeSets | -blockMesh -checkSelfIntersection -noFunctionObjects -splitNonManifold -verbose -doc -help" @@ -267,10 +257,8 @@ _of_complete_cache_[surfaceClean]="-case -fileHandler -scale | -no-clean -noFunc _of_complete_cache_[surfaceCoarsen]="-case -fileHandler -scale | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceConvert]="-case -fileHandler -precision -read-format -scale -write-format | -clean -group -noFunctionObjects -verbose -doc -help" _of_complete_cache_[surfaceFeatureConvert]="-case -fileHandler -read-format -scale -write-format | -noFunctionObjects -doc -help" -_of_complete_cache_[surfaceFeatureEdges]="-angle -case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceFeatureExtract]="-case -dict -fileHandler | -doc -help" _of_complete_cache_[surfaceFind]="-case -fileHandler -x -y -z | -noFunctionObjects -doc -help" -_of_complete_cache_[surfaceGenerateBoundingBox]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceHookUp]="-case -dict -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceInertia]="-case -density -fileHandler -referencePoint | -noFunctionObjects -shellProperties -doc -help" _of_complete_cache_[surfaceInflate]="-case -featureAngle -fileHandler -nSmooth | -checkSelfIntersection -debug -doc -help" @@ -289,16 +277,14 @@ _of_complete_cache_[surfaceSplitByPatch]="-case -exclude-patches -fileHandler -p _of_complete_cache_[surfaceSplitByTopology]=" | -doc -help" _of_complete_cache_[surfaceSplitNonManifolds]="-case -fileHandler | -debug -noFunctionObjects -doc -help" _of_complete_cache_[surfaceSubset]="-case -fileHandler | -noFunctionObjects -doc -help" -_of_complete_cache_[surfaceToFMS]="-case -fileHandler | -noFunctionObjects -doc -help" _of_complete_cache_[surfaceToPatch]="-case -faceSet -fileHandler -tol | -noFunctionObjects -doc -help" -_of_complete_cache_[surfaceTransformPoints]="-case -centre -fileHandler -read-format -read-scale -rollPitchYaw -rotate -rotate-angle -rotate-x -rotate-y -rotate-z -translate -write-format -write-scale -yawPitchRoll | -auto-centre -noFunctionObjects -recentre -doc -help" +_of_complete_cache_[surfaceTransformPoints]="-case -centre -cylToCart -fileHandler -read-format -read-scale -rollPitchYaw -rotate -rotate-angle -rotate-x -rotate-y -rotate-z -translate -write-format -write-scale -yawPitchRoll | -auto-centre -noFunctionObjects -recentre -doc -help" _of_complete_cache_[surfactantFoam]="-case -decomposeParDict -fileHandler -world | -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[temporalInterpolate]="-case -decomposeParDict -divisions -fields -fileHandler -interpolationType -region -time -world | -constant -latestTime -mpi-threads -noZero -parallel -doc -help" _of_complete_cache_[tetgenToFoam]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFaceFile -noFunctionObjects -parallel -doc -help" -_of_complete_cache_[tetMesh]="-case -decomposeParDict -fileHandler -world | -mpi-threads -noFunctionObjects -parallel -doc -help" _of_complete_cache_[thermoFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[topoSet]="-case -decomposeParDict -dict -fileHandler -region -time -world | -constant -latestTime -mpi-threads -noFunctionObjects -noSync -noZero -parallel -doc -help" -_of_complete_cache_[transformPoints]="-case -centre -decomposeParDict -fileHandler -region -regions -rollPitchYaw -rotate -rotate-angle -rotate-x -rotate-y -rotate-z -scale -time -translate -world -yawPitchRoll | -allRegions -auto-centre -mpi-threads -noFunctionObjects -parallel -recentre -rotateFields -doc -help" +_of_complete_cache_[transformPoints]="-case -centre -cylToCart -decomposeParDict -fileHandler -region -regions -rollPitchYaw -rotate -rotate-angle -rotate-x -rotate-y -rotate-z -scale -time -translate -world -yawPitchRoll | -allRegions -auto-centre -mpi-threads -noFunctionObjects -parallel -recentre -rotateFields -doc -help" _of_complete_cache_[twoLiquidMixingFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[twoPhaseEulerFoam]="-case -decomposeParDict -fileHandler -world | -dry-run -dry-run-write -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" _of_complete_cache_[uncoupledKinematicParcelDyMFoam]="-case -cloudName -decomposeParDict -fileHandler -world | -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -mpi-threads -noFunctionObjects -parallel -postProcess -doc -help" diff --git a/etc/config.sh/hdf5 b/etc/config.sh/hdf5 new file mode 100644 index 0000000000000000000000000000000000000000..61ecb637483bcdd96dda13feb4807829bf74e69d --- /dev/null +++ b/etc/config.sh/hdf5 @@ -0,0 +1,61 @@ +#----------------------------------*-sh-*-------------------------------------- +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | www.openfoam.com +# \\/ M anipulation | +#------------------------------------------------------------------------------ +# Copyright (C) 2024 OpenCFD Ltd. +#------------------------------------------------------------------------------ +# License +# This file is part of OpenFOAM, distributed under GPL-3.0-or-later. +# +# File +# etc/config.sh/hdf5 +# [optional/experimental: not sourced by OpenFOAM-*/etc/bashrc] +# +# Description +# Setup for HDF5 include/libraries (usually ThirdParty installation). +# +# To disable its use: hdf5_version=hdf5-none +# For system-wide installations: hdf5_version=hdf5-system +# +# For central installations not located under ThirdParty: +# 1. use hdf5-system +# 2. and provide full path for HDF5_ARCH_PATH +# +#------------------------------------------------------------------------------ +# USER EDITABLE PART: Changes made here may be lost with the next upgrade + +hdf5_version=hdf5-1.14.4.3 +export HDF5_ARCH_PATH="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$hdf5_version" + +# END OF (NORMAL) USER EDITABLE PART +#------------------------------------------------------------------------------ +if [ -n "$FOAM_VERBOSE" ] && [ -n "$PS1" ] +then + echo "Using hdf5 ($hdf5_version) -> $HDF5_ARCH_PATH" 1>&2 +fi + +if command -v _foamAddLibAuto >/dev/null +then + # Normal sourcing (not makeHDF5) + + _foamAddLibAuto $HDF5_ARCH_PATH + + unset hdf5_version + +elif [ "$1" = "-force" ] +then + # Forced command-line sourcing + + if output="$($WM_PROJECT_DIR/bin/tools/lib-dir -sh $HDF5_ARCH_PATH 2>/dev/null)" + then + eval "$output" + fi + + unset hdf5_version output +fi + + +#------------------------------------------------------------------------------ diff --git a/etc/config.sh/hypre b/etc/config.sh/hypre index 6f2648f2a3375ea09c12cbdaa85f0bfe178ddcd2..ba2564c03c8e47c79e8556773a6eb3063d9da58f 100644 --- a/etc/config.sh/hypre +++ b/etc/config.sh/hypre @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2018-2021 OpenCFD Ltd. +# Copyright (C) 2018-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -27,7 +27,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -hypre_version=hypre-2.23.0 +hypre_version=hypre-2.31.0 export HYPRE_ARCH_PATH="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$hypre_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.sh/paraview b/etc/config.sh/paraview index 304ea7f4d2d7ef46c3ce7202e212c98e919fa5b2..66e2eb2677581a315fc0144d9ca677075e1d2923 100644 --- a/etc/config.sh/paraview +++ b/etc/config.sh/paraview @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -57,7 +57,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -ParaView_VERSION=5.11.2 +ParaView_VERSION=5.12.1 ParaView_QT=qt-system # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.sh/petsc b/etc/config.sh/petsc index c512ebb376a7e466148d81e9497dee53a28d3b0a..93054546c622894fb8b50f85179bfdc96702f264 100644 --- a/etc/config.sh/petsc +++ b/etc/config.sh/petsc @@ -5,7 +5,7 @@ # \\ / A nd | www.openfoam.com # \\/ M anipulation | #------------------------------------------------------------------------------ -# Copyright (C) 2018-2023 OpenCFD Ltd. +# Copyright (C) 2018-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -27,7 +27,7 @@ #------------------------------------------------------------------------------ # USER EDITABLE PART: Changes made here may be lost with the next upgrade -petsc_version=petsc-3.19.2 +petsc_version=petsc-3.21.2 export PETSC_ARCH_PATH="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$petsc_version" # END OF (NORMAL) USER EDITABLE PART diff --git a/etc/config.sh/zoltan b/etc/config.sh/zoltan new file mode 100644 index 0000000000000000000000000000000000000000..f93cb8a4b787bfe183ece59bbde6f49c2dbac33e --- /dev/null +++ b/etc/config.sh/zoltan @@ -0,0 +1,34 @@ +#----------------------------------*-sh-*-------------------------------------- +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | www.openfoam.com +# \\/ M anipulation | +#------------------------------------------------------------------------------ +# Copyright (C) 2024 OpenCFD Ltd. +#------------------------------------------------------------------------------ +# License +# This file is part of OpenFOAM, distributed under GPL-3.0-or-later. +# +# File +# etc/config.sh/zoltan +# - sourced during wmake process only. +# +# Description +# Setup for ZOLTAN include/libraries (usually ThirdParty installation). +# +# To disable its use: ZOLTAN_VERSION=zoltan-none +# For system-wide installations: ZOLTAN_VERSION=zoltan-system +# +# Note +# A csh version is not needed, since the values here are only sourced +# during the wmake process +# +#------------------------------------------------------------------------------ +# USER EDITABLE PART: Changes made here may be lost with the next upgrade + +export ZOLTAN_VERSION=Zoltan-3.901 +export ZOLTAN_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$ZOLTAN_VERSION + +# END OF (NORMAL) USER EDITABLE PART +#------------------------------------------------------------------------------ diff --git a/etc/controlDict b/etc/controlDict index fc3d73ae5444322f8ca41760710230f505493d15..552f12c520154ec761f55a04314914a921a8984a 100644 --- a/etc/controlDict +++ b/etc/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -114,7 +114,7 @@ OptimisationSwitches // (sized with magnitude of value) is large enough to hold all // outstanding writes so will not try to initialise the Pstream with // threading support. - // Default: 1e9 + // Default: 0 maxThreadFileBufferSize 0; //- masterUncollated: non-blocking buffer size. @@ -132,7 +132,7 @@ OptimisationSwitches // MPI/Parallel settings // ===================== - // Default communication type (nonBlocking | scheduled | blocking); + // Default communication type (nonBlocking | scheduled | buffered) commsType nonBlocking; // Transfer double as float for processor boundaries. Mostly defunct. @@ -146,13 +146,18 @@ OptimisationSwitches // The default and minimum is (20000000). mpiBufferSize 0; - // Optional max size (bytes) for unstructured data exchanges. In some - // phases of OpenFOAM it can send over very large data chunks + // Optional max size (bytes) for unstructured data exchanges. + // In some phases of OpenFOAM it can send over very large data chunks // (e.g. in parallel load balancing) and some MPI implementations have - // problems with this. Setting this variable > 0 indicates that the - // data exchange needs to be done in multiple passes, each of maxCommsSize. - // This is not switched on by default since it requires an additional - // global reduction, even if multi-pass is not needed) + // problems with this. + // + // This tuning parameter specifies the max number of bytes before + // switching to a multi-pass send/recv + // (currently only affects PstreamBuffers exchanges). + // + // 0 : disabled + // >0 : limit exchanges to specified number of bytes + // <0 : limit exchanges to INT_MAX minus specified number of bytes maxCommsSize 0; // Optional (experimental) feature in lduMatrixUpdate diff --git a/etc/cshrc b/etc/cshrc index 7f94e0fa8576e7514a673a8560a7deedddbd5b9d..e7ed50257eb570c0f51788d5bdf49f56b2a17af7 100644 --- a/etc/cshrc +++ b/etc/cshrc @@ -6,7 +6,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2016-2023 OpenCFD Ltd. +# Copyright (C) 2016-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -55,7 +55,7 @@ # [WM_PROJECT_VERSION] - A human-readable version name # A development version is often named 'com' - as in www.openfoam.com -setenv WM_PROJECT_VERSION v2312 +setenv WM_PROJECT_VERSION v2406 #------------------------------------------------------------------------------ # Configuration environment variables. diff --git a/etc/templates/axisymmetricJet/0/U b/etc/templates/axisymmetricJet/0/U index 4b3def5d9bbd3c747f56a7465c639b7ec2587810..899b561d75390fcf747f348ccdcb39a6dc1ad7cb 100644 --- a/etc/templates/axisymmetricJet/0/U +++ b/etc/templates/axisymmetricJet/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/0/epsilon b/etc/templates/axisymmetricJet/0/epsilon index 3b38cbd6d427208a9127dc908d98c652c9b4e048..b07a43df0aa2a6aee2d630ec901d6c690d55f963 100644 --- a/etc/templates/axisymmetricJet/0/epsilon +++ b/etc/templates/axisymmetricJet/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/0/k b/etc/templates/axisymmetricJet/0/k index 2348a246fe1380ae8c2127461a7272ca9806097f..660354d0ad540418e95163a1b0b0ac50e51b0734 100644 --- a/etc/templates/axisymmetricJet/0/k +++ b/etc/templates/axisymmetricJet/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/0/nut b/etc/templates/axisymmetricJet/0/nut index 4743f4dad9fb126f5aa874496fa586fffba8a7bd..741f6cfd801c88f00cbeca335c87817a26d90c4d 100644 --- a/etc/templates/axisymmetricJet/0/nut +++ b/etc/templates/axisymmetricJet/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/0/omega b/etc/templates/axisymmetricJet/0/omega index 20afc6a84b2b8d77ee42de409d927ca4e8a6089f..c6b678971cd46850eaad3350e775a51de0e97f02 100644 --- a/etc/templates/axisymmetricJet/0/omega +++ b/etc/templates/axisymmetricJet/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/0/p b/etc/templates/axisymmetricJet/0/p index ee4ba758c08e8384f12fb7f57e69adff5722e963..e7f8a2fedad326f1755a76ffef3a531467f6d443 100644 --- a/etc/templates/axisymmetricJet/0/p +++ b/etc/templates/axisymmetricJet/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/constant/transportProperties b/etc/templates/axisymmetricJet/constant/transportProperties index c1bb40d3d3180d0b5323985081a1f5a9d86fecb1..023ee0408d0e49ed1109d3b67f1a580e91c7f8e8 100644 --- a/etc/templates/axisymmetricJet/constant/transportProperties +++ b/etc/templates/axisymmetricJet/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/constant/turbulenceProperties b/etc/templates/axisymmetricJet/constant/turbulenceProperties index a0a1101a043faee74371f202e8c16c3a97a56df9..8a72f93240738f341ca039b84997e4cef1af9217 100644 --- a/etc/templates/axisymmetricJet/constant/turbulenceProperties +++ b/etc/templates/axisymmetricJet/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/blockMeshDict b/etc/templates/axisymmetricJet/system/blockMeshDict index 8df2329ff059a9131372bab3a9fdc1e302820e4b..90a2ea0b4c0bd553c920af246b91a4f82493add9 100644 --- a/etc/templates/axisymmetricJet/system/blockMeshDict +++ b/etc/templates/axisymmetricJet/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/controlDict b/etc/templates/axisymmetricJet/system/controlDict index 22fe11b14bb7c4bc5f55948af950fca5bd6ab705..70e7f897bf9c78de66f36b30408a2fda24f353c5 100644 --- a/etc/templates/axisymmetricJet/system/controlDict +++ b/etc/templates/axisymmetricJet/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/extrudeMeshDict b/etc/templates/axisymmetricJet/system/extrudeMeshDict index 6af6488b6d5939d8f444776fa6c7efd9aeac3ddd..b7438699eab8e4a976ccc5125d8f2366030e2270 100644 --- a/etc/templates/axisymmetricJet/system/extrudeMeshDict +++ b/etc/templates/axisymmetricJet/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/fvSchemes b/etc/templates/axisymmetricJet/system/fvSchemes index 6eb429b4f9bd3ccbf2124b259ac18df391c4d325..15fac9930e95efa224f0d0e99f544dd9cd947215 100644 --- a/etc/templates/axisymmetricJet/system/fvSchemes +++ b/etc/templates/axisymmetricJet/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/fvSolution b/etc/templates/axisymmetricJet/system/fvSolution index 093bf9b200cf3829de66a16525cc88bf210c1970..1e474e3173c814f4b235a9f7347cb0e346075dc4 100644 --- a/etc/templates/axisymmetricJet/system/fvSolution +++ b/etc/templates/axisymmetricJet/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/axisymmetricJet/system/graph b/etc/templates/axisymmetricJet/system/graph index a90e72a47bcaf024e61f015d2e88f03ca9e8c609..0591aa60f6cf0408820ba4b95abccc0128c43df0 100644 --- a/etc/templates/axisymmetricJet/system/graph +++ b/etc/templates/axisymmetricJet/system/graph @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/T b/etc/templates/closedVolume/0/T index ac85c5c8684c481c0bb11c82369282505644a69f..003fcd230de0f40e4acaf6067e03f723f04ea4b2 100644 --- a/etc/templates/closedVolume/0/T +++ b/etc/templates/closedVolume/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/U b/etc/templates/closedVolume/0/U index 90ecf8ee2c4f99599c397fe6d2df309d5146a500..5d14185669435472ec783914eff3155e850ef7db 100644 --- a/etc/templates/closedVolume/0/U +++ b/etc/templates/closedVolume/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/alphat b/etc/templates/closedVolume/0/alphat index 5a86bb8a18ff38b85dfbd50cc27c3f552e288000..fa876338054e38c8c3a61c9bc561600cd8d90e2d 100644 --- a/etc/templates/closedVolume/0/alphat +++ b/etc/templates/closedVolume/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/epsilon b/etc/templates/closedVolume/0/epsilon index 10e91f2dcc967dedbf2187cd70c85ccb544e417a..ec5d777c618a7b41c79743453937c9204308e447 100644 --- a/etc/templates/closedVolume/0/epsilon +++ b/etc/templates/closedVolume/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/k b/etc/templates/closedVolume/0/k index bd9d0b4a52d7ca4b6adc4e942891ee03e5638a49..6b5b39e6a7168a3d0e2d2eb24dba25759f412443 100644 --- a/etc/templates/closedVolume/0/k +++ b/etc/templates/closedVolume/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/nut b/etc/templates/closedVolume/0/nut index 7f7aab4ab0d35d0cd4288b92aabb7ac5c1ff1ef7..8abef15ce9c35362334ec2775adc5c7da93437bf 100644 --- a/etc/templates/closedVolume/0/nut +++ b/etc/templates/closedVolume/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/omega b/etc/templates/closedVolume/0/omega index 9944babc1858840fd685492951245a36456a8bc2..1356265598444515c162c2700c3a2a944506781c 100644 --- a/etc/templates/closedVolume/0/omega +++ b/etc/templates/closedVolume/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/p b/etc/templates/closedVolume/0/p index d4f2ae74825727862e97cd0bf8270508051e3662..be96f373f9f964ed7d54e6c100028e8586e29dca 100644 --- a/etc/templates/closedVolume/0/p +++ b/etc/templates/closedVolume/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/0/p_rgh b/etc/templates/closedVolume/0/p_rgh index ae3b3edbc69d55c3ef18b5fd741e4bd09e31fd9f..46ccb38533dd74ad1b135ff375a28548e271ac50 100644 --- a/etc/templates/closedVolume/0/p_rgh +++ b/etc/templates/closedVolume/0/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/constant/g b/etc/templates/closedVolume/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/etc/templates/closedVolume/constant/g +++ b/etc/templates/closedVolume/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/constant/transportProperties b/etc/templates/closedVolume/constant/transportProperties index 63d807aec3fd690e09d9a1501d621891cec55fa1..0e2ceb9b7c1594dd68b03d84a11d328cfa1a6871 100644 --- a/etc/templates/closedVolume/constant/transportProperties +++ b/etc/templates/closedVolume/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/constant/turbulenceProperties b/etc/templates/closedVolume/constant/turbulenceProperties index 566542abe97153be5d33e17471771e629dafd45d..24b75a09139408d6c3ccf1bb7c405f8ed8ac89d8 100644 --- a/etc/templates/closedVolume/constant/turbulenceProperties +++ b/etc/templates/closedVolume/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/blockMeshDict b/etc/templates/closedVolume/system/blockMeshDict index cde8e7a664507ee4909744e947cc8a01f05a85dc..6923f6cb7404e0f667ec6f4bfa8de0301e1754db 100644 --- a/etc/templates/closedVolume/system/blockMeshDict +++ b/etc/templates/closedVolume/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/controlDict b/etc/templates/closedVolume/system/controlDict index bf558602933c7b3f22114bc1652fc26c1b016005..a371767d7cf521c4abdef33da5536ca0badcb15d 100644 --- a/etc/templates/closedVolume/system/controlDict +++ b/etc/templates/closedVolume/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/fvSchemes b/etc/templates/closedVolume/system/fvSchemes index 3ae0188bebf8ed5660c6be37b7876fb896e5872e..5b2f00b55ad1fa7b3a63fcded104dd2b431d202c 100644 --- a/etc/templates/closedVolume/system/fvSchemes +++ b/etc/templates/closedVolume/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/fvSolution b/etc/templates/closedVolume/system/fvSolution index bd582b1c4657b7319bf0b567b605a6c943dadf58..00a55fc299505cbf898e4cad76c332b5ff502892 100644 --- a/etc/templates/closedVolume/system/fvSolution +++ b/etc/templates/closedVolume/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/meshQualityDict b/etc/templates/closedVolume/system/meshQualityDict index 74a6a418e9708432d8510c133232a7d8f4f4e35e..0f376ab4b5c06c3132cb92babe7dd5ed28539e1a 100644 --- a/etc/templates/closedVolume/system/meshQualityDict +++ b/etc/templates/closedVolume/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/snappyHexMeshDict b/etc/templates/closedVolume/system/snappyHexMeshDict index 8e02c13161841afd049b5698e0de1f52ecca0d70..937d0a2491d6c6c241aedff0d4870432e03b4b4c 100644 --- a/etc/templates/closedVolume/system/snappyHexMeshDict +++ b/etc/templates/closedVolume/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolume/system/surfaceFeatureExtractDict b/etc/templates/closedVolume/system/surfaceFeatureExtractDict index 2d9dd1f9f0564558acdcda5a12fbea4be3f42957..f5f5e9010bd6e906f6cecbd9ea780bf04f9093e4 100644 --- a/etc/templates/closedVolume/system/surfaceFeatureExtractDict +++ b/etc/templates/closedVolume/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/0/U b/etc/templates/closedVolumeRotating/0/U index b7bd93ddaef5c2373370a587d402febd015bec28..35607e96b1d0cefad0b886c8f683900d40b4909f 100644 --- a/etc/templates/closedVolumeRotating/0/U +++ b/etc/templates/closedVolumeRotating/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/0/k b/etc/templates/closedVolumeRotating/0/k index 650bf84bf21783e053c122c2153baaa90a8504ef..97207294e4df02e1e387983e46522b000ef3b561 100644 --- a/etc/templates/closedVolumeRotating/0/k +++ b/etc/templates/closedVolumeRotating/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/0/nut b/etc/templates/closedVolumeRotating/0/nut index 7f7aab4ab0d35d0cd4288b92aabb7ac5c1ff1ef7..8abef15ce9c35362334ec2775adc5c7da93437bf 100644 --- a/etc/templates/closedVolumeRotating/0/nut +++ b/etc/templates/closedVolumeRotating/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/0/omega b/etc/templates/closedVolumeRotating/0/omega index daf68a2c25169aa6042e8fe348ea79241459b174..aa0751868ea11cae9eb90741900bd0451d8ad7d9 100644 --- a/etc/templates/closedVolumeRotating/0/omega +++ b/etc/templates/closedVolumeRotating/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/0/p b/etc/templates/closedVolumeRotating/0/p index d4f2ae74825727862e97cd0bf8270508051e3662..be96f373f9f964ed7d54e6c100028e8586e29dca 100644 --- a/etc/templates/closedVolumeRotating/0/p +++ b/etc/templates/closedVolumeRotating/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/constant/MRFProperties b/etc/templates/closedVolumeRotating/constant/MRFProperties index 1a17c3fc63584777f12036851f1d5222780b51da..edb26e2ce82cc179e7aff67543f807408dd54c14 100644 --- a/etc/templates/closedVolumeRotating/constant/MRFProperties +++ b/etc/templates/closedVolumeRotating/constant/MRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/constant/dynamicMeshDict b/etc/templates/closedVolumeRotating/constant/dynamicMeshDict index ca6a75424e1be1796be65f26f2b104cbb2363963..d48265ab4091ebac3828bb7bb8c757e557038c1e 100644 --- a/etc/templates/closedVolumeRotating/constant/dynamicMeshDict +++ b/etc/templates/closedVolumeRotating/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/constant/rotatingZoneProperties b/etc/templates/closedVolumeRotating/constant/rotatingZoneProperties index f5d63ca98af396a7941a22115e0060c90e703406..37fe7049e55352d47642ffa87c5348bf78b91b03 100644 --- a/etc/templates/closedVolumeRotating/constant/rotatingZoneProperties +++ b/etc/templates/closedVolumeRotating/constant/rotatingZoneProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/constant/transportProperties b/etc/templates/closedVolumeRotating/constant/transportProperties index c1bb40d3d3180d0b5323985081a1f5a9d86fecb1..023ee0408d0e49ed1109d3b67f1a580e91c7f8e8 100644 --- a/etc/templates/closedVolumeRotating/constant/transportProperties +++ b/etc/templates/closedVolumeRotating/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/constant/turbulenceProperties b/etc/templates/closedVolumeRotating/constant/turbulenceProperties index a0a1101a043faee74371f202e8c16c3a97a56df9..8a72f93240738f341ca039b84997e4cef1af9217 100644 --- a/etc/templates/closedVolumeRotating/constant/turbulenceProperties +++ b/etc/templates/closedVolumeRotating/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/blockMeshDict b/etc/templates/closedVolumeRotating/system/blockMeshDict index 0e0c30ecb575b3f0b518d15119f66ce3e3badc59..2a826b9d27ad15ea6317839dbe6973ff51473e97 100644 --- a/etc/templates/closedVolumeRotating/system/blockMeshDict +++ b/etc/templates/closedVolumeRotating/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/blockMeshDict-box b/etc/templates/closedVolumeRotating/system/blockMeshDict-box index cde8e7a664507ee4909744e947cc8a01f05a85dc..6923f6cb7404e0f667ec6f4bfa8de0301e1754db 100644 --- a/etc/templates/closedVolumeRotating/system/blockMeshDict-box +++ b/etc/templates/closedVolumeRotating/system/blockMeshDict-box @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/controlDict b/etc/templates/closedVolumeRotating/system/controlDict index 1d0afadfc29c0213845424d08d5f5878540abf48..8b9dc3810beae62ff838d77ef106ab16d7b5d56c 100644 --- a/etc/templates/closedVolumeRotating/system/controlDict +++ b/etc/templates/closedVolumeRotating/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/createBafflesDict b/etc/templates/closedVolumeRotating/system/createBafflesDict index 6c9d2d6ef2eb2f7834e35a9f79417593527ac494..b10db3f3f6ea76a597795bcc6aeecff18b1dc5b9 100644 --- a/etc/templates/closedVolumeRotating/system/createBafflesDict +++ b/etc/templates/closedVolumeRotating/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/fvSchemes b/etc/templates/closedVolumeRotating/system/fvSchemes index 48d2cc46d39b244061e7da334bc8140afb4131c0..f81d5c1a4c76f0f7ca7c99c9fc56ff0ace547438 100644 --- a/etc/templates/closedVolumeRotating/system/fvSchemes +++ b/etc/templates/closedVolumeRotating/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/fvSolution b/etc/templates/closedVolumeRotating/system/fvSolution index 093bf9b200cf3829de66a16525cc88bf210c1970..1e474e3173c814f4b235a9f7347cb0e346075dc4 100644 --- a/etc/templates/closedVolumeRotating/system/fvSolution +++ b/etc/templates/closedVolumeRotating/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/meshQualityDict b/etc/templates/closedVolumeRotating/system/meshQualityDict index 74a6a418e9708432d8510c133232a7d8f4f4e35e..0f376ab4b5c06c3132cb92babe7dd5ed28539e1a 100644 --- a/etc/templates/closedVolumeRotating/system/meshQualityDict +++ b/etc/templates/closedVolumeRotating/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/snappyHexMeshDict b/etc/templates/closedVolumeRotating/system/snappyHexMeshDict index 2f55d6202601937e010a65e227cf5580c6c88983..2a8e7f191cbf29557db1deb5983b5f4c8528461d 100644 --- a/etc/templates/closedVolumeRotating/system/snappyHexMeshDict +++ b/etc/templates/closedVolumeRotating/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/closedVolumeRotating/system/surfaceFeatureExtractDict b/etc/templates/closedVolumeRotating/system/surfaceFeatureExtractDict index 48e8fa6ffd5606f365c708985b890f60b6cd6fcc..60697349a1632701498a3e49698f134a20810b3d 100644 --- a/etc/templates/closedVolumeRotating/system/surfaceFeatureExtractDict +++ b/etc/templates/closedVolumeRotating/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/T b/etc/templates/compressibleInflowOutflow/0/T index ed1bb73440f79fe25120ff6cdcc26863f939b7c4..20fabb9a8fd71065ec2f1e32a4a00bbf70f7eb3e 100644 --- a/etc/templates/compressibleInflowOutflow/0/T +++ b/etc/templates/compressibleInflowOutflow/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/U b/etc/templates/compressibleInflowOutflow/0/U index 78e8d885378623a655645d509191e2b20ca5cff7..12a6965549315a1f9e30ea4c98cb6e3e1520030f 100644 --- a/etc/templates/compressibleInflowOutflow/0/U +++ b/etc/templates/compressibleInflowOutflow/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/alphat b/etc/templates/compressibleInflowOutflow/0/alphat index 553769ecb73d1fc3f9d34d2e75a34e37b38db98f..752f34c3e1e8eada50efbf6379c724724992f1db 100644 --- a/etc/templates/compressibleInflowOutflow/0/alphat +++ b/etc/templates/compressibleInflowOutflow/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/epsilon b/etc/templates/compressibleInflowOutflow/0/epsilon index c5f63fec7d36d8588775b15d63623139f6011e0f..c175dcd777444d7dfdea7262fc251bc5b787c52c 100644 --- a/etc/templates/compressibleInflowOutflow/0/epsilon +++ b/etc/templates/compressibleInflowOutflow/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/k b/etc/templates/compressibleInflowOutflow/0/k index d7b5be53f38326f5e943139ea63d2cb90bcaacbc..daee8c90884a73f54c470e28da7d1834e0435803 100644 --- a/etc/templates/compressibleInflowOutflow/0/k +++ b/etc/templates/compressibleInflowOutflow/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/nut b/etc/templates/compressibleInflowOutflow/0/nut index c879b9e647a06c6dd2c413b4786a53fa2a10e3c9..ac5a2fadd822678ebe95a1a8933702bdba85cbd4 100644 --- a/etc/templates/compressibleInflowOutflow/0/nut +++ b/etc/templates/compressibleInflowOutflow/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/omega b/etc/templates/compressibleInflowOutflow/0/omega index a6deb19b72d4df6a217e324b23d546fb242653b6..7c5138b6f797ae72449a3d8974d7f5c2bc2985c0 100644 --- a/etc/templates/compressibleInflowOutflow/0/omega +++ b/etc/templates/compressibleInflowOutflow/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/0/p b/etc/templates/compressibleInflowOutflow/0/p index 4ac0bd3704eb6b1888e72cdd490a94eafa9fc21d..ef035ea8156ab148ec587536793808194dc04b93 100644 --- a/etc/templates/compressibleInflowOutflow/0/p +++ b/etc/templates/compressibleInflowOutflow/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/constant/thermophysicalProperties b/etc/templates/compressibleInflowOutflow/constant/thermophysicalProperties index dc2fb9599fc5e3fac87ff2bb6ab0e3264e350ac2..6920b2f0812c5c1f8933dbfba401ce5ca544ca40 100644 --- a/etc/templates/compressibleInflowOutflow/constant/thermophysicalProperties +++ b/etc/templates/compressibleInflowOutflow/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/constant/turbulenceProperties b/etc/templates/compressibleInflowOutflow/constant/turbulenceProperties index 566542abe97153be5d33e17471771e629dafd45d..24b75a09139408d6c3ccf1bb7c405f8ed8ac89d8 100644 --- a/etc/templates/compressibleInflowOutflow/constant/turbulenceProperties +++ b/etc/templates/compressibleInflowOutflow/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/blockMeshDict b/etc/templates/compressibleInflowOutflow/system/blockMeshDict index 3f4c69cc9661aa98b6a88de52c609cc97f8dc113..b295eb8c9fe29ce2a9b1d468ce4de539ecbaa9e4 100644 --- a/etc/templates/compressibleInflowOutflow/system/blockMeshDict +++ b/etc/templates/compressibleInflowOutflow/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/controlDict b/etc/templates/compressibleInflowOutflow/system/controlDict index ed30dd7406ad7db2e7794f1ee0fb4edb0fe993ef..fa327d6e5cad35edea2ebd090832edf0acc87fe0 100644 --- a/etc/templates/compressibleInflowOutflow/system/controlDict +++ b/etc/templates/compressibleInflowOutflow/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/fvSchemes b/etc/templates/compressibleInflowOutflow/system/fvSchemes index a52c29979705f95e332287133960de363327106f..90ad9e5233cb2245659c9fc704f9462a482ecd75 100644 --- a/etc/templates/compressibleInflowOutflow/system/fvSchemes +++ b/etc/templates/compressibleInflowOutflow/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/fvSolution b/etc/templates/compressibleInflowOutflow/system/fvSolution index dea533b1872011a3d2ab72295aebc1cc317fc4e9..08b9241ee8d52683ad0482d97f5bcbdf60159244 100644 --- a/etc/templates/compressibleInflowOutflow/system/fvSolution +++ b/etc/templates/compressibleInflowOutflow/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/meshQualityDict b/etc/templates/compressibleInflowOutflow/system/meshQualityDict index 74a6a418e9708432d8510c133232a7d8f4f4e35e..0f376ab4b5c06c3132cb92babe7dd5ed28539e1a 100644 --- a/etc/templates/compressibleInflowOutflow/system/meshQualityDict +++ b/etc/templates/compressibleInflowOutflow/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/snappyHexMeshDict b/etc/templates/compressibleInflowOutflow/system/snappyHexMeshDict index 461995b8af42ac14597b821d47d8dd4a90b1e395..c1b33258928d1064f53b14270ae73397bbe72c5c 100644 --- a/etc/templates/compressibleInflowOutflow/system/snappyHexMeshDict +++ b/etc/templates/compressibleInflowOutflow/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/compressibleInflowOutflow/system/surfaceFeatureExtractDict b/etc/templates/compressibleInflowOutflow/system/surfaceFeatureExtractDict index 2d9dd1f9f0564558acdcda5a12fbea4be3f42957..f5f5e9010bd6e906f6cecbd9ea780bf04f9093e4 100644 --- a/etc/templates/compressibleInflowOutflow/system/surfaceFeatureExtractDict +++ b/etc/templates/compressibleInflowOutflow/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/0/U b/etc/templates/inflowOutflow/0/U index 78e8d885378623a655645d509191e2b20ca5cff7..12a6965549315a1f9e30ea4c98cb6e3e1520030f 100644 --- a/etc/templates/inflowOutflow/0/U +++ b/etc/templates/inflowOutflow/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/0/k b/etc/templates/inflowOutflow/0/k index d7b5be53f38326f5e943139ea63d2cb90bcaacbc..daee8c90884a73f54c470e28da7d1834e0435803 100644 --- a/etc/templates/inflowOutflow/0/k +++ b/etc/templates/inflowOutflow/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/0/nut b/etc/templates/inflowOutflow/0/nut index a0cfa7cdf2eb7b9c3aa71dc8c6654f5e3c516ee9..5a60c99a86fbf9059a112014a5f93fc30cbabc97 100644 --- a/etc/templates/inflowOutflow/0/nut +++ b/etc/templates/inflowOutflow/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/0/omega b/etc/templates/inflowOutflow/0/omega index a6deb19b72d4df6a217e324b23d546fb242653b6..7c5138b6f797ae72449a3d8974d7f5c2bc2985c0 100644 --- a/etc/templates/inflowOutflow/0/omega +++ b/etc/templates/inflowOutflow/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/0/p b/etc/templates/inflowOutflow/0/p index a85427de26a29716c9eccc5cf5a843d46689c4f1..8667da8d37cf8698c4b0ba34d7d41d796557a163 100644 --- a/etc/templates/inflowOutflow/0/p +++ b/etc/templates/inflowOutflow/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/constant/transportProperties b/etc/templates/inflowOutflow/constant/transportProperties index c1bb40d3d3180d0b5323985081a1f5a9d86fecb1..023ee0408d0e49ed1109d3b67f1a580e91c7f8e8 100644 --- a/etc/templates/inflowOutflow/constant/transportProperties +++ b/etc/templates/inflowOutflow/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/constant/turbulenceProperties b/etc/templates/inflowOutflow/constant/turbulenceProperties index a0a1101a043faee74371f202e8c16c3a97a56df9..8a72f93240738f341ca039b84997e4cef1af9217 100644 --- a/etc/templates/inflowOutflow/constant/turbulenceProperties +++ b/etc/templates/inflowOutflow/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/blockMeshDict b/etc/templates/inflowOutflow/system/blockMeshDict index 3f4c69cc9661aa98b6a88de52c609cc97f8dc113..b295eb8c9fe29ce2a9b1d468ce4de539ecbaa9e4 100644 --- a/etc/templates/inflowOutflow/system/blockMeshDict +++ b/etc/templates/inflowOutflow/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/controlDict b/etc/templates/inflowOutflow/system/controlDict index 1d0afadfc29c0213845424d08d5f5878540abf48..8b9dc3810beae62ff838d77ef106ab16d7b5d56c 100644 --- a/etc/templates/inflowOutflow/system/controlDict +++ b/etc/templates/inflowOutflow/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/fvSchemes b/etc/templates/inflowOutflow/system/fvSchemes index 48d2cc46d39b244061e7da334bc8140afb4131c0..f81d5c1a4c76f0f7ca7c99c9fc56ff0ace547438 100644 --- a/etc/templates/inflowOutflow/system/fvSchemes +++ b/etc/templates/inflowOutflow/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/fvSolution b/etc/templates/inflowOutflow/system/fvSolution index 093bf9b200cf3829de66a16525cc88bf210c1970..1e474e3173c814f4b235a9f7347cb0e346075dc4 100644 --- a/etc/templates/inflowOutflow/system/fvSolution +++ b/etc/templates/inflowOutflow/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/meshQualityDict b/etc/templates/inflowOutflow/system/meshQualityDict index 74a6a418e9708432d8510c133232a7d8f4f4e35e..0f376ab4b5c06c3132cb92babe7dd5ed28539e1a 100644 --- a/etc/templates/inflowOutflow/system/meshQualityDict +++ b/etc/templates/inflowOutflow/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/snappyHexMeshDict b/etc/templates/inflowOutflow/system/snappyHexMeshDict index 461995b8af42ac14597b821d47d8dd4a90b1e395..c1b33258928d1064f53b14270ae73397bbe72c5c 100644 --- a/etc/templates/inflowOutflow/system/snappyHexMeshDict +++ b/etc/templates/inflowOutflow/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflow/system/surfaceFeatureExtractDict b/etc/templates/inflowOutflow/system/surfaceFeatureExtractDict index 2d9dd1f9f0564558acdcda5a12fbea4be3f42957..f5f5e9010bd6e906f6cecbd9ea780bf04f9093e4 100644 --- a/etc/templates/inflowOutflow/system/surfaceFeatureExtractDict +++ b/etc/templates/inflowOutflow/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/0/U b/etc/templates/inflowOutflowRotating/0/U index dfc4db09038cbad032906bf8baf8dfabcf2a3f24..2930257a8c5c845a62df793658b17f930f4bdcf5 100644 --- a/etc/templates/inflowOutflowRotating/0/U +++ b/etc/templates/inflowOutflowRotating/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/0/k b/etc/templates/inflowOutflowRotating/0/k index d7b5be53f38326f5e943139ea63d2cb90bcaacbc..daee8c90884a73f54c470e28da7d1834e0435803 100644 --- a/etc/templates/inflowOutflowRotating/0/k +++ b/etc/templates/inflowOutflowRotating/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/0/nut b/etc/templates/inflowOutflowRotating/0/nut index a0cfa7cdf2eb7b9c3aa71dc8c6654f5e3c516ee9..5a60c99a86fbf9059a112014a5f93fc30cbabc97 100644 --- a/etc/templates/inflowOutflowRotating/0/nut +++ b/etc/templates/inflowOutflowRotating/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/0/omega b/etc/templates/inflowOutflowRotating/0/omega index a6deb19b72d4df6a217e324b23d546fb242653b6..7c5138b6f797ae72449a3d8974d7f5c2bc2985c0 100644 --- a/etc/templates/inflowOutflowRotating/0/omega +++ b/etc/templates/inflowOutflowRotating/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/0/p b/etc/templates/inflowOutflowRotating/0/p index a85427de26a29716c9eccc5cf5a843d46689c4f1..8667da8d37cf8698c4b0ba34d7d41d796557a163 100644 --- a/etc/templates/inflowOutflowRotating/0/p +++ b/etc/templates/inflowOutflowRotating/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/constant/MRFProperties b/etc/templates/inflowOutflowRotating/constant/MRFProperties index 1a17c3fc63584777f12036851f1d5222780b51da..edb26e2ce82cc179e7aff67543f807408dd54c14 100644 --- a/etc/templates/inflowOutflowRotating/constant/MRFProperties +++ b/etc/templates/inflowOutflowRotating/constant/MRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/constant/dynamicMeshDict b/etc/templates/inflowOutflowRotating/constant/dynamicMeshDict index ca6a75424e1be1796be65f26f2b104cbb2363963..d48265ab4091ebac3828bb7bb8c757e557038c1e 100644 --- a/etc/templates/inflowOutflowRotating/constant/dynamicMeshDict +++ b/etc/templates/inflowOutflowRotating/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/constant/rotatingZoneProperties b/etc/templates/inflowOutflowRotating/constant/rotatingZoneProperties index f5d63ca98af396a7941a22115e0060c90e703406..37fe7049e55352d47642ffa87c5348bf78b91b03 100644 --- a/etc/templates/inflowOutflowRotating/constant/rotatingZoneProperties +++ b/etc/templates/inflowOutflowRotating/constant/rotatingZoneProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/constant/transportProperties b/etc/templates/inflowOutflowRotating/constant/transportProperties index c1bb40d3d3180d0b5323985081a1f5a9d86fecb1..023ee0408d0e49ed1109d3b67f1a580e91c7f8e8 100644 --- a/etc/templates/inflowOutflowRotating/constant/transportProperties +++ b/etc/templates/inflowOutflowRotating/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/constant/turbulenceProperties b/etc/templates/inflowOutflowRotating/constant/turbulenceProperties index a0a1101a043faee74371f202e8c16c3a97a56df9..8a72f93240738f341ca039b84997e4cef1af9217 100644 --- a/etc/templates/inflowOutflowRotating/constant/turbulenceProperties +++ b/etc/templates/inflowOutflowRotating/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/blockMeshDict b/etc/templates/inflowOutflowRotating/system/blockMeshDict index 6e3fe210c454262f82248446135e70659445c323..aeafa6844364f9f0970123e021f51c3242bd4b5e 100644 --- a/etc/templates/inflowOutflowRotating/system/blockMeshDict +++ b/etc/templates/inflowOutflowRotating/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/blockMeshDict-box b/etc/templates/inflowOutflowRotating/system/blockMeshDict-box index 3f4c69cc9661aa98b6a88de52c609cc97f8dc113..b295eb8c9fe29ce2a9b1d468ce4de539ecbaa9e4 100644 --- a/etc/templates/inflowOutflowRotating/system/blockMeshDict-box +++ b/etc/templates/inflowOutflowRotating/system/blockMeshDict-box @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/controlDict b/etc/templates/inflowOutflowRotating/system/controlDict index 1d0afadfc29c0213845424d08d5f5878540abf48..8b9dc3810beae62ff838d77ef106ab16d7b5d56c 100644 --- a/etc/templates/inflowOutflowRotating/system/controlDict +++ b/etc/templates/inflowOutflowRotating/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/createBafflesDict b/etc/templates/inflowOutflowRotating/system/createBafflesDict index 6c9d2d6ef2eb2f7834e35a9f79417593527ac494..b10db3f3f6ea76a597795bcc6aeecff18b1dc5b9 100644 --- a/etc/templates/inflowOutflowRotating/system/createBafflesDict +++ b/etc/templates/inflowOutflowRotating/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/fvSchemes b/etc/templates/inflowOutflowRotating/system/fvSchemes index 48d2cc46d39b244061e7da334bc8140afb4131c0..f81d5c1a4c76f0f7ca7c99c9fc56ff0ace547438 100644 --- a/etc/templates/inflowOutflowRotating/system/fvSchemes +++ b/etc/templates/inflowOutflowRotating/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/fvSolution b/etc/templates/inflowOutflowRotating/system/fvSolution index 093bf9b200cf3829de66a16525cc88bf210c1970..1e474e3173c814f4b235a9f7347cb0e346075dc4 100644 --- a/etc/templates/inflowOutflowRotating/system/fvSolution +++ b/etc/templates/inflowOutflowRotating/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/meshQualityDict b/etc/templates/inflowOutflowRotating/system/meshQualityDict index 74a6a418e9708432d8510c133232a7d8f4f4e35e..0f376ab4b5c06c3132cb92babe7dd5ed28539e1a 100644 --- a/etc/templates/inflowOutflowRotating/system/meshQualityDict +++ b/etc/templates/inflowOutflowRotating/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/snappyHexMeshDict b/etc/templates/inflowOutflowRotating/system/snappyHexMeshDict index b234fadc3470f7cd5a36d4910a4570ea3eb780c6..1b0a9e0e2485dad745fc61f1119322c296efd995 100644 --- a/etc/templates/inflowOutflowRotating/system/snappyHexMeshDict +++ b/etc/templates/inflowOutflowRotating/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/etc/templates/inflowOutflowRotating/system/surfaceFeatureExtractDict b/etc/templates/inflowOutflowRotating/system/surfaceFeatureExtractDict index 48e8fa6ffd5606f365c708985b890f60b6cd6fcc..60697349a1632701498a3e49698f134a20810b3d 100644 --- a/etc/templates/inflowOutflowRotating/system/surfaceFeatureExtractDict +++ b/etc/templates/inflowOutflowRotating/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/modules/OpenQBMM b/modules/OpenQBMM index cbbd69ae348161c4fe5296a61e1f637bfec72b67..dfbb204b703b0245b00ff82d60ba45e185d4c433 160000 --- a/modules/OpenQBMM +++ b/modules/OpenQBMM @@ -1 +1 @@ -Subproject commit cbbd69ae348161c4fe5296a61e1f637bfec72b67 +Subproject commit dfbb204b703b0245b00ff82d60ba45e185d4c433 diff --git a/modules/README.md b/modules/README.md index 0dc15e01dfae2cd09ad973042340dc9f1a9df908..866a1e88e26ec205cb93923cac0e8e2b16a49fa7 100644 --- a/modules/README.md +++ b/modules/README.md @@ -1,12 +1,17 @@ [[_TOC_]] -## OpenFOAM Modules +## OpenFOAM modules This directory is a location for additional OpenFOAM components or tools to placed and have them built as part of the normal OpenFOAM build process. It is assumed that each subdirectory contain an appropriate `Allwmake` (or `Allwmake.override`) file. +The primary distinction between `modules` and `plugins` is that `modules` are +mainly maintained and released by OpenFOAM developers, whereas `plugins` are an +open and welcoming area for add-ons, predominantly maintained and driven by +OpenFOAM community members and groups. + ### How to use On the first use, you need to register the submodules, and then update them. @@ -91,7 +96,7 @@ To build the doxygen information for the components, it is also necessary to link the directories to the doc/ subdirectory. This is a purely manual operation. -### Developer Information +### Developer information #### Build locations diff --git a/modules/avalanche b/modules/avalanche deleted file mode 160000 index 1a789a710c5421398ff6296e3950fac374893803..0000000000000000000000000000000000000000 --- a/modules/avalanche +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1a789a710c5421398ff6296e3950fac374893803 diff --git a/modules/turbulence-community b/modules/turbulence-community deleted file mode 160000 index 06b391bb475f0386342b6f9b7fe5496ae87e464f..0000000000000000000000000000000000000000 --- a/modules/turbulence-community +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 06b391bb475f0386342b6f9b7fe5496ae87e464f diff --git a/modules/visualization b/modules/visualization index d2c5f853506209aca75100a3f8c892aaace19412..0f21605bec1834acbe271c4849dd1d12fc802766 160000 --- a/modules/visualization +++ b/modules/visualization @@ -1 +1 @@ -Subproject commit d2c5f853506209aca75100a3f8c892aaace19412 +Subproject commit 0f21605bec1834acbe271c4849dd1d12fc802766 diff --git a/plugins/Allwmake b/plugins/Allwmake new file mode 100755 index 0000000000000000000000000000000000000000..be14fcecb5f713b652fe7866a5174ffd95d3a9c3 --- /dev/null +++ b/plugins/Allwmake @@ -0,0 +1,42 @@ +#!/bin/sh +cd "${0%/*}" || exit # Run from this directory +targetType=libso +. "${WM_PROJECT_DIR:?}"/wmake/scripts/AllwmakeParseArguments + +#------------------------------------------------------------------------------ +# Default build into OpenFOAM project locations unless specified with +# -prefix or FOAM_MODULE_PREFIX env varable + +# Long form to avoid dash 0.5.8 error (issue #1757) +[ -n "$FOAM_MODULE_PREFIX" ] || FOAM_MODULE_PREFIX="${FOAM_LIBBIN%/*}" +export FOAM_MODULE_PREFIX + +echo "========================================" +case "$FOAM_MODULE_PREFIX" in +(false | none) + echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})" + echo + exit 0 +esac + +echo "prefix = $FOAM_MODULE_PREFIX" +echo +echo " ignoring possible compilation errors" +echo " make certain to check the output file" +echo +set +e +export WM_CONTINUE_ON_ERROR=true + +#------------------------------------------------------------------------------ + +for name in $(./list-plugins) +do + if [ -d "$name" ] + then + # Use wmake -all instead of Allwmake to allow for overrides + ( cd "$name" && wmake -all $targetType ) + fi +done + + +#------------------------------------------------------------------------------ diff --git a/plugins/README.md b/plugins/README.md new file mode 100644 index 0000000000000000000000000000000000000000..037100b9862153e4b6348280081f4dfd57bdff84 --- /dev/null +++ b/plugins/README.md @@ -0,0 +1,139 @@ +[[_TOC_]] + +## OpenFOAM plugins + +This directory is a location for additional OpenFOAM components or +tools to placed and have them built as part of the normal OpenFOAM +build process. It is assumed that each subdirectory contain an +appropriate `Allwmake` (or `Allwmake.override`) file. + +The primary distinction between `modules` and `plugins` is that `modules` are +mainly maintained and released by OpenFOAM developers, whereas `plugins` are an +open and welcoming area for add-ons, predominantly maintained and driven by +OpenFOAM community members and groups. + +### How to use + +On the first use, you need to register the submodules, and then update them. +You can execute both steps for all the available submodules (including the +nested ones) as follows while you are at `$WM_PROJECT_DIR`: + +```bash +cd $WM_PROJECT_DIR + +git submodule update --init --recursive +``` + +Executing this single-line command clones all the submodules from their +respective repositories and prepares them for compilation. Note that you can +also make only a certain group of submodules ready by explicitly specifying the +requested submodules' names at the end of the command above. For example, if +you would like to use only the `turbulence-community` submodule, you specify: + +```bash +git submodule update --init --recursive plugins/turbulence-community +``` + +You can display information about the status of submodules as follows: + +```bash +git submodule status --recursive +``` + +An easy way to see which submodules are actually in use: + +```bash +cat .gitmodules +``` + +Which will reveal content resembling the following: +``` +[submodule "xyz"] + path = plugins/xyz + url = ... +... +``` + +If you need to remove a specific submodule or wish to restart the process, +you can simply carry out the task as follows: + +```bash +git submodule deinit plugins/turbulence-community +``` + +This command deregisters the specified submodule and clears the +`plugins/turbulence-community` directory. + +A quick overview of `git submodules` can be found in this +[*blog*][blog git-submodule] with full details in the +[*manpage*][man git-submodule]. + +### Build locations + +Any individual _plugin_ will normally also be able to exist outside of +the plugins directory structure and will typically build into user +locations (`$FOAM_USER_APPBIN`, `$FOAM_USER_LIBBIN`). + +When compiled from the top-level OpenFOAM `Allwmake` or the +`plugins/Allwmake`, they should build into OpenFOAM project locations +(`$FOAM_APPBIN`, `$FOAM_LIBBIN`). This can be adjusted by +supplying an alternative `-prefix=` to the corresponding Allwmake +command. + +| Command | Install location | +|------------|------------------| +| ./Allwmake -prefix=user | `$FOAM_USER_APPBIN`, `$FOAM_USER_LIBBIN` | +| ./Allwmake -prefix=group | `$FOAM_SITE_APPBIN`, `$FOAM_SITE_LIBBIN` | +| ./Allwmake -prefix=openfoam | `$FOAM_APPBIN`, `$FOAM_LIBBIN` | +| ./Allwmake -prefix=/some/pathname | `/some/pathname/bin`, `/some/pathname/lib` | + +### Documentation (doxygen) + +To build the doxygen information for the components, it is also +necessary to link the directories to the doc/ subdirectory. +This is a purely manual operation. + +### Developer information + +#### Build locations + +To accomodate building into various locations, the plugin code should +be adapted with the following changes: + +- ***Make/files*** + ``` + ... + EXE = $(FOAM_MODULE_APPBIN)/someExecutable + + LIB = $(FOAM_MODULE_LIBBIN)/libSomeLibrary + ``` + +- `Make/options` should include this + ``` + include $(GENERAL_RULES)/module-path-user + ... + ``` + +The following changes to `Make/options` are universally applicable +(ie, work with older or other versions of OpenFOAM), but more verbose. + +- `Make/options` with the following + ``` + sinclude $(GENERAL_RULES)/module-path-user + + /* Failsafe - user locations */ + ifeq (,$(FOAM_MODULE_APPBIN)) + FOAM_MODULE_APPBIN = $(FOAM_USER_APPBIN) + endif + ifeq (,$(FOAM_MODULE_LIBBIN)) + FOAM_MODULE_LIBBIN = $(FOAM_USER_LIBBIN) + endif + ... + ``` + +<!-- General Information --> + +[man git-submodule]: https://git-scm.com/docs/git-submodule +[blog git-submodule]: http://blog.joncairns.com/2011/10/how-to-use-git-submodules/ + +--- diff --git a/plugins/avalanche b/plugins/avalanche new file mode 160000 index 0000000000000000000000000000000000000000..09fde5b80e70f81a7c01fee2616d18addcf71ef3 --- /dev/null +++ b/plugins/avalanche @@ -0,0 +1 @@ +Subproject commit 09fde5b80e70f81a7c01fee2616d18addcf71ef3 diff --git a/modules/cfmesh b/plugins/cfmesh similarity index 100% rename from modules/cfmesh rename to plugins/cfmesh diff --git a/plugins/data-community b/plugins/data-community new file mode 160000 index 0000000000000000000000000000000000000000..1b1617294c2f881515054f497a049920769dd410 --- /dev/null +++ b/plugins/data-community @@ -0,0 +1 @@ +Subproject commit 1b1617294c2f881515054f497a049920769dd410 diff --git a/plugins/list-plugins b/plugins/list-plugins new file mode 100755 index 0000000000000000000000000000000000000000..27dba5068f94c24ce556f96c2e3c93948f8206c9 --- /dev/null +++ b/plugins/list-plugins @@ -0,0 +1,85 @@ +#!/bin/sh +#------------------------------------------------------------------------------ +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | www.openfoam.com +# \\/ M anipulation | +#------------------------------------------------------------------------------ +# Copyright (C) 2020 OpenCFD Ltd. +#------------------------------------------------------------------------------ +# SPDX-License-Identifier: (GPL-3.0-or-later) +# +# Script +# list-modules +# +# Description +# List module directories +# - each first-level directory with an Allwmake file +# +#------------------------------------------------------------------------------ +cd "${0%/*}" || exit # Run from this directory + +printHelp() { + cat<< HELP 1>&2 + +Usage: ${0##*/} [OPTION] +options: + -help Display help and exit + +List module directories - each first-level directory with an Allwmake file + +HELP + + exit 0 # A clean exit +} + +# Report error and exit +die() +{ + exec 1>&2 + echo + echo "Error encountered:" + while [ "$#" -ge 1 ]; do echo " $1"; shift; done + echo + echo "See '${0##*/} -help' for usage" + echo + exit 1 +} + +#------------------------------------------------------------------------------ + +# Parse options +while [ "$#" -gt 0 ] +do + case "$1" in + -h | -help*) # Short help + printHelp + ;; + + *) + die "Unknown option/argument: '$1'" + ;; + esac + shift +done + + +# Each first-level directory with an Allwmake file +for moduleName in * +do + if [ -f "$moduleName/Allwmake" ] + then + case "$moduleName" in + # Skip some directory names + (build | doc | platform*) + ;; + (*) + echo "$moduleName" + ;; + esac + fi +done + + +#------------------------------------------------------------------------------ diff --git a/plugins/turbulence-community b/plugins/turbulence-community new file mode 160000 index 0000000000000000000000000000000000000000..8111aa133964bc9a94a772f5eb0b33283f1ff1cb --- /dev/null +++ b/plugins/turbulence-community @@ -0,0 +1 @@ +Subproject commit 8111aa133964bc9a94a772f5eb0b33283f1ff1cb diff --git a/src/Allwmake b/src/Allwmake index 96071901af037d5b58a92046c0b58278c6f25ded..3d2e2ac2224fc4dfd3afd2546b3c9c905797a801 100755 --- a/src/Allwmake +++ b/src/Allwmake @@ -72,6 +72,7 @@ wmakeLnInclude -u fvOptions wmake $targetType lagrangian/basic wmake $targetType lagrangian/distributionModels +renumber/Allwmake $targetType $* parallel/Allwmake $targetType $* wmake $targetType dynamicFvMesh @@ -100,7 +101,6 @@ wmake $targetType fvMotionSolver # snappyHexMesh uses overset voxelMesh mesh/Allwmake $targetType $* -renumber/Allwmake $targetType $* fvAgglomerationMethods/Allwmake $targetType $* wmake $targetType waveModels diff --git a/src/ODE/ODESolvers/ODESolver/ODESolver.H b/src/ODE/ODESolvers/ODESolver/ODESolver.H index 066dc86483d2fe3ccc38522f65365aac25520301..b274234ea7504248c2c515bf2dc061b7f97be5bf 100644 --- a/src/ODE/ODESolvers/ODESolver/ODESolver.H +++ b/src/ODE/ODESolvers/ODESolver/ODESolver.H @@ -38,8 +38,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef ODESolver_H -#define ODESolver_H +#ifndef Foam_ODESolver_H +#define Foam_ODESolver_H #include "ODESystem.H" #include "typeInfo.H" @@ -56,10 +56,9 @@ namespace Foam class ODESolver { - protected: - // Protected data + // Protected Data //- Reference to ODESystem const ODESystem& odes_; @@ -106,7 +105,7 @@ public: class stepState { - public: + public: const bool forward; scalar dxTry; @@ -171,14 +170,14 @@ public: // Member Functions - //- Return the number of equations to solve - inline label nEqns() const; + //- The number of equations to solve + label nEqns() const noexcept { return n_; } - //- Return access to the absolute tolerance field - inline scalarField& absTol(); + //- Access to the absolute tolerance field + scalarField& absTol() noexcept { return absTol_; } - //- Return access to the relative tolerance field - inline scalarField& relTol(); + //- Access to the relative tolerance field + scalarField& relTol() noexcept { return relTol_; } //- Resize the ODE solver virtual bool resize() = 0; diff --git a/src/ODE/ODESolvers/ODESolver/ODESolverI.H b/src/ODE/ODESolvers/ODESolver/ODESolverI.H index acf77d7a50b93756ee931fd831544b1c77c44da8..bee196abbfd4aef4aa3bb036523ff75930e22e7b 100644 --- a/src/ODE/ODESolvers/ODESolver/ODESolverI.H +++ b/src/ODE/ODESolvers/ODESolver/ODESolverI.H @@ -27,36 +27,19 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -inline Foam::label Foam::ODESolver::nEqns() const -{ - return n_; -} - - -inline Foam::scalarField& Foam::ODESolver::absTol() -{ - return absTol_; -} - - -inline Foam::scalarField& Foam::ODESolver::relTol() -{ - return relTol_; -} - - template<class Type> inline void Foam::ODESolver::resizeField(UList<Type>& f, const label n) { - f.shallowCopy(UList<Type>(f.begin(), n)); + // shallowResize + f.shallowCopy(f.data(), n); } template<class Type> inline void Foam::ODESolver::resizeField(UList<Type>& f) const { - resizeField(f, n_); + // shallowResize + f.shallowCopy(f.data(), n_); } diff --git a/src/OSspecific/POSIX/cpuTime/cpuTimePosix.C b/src/OSspecific/POSIX/cpuTime/cpuTimePosix.C index 47af1c635c128afb581901b54b05d1aa5a832980..027b29b41a5b487b1f3dbd799a65ce80de082931 100644 --- a/src/OSspecific/POSIX/cpuTime/cpuTimePosix.C +++ b/src/OSspecific/POSIX/cpuTime/cpuTimePosix.C @@ -77,6 +77,12 @@ void Foam::cpuTimePosix::resetCpuTime() } +void Foam::cpuTimePosix::resetCpuTimeIncrement() const +{ + last_.update(); +} + + double Foam::cpuTimePosix::elapsedCpuTime() const { last_.update(); diff --git a/src/OSspecific/POSIX/cpuTime/cpuTimePosix.H b/src/OSspecific/POSIX/cpuTime/cpuTimePosix.H index f657d232f192ef86bfad9b6f08b5a41783b2856e..efb6ada7f127a0931125220d80a0c338fe64c9da 100644 --- a/src/OSspecific/POSIX/cpuTime/cpuTimePosix.H +++ b/src/OSspecific/POSIX/cpuTime/cpuTimePosix.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2014 OpenFOAM Foundation - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -72,7 +72,8 @@ class cpuTimePosix //- Start time, at the time of construction value_type start_; - //- Last time when elapsedTime or timeIncrement was called + //- Last time when elapsedCpuTime or cpuTimeIncrement was called. + //- Also affected by resetCpuTime and resetCpuTimeIncrement. mutable value_type last_; @@ -95,10 +96,14 @@ public: //- Reset to use the current time for the start time void resetCpuTime(); - //- Return CPU time (in seconds) from the start + //- Reset to use the current time for the increment point + void resetCpuTimeIncrement() const; + + //- Return CPU time [seconds] from the start double elapsedCpuTime() const; - //- Return CPU time (in seconds) since last call to cpuTimeIncrement() + //- Return CPU time [seconds] since last call to cpuTimeIncrement(), + //- resetCpuTimeIncrement(). double cpuTimeIncrement() const; }; diff --git a/src/OpenFOAM/Make/files b/src/OpenFOAM/Make/files index 3c994955373fea53ba6eefc4a8c4a5532c5d7359..f8df675d93d013772900428798bb6ff33d568eb8 100644 --- a/src/OpenFOAM/Make/files +++ b/src/OpenFOAM/Make/files @@ -185,6 +185,7 @@ $(expr)/scanToken/exprScanToken.C $(expr)/traits/exprTraits.C $(expr)/value/exprValue.C +$(expr)/value/exprValueFieldTag.C $(expr)/exprDriver/exprDriver.C $(expr)/exprDriver/exprDriverFields.C diff --git a/src/OpenFOAM/containers/Bits/PackedList/PackedList.H b/src/OpenFOAM/containers/Bits/PackedList/PackedList.H index e0e3fc6c6c145fefb7ef853e616ea8ec7101a13b..cc88ba4c38c7fc998e59c337685bcbddd3423d3f 100644 --- a/src/OpenFOAM/containers/Bits/PackedList/PackedList.H +++ b/src/OpenFOAM/containers/Bits/PackedList/PackedList.H @@ -83,8 +83,9 @@ See also Foam::DynamicList SourceFiles - PackedListI.H PackedList.C + PackedListCore.C + PackedListI.H PackedListIO.C \*---------------------------------------------------------------------------*/ @@ -92,11 +93,11 @@ SourceFiles #ifndef Foam_PackedList_H #define Foam_PackedList_H +#include "className.H" #include "BitOps.H" #include "labelList.H" #include "IndirectListBase.H" #include "InfoProxy.H" -#include "PackedListCore.H" #include <type_traits> @@ -119,6 +120,23 @@ template<unsigned Width> Ostream& operator<<(Ostream& os, const InfoProxy<PackedList<Width>>& info); +/*---------------------------------------------------------------------------*\ + Class Detail::PackedListCore Declaration +\*---------------------------------------------------------------------------*/ + +namespace Detail +{ + +//- Template-invariant parts for PackedList +struct PackedListCore +{ + //- Define template name + ClassNameNoDebug("PackedList"); +}; + +} // End namespace Detail + + /*---------------------------------------------------------------------------*\ Class PackedList Declaration \*---------------------------------------------------------------------------*/ diff --git a/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.C b/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.C index d17c6a29064fc10c397f8f9074577901718b8136..075f4e6754cd4672871c8ae1d4c87b5a7dab34d0 100644 --- a/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.C +++ b/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.C @@ -25,7 +25,7 @@ License \*---------------------------------------------------------------------------*/ -#include "PackedListCore.H" +#include "PackedList.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.H b/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.H index 8a564c47d95a2aa3f695a631b8f49b509e557885..7cec1b4541d1553571d30afa2aac3b841f6c3d51 100644 --- a/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.H +++ b/src/OpenFOAM/containers/Bits/PackedList/PackedListCore.H @@ -1,69 +1 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | www.openfoam.com - \\/ M anipulation | -------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. - -Class - Foam::Detail::PackedListCore - -Description - Implementation of template-invariant details for Foam::PackedList - -SourceFiles - PackedListCore.C - -\*---------------------------------------------------------------------------*/ - -#ifndef PackedListCore_H -#define PackedListCore_H - -#include "className.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::PackedListCore Declaration -\*---------------------------------------------------------------------------*/ - -//- Template-invariant parts for PackedList -struct PackedListCore -{ - //- Define template name - ClassNameNoDebug("PackedList"); -}; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Detail -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // +#warning File removed - left for old dependency check only diff --git a/src/OpenFOAM/containers/Bits/bitSet/bitSet.H b/src/OpenFOAM/containers/Bits/bitSet/bitSet.H index 31d08d570fc1e1a04139347ea0519fe64f1676d0..b1e4c7fdd4811ca09c1be412ed5d55055ed4f9db 100644 --- a/src/OpenFOAM/containers/Bits/bitSet/bitSet.H +++ b/src/OpenFOAM/containers/Bits/bitSet/bitSet.H @@ -120,8 +120,11 @@ public: // Static Member Functions - //- Return a null bitSet reference - inline static const bitSet& null(); + //- Return a null bitSet (reference to a nullObject). + static const bitSet& null() noexcept + { + return NullObjectRef<bitSet>(); + } //- Declare type-name (with debug switch) diff --git a/src/OpenFOAM/containers/Bits/bitSet/bitSetI.H b/src/OpenFOAM/containers/Bits/bitSet/bitSetI.H index 7e9eed87394008fc51503df8f46145002f8791ea..f035d0c99fc52db4afcc551e739f0742709d4fc4 100644 --- a/src/OpenFOAM/containers/Bits/bitSet/bitSetI.H +++ b/src/OpenFOAM/containers/Bits/bitSet/bitSetI.H @@ -405,12 +405,6 @@ inline Foam::label Foam::bitSet::find_next(label pos) const // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -inline const Foam::bitSet& Foam::bitSet::null() -{ - return NullObjectRef<bitSet>(); -} - - inline bool Foam::bitSet::all() const { if (empty()) return true; // SIC. boost convention diff --git a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.C b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.C index cf451306676a0cd6d468803e396182f11a85ff01..0684c31d18c6b22869ba8694f7f533e25a4a55d3 100644 --- a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.C +++ b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.C @@ -81,7 +81,7 @@ Foam::CompactListList<T> Foam::CompactListList<T>::pack_impl if (len) { - newOffsets.resize(len+1, Zero); + newOffsets.resize(len+1, Foam::zero{}); for (label i = 0; i < len; ++i) { diff --git a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.H b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.H index 340117911626c5798d2b03e5aa4d43f2948ccdb7..99873e3b805b62fc6c7ceeb49ca1f97fd8080b01 100644 --- a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.H +++ b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -63,6 +63,11 @@ template<class T> class CompactListList; template<class T> Istream& operator>>(Istream&, CompactListList<T>&); template<class T> Ostream& operator<<(Ostream&, const CompactListList<T>&); +// Common list types + +//! A CompactListList of labels +typedef CompactListList<label> labelCompactListList; + /*---------------------------------------------------------------------------*\ Class CompactListList Declaration @@ -138,8 +143,11 @@ public: // Static Member Functions - //- Return a CompactListList reference to a nullObject - inline static const CompactListList<T>& null(); + //- Return a null CompactListList (reference to a nullObject). + static const CompactListList<T>& null() noexcept + { + return NullObjectRef<CompactListList<T>>(); + } //- Construct by packing together the list of lists template<class SubListType = List<T>> @@ -419,17 +427,17 @@ public: // Row-based access + //- Return const access to sub-list (no subscript checking) + inline const SubList<T> localList(const label i) const; + //- Return non-const access to sub-list (no subscript checking) - inline UList<T> localList(const label i); + inline SubList<T> localList(const label i); //- Return const access to sub-list (no subscript checking) - inline const UList<T> localList(const label i) const; + inline const SubList<T> operator[](const label i) const; - //- Return row as UList - same as localList method - inline UList<T> operator[](const label i); - - //- Return row as const UList - same as localList method - inline const UList<T> operator[](const label i) const; + //- Return non-const access to sub-list (no subscript checking) + inline SubList<T> operator[](const label i); // Element access diff --git a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListListI.H b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListListI.H index f5a17ba86d5afd50d4c5fc2fb6aa6a2292ec5c61..41c0ed19e976d718fe9451439ee11ae95181d437 100644 --- a/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListListI.H +++ b/src/OpenFOAM/containers/CompactLists/CompactListList/CompactListListI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,15 +29,6 @@ License #include "ListOps.H" #include "SubList.H" -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // - -template<class T> -inline const Foam::CompactListList<T>& Foam::CompactListList<T>::null() -{ - return NullObjectRef<CompactListList<T>>(); -} - - // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class T> @@ -90,7 +81,6 @@ inline Foam::CompactListList<T>::CompactListList {} - template<class T> inline Foam::CompactListList<T>::CompactListList ( @@ -98,7 +88,7 @@ inline Foam::CompactListList<T>::CompactListList const label nVals ) : - offsets_(mRows+1, Zero), + offsets_(mRows+1, Foam::zero{}), values_(nVals) { // Optionally: enforceSizeSanity(); @@ -113,8 +103,8 @@ inline Foam::CompactListList<T>::CompactListList const Foam::zero ) : - offsets_(mRows+1, Zero), - values_(nVals, Zero) + offsets_(mRows+1, Foam::zero{}), + values_(nVals, Foam::zero{}) { // Optionally: enforceSizeSanity(); } @@ -128,7 +118,7 @@ inline Foam::CompactListList<T>::CompactListList const T& val ) : - offsets_(mRows+1, Zero), + offsets_(mRows+1, Foam::zero{}), values_(nVals, val) { // Optionally: enforceSizeSanity(); @@ -268,16 +258,16 @@ inline Foam::label Foam::CompactListList<T>::localSize(const label i) const template<class T> -inline Foam::UList<T> -Foam::CompactListList<T>::localList(const label i) +inline const Foam::SubList<T> +Foam::CompactListList<T>::localList(const label i) const { return SubList<T>(values_, (offsets_[i+1] - offsets_[i]), offsets_[i]); } template<class T> -inline const Foam::UList<T> -Foam::CompactListList<T>::localList(const label i) const +inline Foam::SubList<T> +Foam::CompactListList<T>::localList(const label i) { return SubList<T>(values_, (offsets_[i+1] - offsets_[i]), offsets_[i]); } @@ -387,7 +377,7 @@ inline void Foam::CompactListList<T>::resize } else { - offsets_.resize(mRows+1, Zero); + offsets_.resize(mRows+1, Foam::zero{}); values_.resize(nVals); } } @@ -408,7 +398,7 @@ inline void Foam::CompactListList<T>::resize_nocopy } else { - offsets_.resize(mRows+1, Zero); + offsets_.resize(mRows+1, Foam::zero{}); values_.resize_nocopy(nVals); } } @@ -430,7 +420,7 @@ inline void Foam::CompactListList<T>::resize } else { - offsets_.resize(mRows+1, Zero); + offsets_.resize(mRows+1, Foam::zero{}); values_.resize(nVals, val); } } @@ -485,17 +475,19 @@ inline void Foam::CompactListList<T>::operator=(const Foam::zero) template<class T> -inline Foam::UList<T> -Foam::CompactListList<T>::operator[](const label i) +inline const Foam::SubList<T> +Foam::CompactListList<T>::operator[](const label i) const { + // return SubList<T>(values_, (offsets_[i+1] - offsets_[i]), offsets_[i]); return this->localList(i); } template<class T> -inline const Foam::UList<T> -Foam::CompactListList<T>::operator[](const label i) const +inline Foam::SubList<T> +Foam::CompactListList<T>::operator[](const label i) { + // return SubList<T>(values_, (offsets_[i+1] - offsets_[i]), offsets_[i]); return this->localList(i); } diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C index f564003f7ba8fe14e65eea71c4011903f5a03859..681abd1ea253805e68ddb7eb7eb51bffbe21f0d8 100644 --- a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C +++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -98,14 +98,38 @@ Foam::HashTable<T, Key, Hash>::HashTable(HashTable<T, Key, Hash>&& rhs) noexcept template<class T, class Key, class Hash> Foam::HashTable<T, Key, Hash>::HashTable ( - std::initializer_list<std::pair<Key, T>> list + std::initializer_list<std::pair<Key, T>> list, + const bool overwrite ) : - HashTable<T, Key, Hash>(2*list.size()) + HashTable<T, Key, Hash>() { + reserve(list.size()); + for (const auto& keyval : list) { - set(keyval.first, keyval.second); + this->setEntry(overwrite, keyval.first, keyval.second); + } +} + + +template<class T, class Key, class Hash> +Foam::HashTable<T, Key, Hash>::HashTable +( + const UList<Key>& keys, + const UList<T>& values, + const bool overwrite +) +: + HashTable<T, Key, Hash>() +{ + const label len = std::min(keys.size(), values.size()); + + reserve(len); + + for (label i = 0; i < len; ++i) + { + this->setEntry(overwrite, keys[i], values[i]); } } diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H index 07ffb7e2f0b3ab39bc32741dc2ab1cff628b5095..e1c88a5384e61fcf4c09fa2d3b3233b828d5b1be 100644 --- a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H +++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -252,9 +252,22 @@ public: //- Move construct HashTable(this_type&& rhs) noexcept; - //- Construct from an initializer list - // Duplicate entries are handled by overwriting - HashTable(std::initializer_list<std::pair<Key, T>> list); + //- Construct from key/value pairs in initializer list + // By default, uses insert not overwrite semantics for duplicates. + HashTable + ( + std::initializer_list<std::pair<Key, T>> list, + const bool overwrite = false + ); + + //- Construct from key/value pairs + // By default, uses insert not overwrite semantics for duplicates. + HashTable + ( + const UList<Key>& keys, + const UList<T>& values, + const bool overwrite = false + ); //- Destructor diff --git a/src/OpenFOAM/containers/HashTables/Map/Map.H b/src/OpenFOAM/containers/HashTables/Map/Map.H index 4a318f31ee70b12e59616cb69f7a85e10edd93bb..a2b91f1746db3c2d262446b71c2e36bd00274b68 100644 --- a/src/OpenFOAM/containers/HashTables/Map/Map.H +++ b/src/OpenFOAM/containers/HashTables/Map/Map.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -106,10 +106,27 @@ public: parent_type(std::move(map)) {} - //- Construct from pairs of values - Map(std::initializer_list<std::pair<label, T>> map) + //- Construct from key/value pairs in initializer list + // By default, uses insert not overwrite semantics for duplicates. + Map + ( + std::initializer_list<std::pair<label, T>> map, + const bool overwrite = false + ) : - parent_type(map) + parent_type(map, overwrite) + {} + + //- Construct from key/value pairs + // By default, uses insert not overwrite semantics for duplicates. + Map + ( + const UList<label>& keys, + const UList<T>& values, + const bool overwrite = false + ) + : + parent_type(keys, values, overwrite) {} diff --git a/src/OpenFOAM/containers/Lists/FixedList/FixedList.H b/src/OpenFOAM/containers/Lists/FixedList/FixedList.H index 59e1188bee9ade4b0fca1dbadd55848762447fb6..1c1f8c8476a636aba1da4cc2049bfb97ccc0e059 100644 --- a/src/OpenFOAM/containers/Lists/FixedList/FixedList.H +++ b/src/OpenFOAM/containers/Lists/FixedList/FixedList.H @@ -46,9 +46,10 @@ SourceFiles #include "zero.H" #include "contiguous.H" #include "stdFoam.H" -#include "autoPtr.H" +#include "nullObject.H" #include "Hash.H" #include "ListPolicy.H" +#include "autoPtr.H" // <algorithm> already included by stdFoam.H #include <iterator> @@ -139,8 +140,12 @@ public: // Static Functions - //- Return a null FixedList - inline static const FixedList<T, N>& null(); + //- Return a null FixedList (reference to a nullObject). + //- Read/write access is questionable + static const FixedList<T, N>& null() noexcept + { + return NullObjectRef<FixedList<T, N>>(); + } // Constructors diff --git a/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H b/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H index 4bef6f07b30046f16664654aad1f2c5d788a7fb7..7d590c3799443d0a1867ae2ae5629671e84df3eb 100644 --- a/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H +++ b/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H @@ -28,15 +28,6 @@ License #include "UList.H" -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // - -template<class T, unsigned N> -inline const Foam::FixedList<T, N>& Foam::FixedList<T, N>::null() -{ - return NullObjectRef<FixedList<T, N>>(); -} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class T, unsigned N> diff --git a/src/OpenFOAM/containers/Lists/List/List.H b/src/OpenFOAM/containers/Lists/List/List.H index 65caab9fd8be3bd41cbdf97dae83a4d2f186a8a8..87b9bf9019bcecc261556a1877769dbd6564288d 100644 --- a/src/OpenFOAM/containers/Lists/List/List.H +++ b/src/OpenFOAM/containers/Lists/List/List.H @@ -129,8 +129,12 @@ public: // Static Member Functions - //- Return a null List - inline static const List<T>& null(); + //- Return a null List (reference to a nullObject). + //- Behaves like an empty List. + static const List<T>& null() noexcept + { + return NullObjectRef<List<T>>(); + } // Constructors diff --git a/src/OpenFOAM/containers/Lists/List/ListI.H b/src/OpenFOAM/containers/Lists/List/ListI.H index 6bab28191b2f3ec0d5827d583a4b86abedb93e56..5bac2f0ee4b086f25dd81e703c960c2ee50e7924 100644 --- a/src/OpenFOAM/containers/Lists/List/ListI.H +++ b/src/OpenFOAM/containers/Lists/List/ListI.H @@ -133,13 +133,6 @@ inline Foam::autoPtr<Foam::List<T>> Foam::List<T>::clone() const // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class T> -inline const Foam::List<T>& Foam::List<T>::null() -{ - return NullObjectRef<List<T>>(); -} - - template<class T> inline void Foam::List<T>::clear() { diff --git a/src/OpenFOAM/containers/Lists/List/SubList.H b/src/OpenFOAM/containers/Lists/List/SubList.H index e34f27fcd09e4a6415b3cb56cc854644bb5dad55..42f2a1dcd641ce1db5a218f0ae127e1d88f0fbbb 100644 --- a/src/OpenFOAM/containers/Lists/List/SubList.H +++ b/src/OpenFOAM/containers/Lists/List/SubList.H @@ -73,8 +73,12 @@ public: // Static Functions - //- Return a null SubList - inline static const SubList<T>& null(); + //- Return a null SubList (reference to a nullObject). + //- Behaves like an empty SubList. + static const SubList<T>& null() noexcept + { + return NullObjectRef<SubList<T>>(); + } // Generated Methods diff --git a/src/OpenFOAM/containers/Lists/List/SubListI.H b/src/OpenFOAM/containers/Lists/List/SubListI.H index 3b15f4c9e134e9004ecdf9322ab605f670506e9f..f18c31646bb593d4b100d2bd38fcffbc50e67d7c 100644 --- a/src/OpenFOAM/containers/Lists/List/SubListI.H +++ b/src/OpenFOAM/containers/Lists/List/SubListI.H @@ -28,15 +28,6 @@ License #include "FixedList.H" -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // - -template<class T> -inline const Foam::SubList<T>& Foam::SubList<T>::null() -{ - return NullObjectRef<SubList<T>>(); -} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class T> @@ -124,7 +115,7 @@ inline Foam::SubList<T>::SubList template<class T> inline Foam::UList<T>& Foam::SubList<T>::reset(std::nullptr_t) noexcept { - UList<T>::shallowCopy(nullptr, 0); + UList<T>::shallowCopy(nullptr); return *this; } diff --git a/src/OpenFOAM/containers/Lists/List/UList.H b/src/OpenFOAM/containers/Lists/List/UList.H index 252ec61cc348d862bd2ddc96f56e7708f36a5ab3..ceb50199c5a14553a21e11e407f995711a25e543 100644 --- a/src/OpenFOAM/containers/Lists/List/UList.H +++ b/src/OpenFOAM/containers/Lists/List/UList.H @@ -183,8 +183,12 @@ public: // Static Functions - //- Return a UList reference to a nullObject - inline static const UList<T>& null(); + //- Return a null UList (reference to a nullObject). + //- Behaves like an empty UList. + static const UList<T>& null() noexcept + { + return NullObjectRef<UList<T>>(); + } // Public Classes @@ -367,6 +371,9 @@ public: //- Copy the pointer and size inline void shallowCopy(T* __restrict__ ptr, const label len) noexcept; + //- Copy nullptr and zero size + inline void shallowCopy(std::nullptr_t) noexcept; + //- Copy the pointer and size held by the given UList inline void shallowCopy(const UList<T>& list) noexcept; diff --git a/src/OpenFOAM/containers/Lists/List/UListI.H b/src/OpenFOAM/containers/Lists/List/UListI.H index b143475599a02508d3a14fb5bfe5f2fa4818cbd7..74cd4c3bbe0b67abc335cc2b5cd0449ee9808d91 100644 --- a/src/OpenFOAM/containers/Lists/List/UListI.H +++ b/src/OpenFOAM/containers/Lists/List/UListI.H @@ -93,13 +93,6 @@ inline void Foam::UList<T>::fill_uniform(const Foam::zero) // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class T> -inline const Foam::UList<T>& Foam::UList<T>::null() -{ - return NullObjectRef<UList<T>>(); -} - - template<class T> inline Foam::label Foam::UList<T>::fcIndex(const label i) const noexcept { @@ -330,6 +323,14 @@ inline void Foam::UList<T>::shallowCopy } +template<class T> +inline void Foam::UList<T>::shallowCopy(std::nullptr_t) noexcept +{ + size_ = 0; + v_ = nullptr; +} + + template<class T> inline void Foam::UList<T>::shallowCopy(const UList<T>& list) noexcept { diff --git a/src/OpenFOAM/containers/Lists/ListOps/ListOps.C b/src/OpenFOAM/containers/Lists/ListOps/ListOps.C index 9e4dbd83b7d28837a8a61b800bb61ba9d30b59b2..172c9e87c542e48ad92a6577e9924e9bb776fe32 100644 --- a/src/OpenFOAM/containers/Lists/ListOps/ListOps.C +++ b/src/OpenFOAM/containers/Lists/ListOps/ListOps.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,6 +27,7 @@ License \*---------------------------------------------------------------------------*/ #include "ListOps.H" +#include "CompactListList.H" #include "HashSet.H" #include <numeric> @@ -110,28 +111,56 @@ Foam::labelList Foam::invert(const bitSet& map) } +Foam::Map<Foam::label> Foam::invertToMap(const labelUList& values) +{ + const label len = values.size(); + + Map<label> inverse(2*len); + + for (label i = 0 ; i < len; ++i) + { + // For correct behaviour with duplicates, do NOT use + // inverse.insert(values[i], inverse.size()); + + inverse.insert(values[i], i); + } + + return inverse; +} + + Foam::labelListList Foam::invertOneToMany ( const label len, const labelUList& map ) { - labelList sizes(len, Zero); + labelList sizes(len, Foam::zero{}); for (const label newIdx : map) { if (newIdx >= 0) { + #ifdef FULLDEBUG + if (newIdx >= len) + { + FatalErrorInFunction + << "Inverse location " << newIdx + << " is out of range. List has size " << len + << abort(FatalError); + } + #endif + ++sizes[newIdx]; } } labelListList inverse(len); - for (label i=0; i < len; ++i) + for (label i = 0; i < len; ++i) { inverse[i].resize(sizes[i]); - sizes[i] = 0; // reset size counter + sizes[i] = 0; // reset size counter } label i = 0; @@ -149,6 +178,54 @@ Foam::labelListList Foam::invertOneToMany } +Foam::CompactListList<Foam::label> +Foam::invertOneToManyCompact +( + const label len, + const labelUList& map +) +{ + labelList sizes(len, Foam::zero{}); + + for (const label newIdx : map) + { + if (newIdx >= 0) + { + #ifdef FULLDEBUG + if (newIdx >= len) + { + FatalErrorInFunction + << "Inverse location " << newIdx + << " is out of range. List has size " << len + << abort(FatalError); + } + #endif + + ++sizes[newIdx]; + } + } + + CompactListList<label> inverse(sizes); + + // Reuse sizes as output offset into inverse.values() + sizes = labelList::subList(inverse.offsets(), inverse.size()); + labelList& values = inverse.values(); + + label i = 0; + for (const label newIdx : map) + { + if (newIdx >= 0) + { + values[sizes[newIdx]++] = i; + } + + ++i; + } + + return inverse; +} + + Foam::bitSet Foam::reorder ( const labelUList& oldToNew, @@ -196,7 +273,7 @@ void Foam::inplaceReorder const bool prune ) { - input = reorder(oldToNew, input, prune); + input = Foam::reorder(oldToNew, input, prune); } diff --git a/src/OpenFOAM/containers/Lists/ListOps/ListOps.H b/src/OpenFOAM/containers/Lists/ListOps/ListOps.H index b72a3da928d301f4236f462764def7702b5e4e39..3a03da0fb181addba6b45fd47d50fe0448e41628 100644 --- a/src/OpenFOAM/containers/Lists/ListOps/ListOps.H +++ b/src/OpenFOAM/containers/Lists/ListOps/ListOps.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,16 +59,25 @@ SourceFiles namespace Foam { -//- Renumber the values (not the indices) of a list. -// Negative IntListType elements are left untouched. +// Forward Declarations +template<class T> class CompactListList; + + +//- Renumber the values within a list. +// Negative input values are left untouched. template<class IntListType> IntListType renumber(const labelUList& oldToNew, const IntListType& input); -//- Inplace renumber the values (not the indices) of a list. -// Negative IntListType elements are left untouched. +//- Inplace renumber the values within a list. +// Negative input values are left untouched. template<class IntListType> void inplaceRenumber(const labelUList& oldToNew, IntListType& input); +//- Inplace renumber the values of a list. +// Values that are not mapped by oldToNew are left untouched. +template<class IntListType> +void inplaceRenumber(const Map<label>& oldToNew, IntListType& input); + //- Reorder the elements of a list. // Locations with negative oldToNew values are left as is (copy-through). @@ -362,9 +371,24 @@ labelList invert(const label len, const bitSet& map); // \return the inverse mapping with -1 for unmapped elements. labelList invert(const bitSet& map); +//- Create inverse mapping, which is a lookup table into the given list +// \param values the values (likely unique). +// +// Negative values are allowed, duplicates are "first wins" +// +// \return the inverse lookup +Map<label> invertToMap(const labelUList& values); + //- Invert one-to-many map. Unmapped elements will be size 0. labelListList invertOneToMany(const label len, const labelUList& map); +//- Invert one-to-many compact map. Unmapped elements will be size 0. +CompactListList<label> invertOneToManyCompact +( + const label len, + const labelUList& map +); + //- Invert many-to-many. // Input and output types must be inherited from List and also // contain ints/labels. Used, for example, for faces to pointFaces. diff --git a/src/OpenFOAM/containers/Lists/ListOps/ListOpsTemplates.C b/src/OpenFOAM/containers/Lists/ListOps/ListOpsTemplates.C index 4c70358920e59f1f44cac7f799337d995281004c..4824a41915645eb916e0f06e3dc957a2222c45cf 100644 --- a/src/OpenFOAM/containers/Lists/ListOps/ListOpsTemplates.C +++ b/src/OpenFOAM/containers/Lists/ListOps/ListOpsTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,6 +71,27 @@ void Foam::inplaceRenumber } +template<class IntListType> +void Foam::inplaceRenumber +( + const Map<label>& oldToNew, + IntListType& input +) +{ + const label len = input.size(); + + for (label i = 0; i < len; ++i) + { + const auto fnd = oldToNew.cfind(input[i]); + + if (fnd.good()) + { + input[i] = fnd.val(); + } + } +} + + template<class ListType> ListType Foam::reorder ( @@ -224,7 +245,7 @@ void Foam::inplaceReorder const bool prune ) { - input = reorder(oldToNew, input, prune); + input = Foam::reorder(oldToNew, input, prune); // Verify address (for movable refs) // Info<< "now have " << name(input.cdata()) << nl; @@ -707,7 +728,7 @@ void Foam::invertManyToMany ) { // The output list sizes - labelList sizes(len, Zero); + labelList sizes(len, Foam::zero{}); for (const InputIntListType& sublist : input) { diff --git a/src/OpenFOAM/containers/Lists/SortableList/ParSortableList.C b/src/OpenFOAM/containers/Lists/SortableList/ParSortableList.C index c6ce91be386f8c4f1847fbaa26af939f3ca79fe6..59175756032375a746ec80d349ca2a58233442db 100644 --- a/src/OpenFOAM/containers/Lists/SortableList/ParSortableList.C +++ b/src/OpenFOAM/containers/Lists/SortableList/ParSortableList.C @@ -115,8 +115,8 @@ void Foam::ParSortableList<Type>::checkAndSend } { - OPstream toSlave(Pstream::commsTypes::blocking, destProci); - toSlave << values << indices; + OPstream toProc(UPstream::commsTypes::buffered, destProci); + toProc << values << indices; } } } @@ -309,9 +309,9 @@ void Foam::ParSortableList<Type>::sort() Pout<< "Receiving from " << proci << endl; } - IPstream fromSlave(Pstream::commsTypes::blocking, proci); + IPstream fromProc(UPstream::commsTypes::buffered, proci); - fromSlave >> recValues >> recIndices; + fromProc >> recValues >> recIndices; if (debug & 2) { diff --git a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.C b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.C index d3456228d324d594c046b30f81b68c79f7880bca..c0917472a4bacb87933d6ccdfe54616a4712497d 100644 --- a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.C +++ b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,7 +30,7 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class T> -Foam::label Foam::Detail::PtrListDetail<T>::count() const noexcept +Foam::label Foam::Detail::PtrListDetail<T>::count_nonnull() const noexcept { label n = 0; diff --git a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.H b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.H index faed8ae374cd9f3ba5b8db7d231407aa390cd6d2..cc7894227284fbdc2716ccdea595490b3aeffd4d 100644 --- a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.H +++ b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetail.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -95,8 +95,8 @@ public: //- Return pointer to element or nullptr for out-of-range access. inline T* get(const label i); - //- Return the number of non-null entries - label count() const noexcept; + //- The number of non-nullptr entries in the list + label count_nonnull() const noexcept; //- FatalError if any null exists in the list inline void checkNonNull() const; diff --git a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetailIO.C b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetailIO.C index e17dfc320c65ba36770c3e20419a9e4921af21d4..f3713841d96b393631ee5dcacdb7b396cb08c420 100644 --- a/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetailIO.C +++ b/src/OpenFOAM/containers/PtrLists/PtrListDetail/PtrListDetailIO.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,8 +40,8 @@ Foam::Ostream& Foam::Detail::PtrListDetail<T>::write { const label len = this->size(); - // The net length (after trimming any nullptr) - const label netLen = (trimNull ? this->count() : len); + // The net length, optionally after trimming any nullptr + const label netLen = (trimNull ? this->count_nonnull() : len); if (!netLen) { diff --git a/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrList.H b/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrList.H index 3b180f36169b6bc5c0c5ebc6f1bb226de85b8571..24c93e4a45757ae82bf9b2c62bbf6c26daa99466 100644 --- a/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrList.H +++ b/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -257,8 +257,8 @@ public: //- Size of the underlying storage. inline label capacity() const noexcept; - //- The number of non-null entries in the list - inline label count() const noexcept; + //- The number of non-nullptr entries in the list + inline label count_nonnull() const noexcept; //- Reference to the first element of the list inline T& front(); @@ -648,6 +648,10 @@ public: //- Move append another list to the end of this list. //FOAM_DEPRECATED_FOR(2022-10, "push_back()") void append(UPtrList<T>&& other) { this->push_back(std::move(other)); } + + //- The number of non-nullptr entries in the list + FOAM_DEPRECATED_FOR(2024-01, "count_nonnull()") + label count() const noexcept { return count_nonnull(); } }; diff --git a/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrListI.H b/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrListI.H index c7763cf9aa9b14fbe645336048e429308dfbc1fa..681b6497ae2e2f62322b3785a933032103eb986f 100644 --- a/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrListI.H +++ b/src/OpenFOAM/containers/PtrLists/UPtrList/UPtrListI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -124,9 +124,9 @@ inline Foam::label Foam::UPtrList<T>::capacity() const noexcept template<class T> -inline Foam::label Foam::UPtrList<T>::count() const noexcept +inline Foam::label Foam::UPtrList<T>::count_nonnull() const noexcept { - return ptrs_.count(); + return ptrs_.count_nonnull(); } diff --git a/src/OpenFOAM/db/IOobject/IOobject.H b/src/OpenFOAM/db/IOobject/IOobject.H index b3452bb382303856ac35aef6f64fa6fdd540218d..2273848d60ec2ab96ce10c59bad672f1ae6d5e75 100644 --- a/src/OpenFOAM/db/IOobject/IOobject.H +++ b/src/OpenFOAM/db/IOobject/IOobject.H @@ -121,6 +121,12 @@ class IOobject; template<> Ostream& operator<<(Ostream&, const InfoProxy<IOobject>&); +// Traits + +//- Trait for specifying global vs. local IOobject file types +template<class T> +struct is_globalIOobject : std::false_type {}; + /*---------------------------------------------------------------------------*\ Class IOobject Declaration @@ -712,6 +718,8 @@ public: }; +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + //- Specialization for \c void always returns true (no headerClassName check). template<> inline bool IOobject::isHeaderClass<void>() const @@ -720,11 +728,6 @@ inline bool IOobject::isHeaderClass<void>() const } -//- Trait for specifying global vs. local file types -template<class T> -struct is_globalIOobject : std::false_type {}; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/OpenFOAM/db/IOobjectList/IOobjectList.H b/src/OpenFOAM/db/IOobjectList/IOobjectList.H index 2c993f1fb0d9dd5dbc92b3dc7f1e76d983d90e77..d5e14a637d4b9d5c6ad54b72e9c4e9086de076b5 100644 --- a/src/OpenFOAM/db/IOobjectList/IOobjectList.H +++ b/src/OpenFOAM/db/IOobjectList/IOobjectList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -228,6 +228,9 @@ public: // Basic methods + //- Move insert IOobject into the list + inline bool add(std::unique_ptr<IOobject>&& objectPtr); + //- Move insert IOobject into the list inline bool add(autoPtr<IOobject>& objectPtr); diff --git a/src/OpenFOAM/db/IOobjectList/IOobjectListI.H b/src/OpenFOAM/db/IOobjectList/IOobjectListI.H index 9408e7b53a3a290e94e1ee17c19d28597044971d..24044638ecd30480e4e3da80f1d51a67e1e54487 100644 --- a/src/OpenFOAM/db/IOobjectList/IOobjectListI.H +++ b/src/OpenFOAM/db/IOobjectList/IOobjectListI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -109,6 +109,17 @@ inline Foam::IOobjectList::IOobjectList // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +inline bool Foam::IOobjectList::add(std::unique_ptr<IOobject>&& objectPtr) +{ + if (objectPtr) + { + return insert(objectPtr->name(), std::move(objectPtr)); + } + + return false; +} + + inline bool Foam::IOobjectList::add(autoPtr<IOobject>& objectPtr) { if (objectPtr) diff --git a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C index b37ae44d6b5c7d64ea6702874274c00a2c7be994..8f5a6c2d9789db56a14b93b00d408f4861464f47 100644 --- a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C +++ b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,8 +32,26 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class T, class BaseType> -void Foam::CompactIOField<T, BaseType>::readFromStream(const bool readOnProc) +bool Foam::CompactIOField<T, BaseType>::readIOcontents(bool readOnProc) { + if (readOpt() == IOobject::MUST_READ) + { + // Reading + } + else if (isReadOptional()) + { + if (!headerOk()) + { + readOnProc = false; + } + } + else + { + return false; + } + + + // Do reading Istream& is = readStream(word::null, readOnProc); if (readOnProc) @@ -58,23 +76,8 @@ void Foam::CompactIOField<T, BaseType>::readFromStream(const bool readOnProc) << exit(FatalIOError); } } -} - - -template<class T, class BaseType> -bool Foam::CompactIOField<T, BaseType>::readContents() -{ - if - ( - readOpt() == IOobject::MUST_READ - || (isReadOptional() && headerOk()) - ) - { - readFromStream(); - return true; - } - return false; + return true; } @@ -85,7 +88,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField(const IOobject& io) : regIOobject(io) { - readContents(); + readIOcontents(); } @@ -98,15 +101,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField : regIOobject(io) { - if (readOpt() == IOobject::MUST_READ) - { - readFromStream(readOnProc); - } - else if (isReadOptional()) - { - const bool haveFile = headerOk(); - readFromStream(readOnProc && haveFile); - } + readIOcontents(readOnProc); } @@ -119,7 +114,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField : regIOobject(io) { - readContents(); + readIOcontents(); } @@ -132,7 +127,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { Field<T>::resize(len); } @@ -148,7 +143,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { Field<T>::operator=(content); } @@ -166,7 +161,7 @@ Foam::CompactIOField<T, BaseType>::CompactIOField { Field<T>::transfer(content); - readContents(); + readIOcontents(); } diff --git a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H index 506a0e0c67bf6646a69dff8f6775a87f3770f087..efad050dbf7a36112b221bc2b2aa054d56da6c4c 100644 --- a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H +++ b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -76,13 +76,10 @@ class CompactIOField { // Private Member Functions - //- Read according to header type, with optional 'on-proc' value - void readFromStream(const bool readOnProc = true); - - //- Read if IOobject flags set. Return true if read. - // Reads according to the header type - bool readContents(); - + //- Read if IOobject flags set and 'on-proc' is true. + //- Reads according to the header type. + // Return true if read (only accurate when readOnProc == true). + bool readIOcontents(bool readOnProc = true); public: diff --git a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C index eb9ec7c591eb447065ebd1bada2c155f9eac01a1..d6d96d9b75fc1fd4c9f0b574b0364bdc2833eb76 100644 --- a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C +++ b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,34 +32,7 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class T, class BaseType> -void Foam::CompactIOList<T, BaseType>::readFromStream() -{ - Istream& is = readStream(word::null); - - if (headerClassName() == IOList<T>::typeName) - { - is >> static_cast<List<T>&>(*this); - close(); - } - else if (headerClassName() == typeName) - { - is >> *this; - close(); - } - else - { - FatalIOErrorInFunction(is) - << "unexpected class name " << headerClassName() - << " expected " << typeName - << " or " << IOList<T>::typeName << endl - << " while reading object " << name() - << exit(FatalIOError); - } -} - - -template<class T, class BaseType> -bool Foam::CompactIOList<T, BaseType>::readContents() +bool Foam::CompactIOList<T, BaseType>::readIOcontents() { if ( @@ -67,7 +40,28 @@ bool Foam::CompactIOList<T, BaseType>::readContents() || (isReadOptional() && headerOk()) ) { - readFromStream(); + Istream& is = readStream(word::null); + + if (headerClassName() == IOList<T>::typeName) + { + is >> static_cast<List<T>&>(*this); + close(); + } + else if (headerClassName() == typeName) + { + is >> *this; + close(); + } + else + { + FatalIOErrorInFunction(is) + << "Unexpected class name " << headerClassName() + << " expected " << typeName + << " or " << IOList<T>::typeName << endl + << " while reading object " << name() + << exit(FatalIOError); + } + return true; } @@ -78,12 +72,14 @@ bool Foam::CompactIOList<T, BaseType>::readContents() template<class T, class BaseType> bool Foam::CompactIOList<T, BaseType>::overflows() const { - label size = 0; - forAll(*this, i) + const List<T>& lists = *this; + + label total = 0; + for (const auto& sublist : lists) { - const label oldSize = size; - size += this->operator[](i).size(); - if (size < oldSize) + const label prev = total; + total += sublist.size(); + if (total < prev) { return true; } @@ -99,7 +95,7 @@ Foam::CompactIOList<T, BaseType>::CompactIOList(const IOobject& io) : regIOobject(io) { - readContents(); + readIOcontents(); } @@ -112,7 +108,7 @@ Foam::CompactIOList<T, BaseType>::CompactIOList : regIOobject(io) { - readContents(); + readIOcontents(); } @@ -125,7 +121,7 @@ Foam::CompactIOList<T, BaseType>::CompactIOList : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { List<T>::resize(len); } @@ -141,7 +137,7 @@ Foam::CompactIOList<T, BaseType>::CompactIOList : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { List<T>::operator=(content); } @@ -159,7 +155,7 @@ Foam::CompactIOList<T, BaseType>::CompactIOList { List<T>::transfer(content); - readContents(); + readIOcontents(); } diff --git a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H index 77d599428f6ff731cf768495cf05afafe68609ce..fc439588f890deef2763aec376d11cce7b8b4ba7 100644 --- a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H +++ b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,7 +43,6 @@ SourceFiles #define Foam_CompactIOList_H #include "IOList.H" -#include "regIOobject.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -76,12 +75,10 @@ class CompactIOList { // Private Member Functions - //- Read according to header type - void readFromStream(); - //- Read if IOobject flags set. Return true if read. - // Reads according to the header type - bool readContents(); + //- Reads according to the header type. + // Return true if read. + bool readIOcontents(); //- Has too many elements in it? bool overflows() const; @@ -130,7 +127,7 @@ public: const bool writeOnProc ) const; - virtual bool writeData(Ostream&) const; + virtual bool writeData(Ostream& os) const; // Member Operators @@ -140,23 +137,6 @@ public: //- Copy or move assignment of entries using List<T>::operator=; - - - // IOstream operators - - //- Read List from Istream, discarding contents of existing List. - friend Istream& operator>> <T, BaseType> - ( - Istream&, - CompactIOList<T, BaseType>& - ); - - // Write List to Ostream. - friend Ostream& operator<< <T, BaseType> - ( - Ostream&, - const CompactIOList<T, BaseType>& - ); }; diff --git a/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.C b/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.C index 08853995bba1a0d435d7b0a4ad42e17c384862be..1cca2f173885ea1d406de356b1b1e734640f50d5 100644 --- a/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.C +++ b/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -122,6 +122,26 @@ Foam::GlobalIOField<Type>::GlobalIOField } +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +template<class Type> +Foam::Field<Type> Foam::GlobalIOField<Type>::readContents(const IOobject& io) +{ + IOobject rio(io, IOobjectOption::NO_REGISTER); + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) + { + rio.readOpt(IOobjectOption::MUST_READ); + } + + // The object is global + rio.globalObject(true); + + GlobalIOField<Type> reader(rio); + + return Field<Type>(std::move(static_cast<Field<Type>&>(reader))); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> @@ -135,7 +155,8 @@ bool Foam::GlobalIOField<Type>::readData(Istream& is) template<class Type> bool Foam::GlobalIOField<Type>::writeData(Ostream& os) const { - return (os << static_cast<const Field<Type>&>(*this)).good(); + os << static_cast<const Field<Type>&>(*this); + return os.good(); } diff --git a/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.H b/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.H index 95f7871ea0aca90a6409b09cd05f01849bd725a2..885429bee20bde814dca4e8868314b489051786d 100644 --- a/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.H +++ b/src/OpenFOAM/db/IOobjects/GlobalIOField/GlobalIOField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2016-2018 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -85,13 +85,19 @@ public: GlobalIOField(const IOobject& io, const tmp<Field<Type>>& tfld); + // Factory Methods + + //- Read and return contents. The IOobject is never registered + static Field<Type> readContents(const IOobject& io); + + //- Destructor virtual ~GlobalIOField() = default; // Member Functions - //- Is object global + //- The object is global virtual bool global() const { return true; diff --git a/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.C b/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.C index 754a607b90dc98c015da7c6db4e481fa01f3470f..26148b39eb131e7ea8119e900fec80d1e76039f6 100644 --- a/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.C +++ b/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -106,6 +106,26 @@ Foam::GlobalIOList<Type>::GlobalIOList } +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +template<class Type> +Foam::List<Type> Foam::GlobalIOList<Type>::readContents(const IOobject& io) +{ + IOobject rio(io, IOobjectOption::NO_REGISTER); + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) + { + rio.readOpt(IOobjectOption::MUST_READ); + } + + // The object is global + rio.globalObject(true); + + GlobalIOList<Type> reader(rio); + + return List<Type>(std::move(static_cast<List<Type>&>(reader))); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> @@ -119,7 +139,8 @@ bool Foam::GlobalIOList<Type>::readData(Istream& is) template<class Type> bool Foam::GlobalIOList<Type>::writeData(Ostream& os) const { - return (os << *this).good(); + os << static_cast<const List<Type>&>(*this); + return os.good(); } diff --git a/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.H b/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.H index 966a5976d98f62501ebb67485d7bd803bef2749f..8c16dc2189b7dde9467cd704f5fe214a84722c2b 100644 --- a/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.H +++ b/src/OpenFOAM/db/IOobjects/GlobalIOList/GlobalIOList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -85,20 +85,26 @@ public: GlobalIOList(const IOobject& io, List<Type>&& content); + // Factory Methods + + //- Read and return contents. The IOobject is never registered + static List<Type> readContents(const IOobject& io); + + //- Destructor virtual ~GlobalIOList() = default; // Member Functions - //- Is object global + //- This object is global virtual bool global() const { return true; } //- Return complete path + object name if the file exists - // either in the case/processor or case otherwise null + //- either in the case/processor or case otherwise null virtual fileName filePath() const { return globalFilePath(type()); diff --git a/src/OpenFOAM/db/IOobjects/IOField/IOField.C b/src/OpenFOAM/db/IOobjects/IOField/IOField.C index 3c4a7a9eb5c8068c6b3295cdf6806cf66045df66..89b3d2f8488267fcb08da254d7254fc4b4040323 100644 --- a/src/OpenFOAM/db/IOobjects/IOField/IOField.C +++ b/src/OpenFOAM/db/IOobjects/IOField/IOField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,8 +31,26 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class Type> -void Foam::IOField<Type>::readFromStream(const bool readOnProc) +bool Foam::IOField<Type>::readIOcontents(bool readOnProc) { + if (isReadRequired()) + { + // Reading + } + else if (isReadOptional()) + { + if (!headerOk()) + { + readOnProc = false; + } + } + else + { + return false; + } + + + // Do reading Istream& is = readStream(typeName, readOnProc); if (readOnProc) @@ -40,19 +58,7 @@ void Foam::IOField<Type>::readFromStream(const bool readOnProc) is >> *this; } close(); -} - - -template<class Type> -bool Foam::IOField<Type>::readContents() -{ - if (isReadRequired() || (isReadOptional() && headerOk())) - { - readFromStream(); - return true; - } - - return false; + return true; } @@ -66,7 +72,7 @@ Foam::IOField<Type>::IOField(const IOobject& io) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOField<Type>>(); - readContents(); + readIOcontents(); } @@ -78,15 +84,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, const bool readOnProc) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOField<Type>>(); - if (isReadRequired()) - { - readFromStream(readOnProc); - } - else if (isReadOptional()) - { - const bool haveFile = headerOk(); - readFromStream(readOnProc && haveFile); - } + readIOcontents(readOnProc); } @@ -98,7 +96,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, Foam::zero) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOField<Type>>(); - readContents(); + readIOcontents(); } @@ -110,7 +108,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, const label len) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOField<Type>>(); - if (!readContents()) + if (!readIOcontents()) { Field<Type>::resize(len); } @@ -125,7 +123,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, const UList<Type>& content) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOField<Type>>(); - if (!readContents()) + if (!readIOcontents()) { Field<Type>::operator=(content); } @@ -142,7 +140,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, Field<Type>&& content) Field<Type>::transfer(content); - readContents(); + readIOcontents(); } @@ -158,7 +156,7 @@ Foam::IOField<Type>::IOField(const IOobject& io, const tmp<Field<Type>>& tfld) Field<Type>::transfer(tfld.ref()); } - if (!readContents() && !reuse) + if (!readIOcontents() && !reuse) { Field<Type>::operator=(tfld()); } @@ -185,7 +183,7 @@ template<class Type> Foam::Field<Type> Foam::IOField<Type>::readContents(const IOobject& io) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } diff --git a/src/OpenFOAM/db/IOobjects/IOField/IOField.H b/src/OpenFOAM/db/IOobjects/IOField/IOField.H index 495608623834381229f986c15bd1a16d80c7037e..1cbf9a93b5a36c05d951169601d99d6016cbc99a 100644 --- a/src/OpenFOAM/db/IOobjects/IOField/IOField.H +++ b/src/OpenFOAM/db/IOobjects/IOField/IOField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,11 +58,9 @@ class IOField { // Private Member Functions - //- Read with optional 'on-proc' value - void readFromStream(const bool readOnProc = true); - - //- Read if IOobject flags set. Return true if read. - bool readContents(); + //- Read if IOobject flags set and 'on-proc' is true. + // Return true if read (only accurate when readOnProc == true). + bool readIOcontents(bool readOnProc = true); public: diff --git a/src/OpenFOAM/db/IOobjects/IOList/IOList.C b/src/OpenFOAM/db/IOobjects/IOList/IOList.C index 59c6b63a8e9a9790a76d47d8dee54390ef9c3d00..a6a0bbb2002c737c004d2409228b76341f67d5ee 100644 --- a/src/OpenFOAM/db/IOobjects/IOList/IOList.C +++ b/src/OpenFOAM/db/IOobjects/IOList/IOList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,7 +31,7 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class T> -bool Foam::IOList<T>::readContents() +bool Foam::IOList<T>::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -54,7 +54,7 @@ Foam::IOList<T>::IOList(const IOobject& io) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOList<T>>(); - readContents(); + readIOcontents(); } @@ -66,7 +66,7 @@ Foam::IOList<T>::IOList(const IOobject& io, Foam::zero) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOList<T>>(); - readContents(); + readIOcontents(); } @@ -78,7 +78,7 @@ Foam::IOList<T>::IOList(const IOobject& io, const label len) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOList<T>>(); - if (!readContents()) + if (!readIOcontents()) { List<T>::resize(len); } @@ -93,7 +93,7 @@ Foam::IOList<T>::IOList(const IOobject& io, const UList<T>& content) // Check for MUST_READ_IF_MODIFIED warnNoRereading<IOList<T>>(); - if (!readContents()) + if (!readIOcontents()) { List<T>::operator=(content); } @@ -110,7 +110,7 @@ Foam::IOList<T>::IOList(const IOobject& io, List<T>&& content) List<T>::transfer(content); - readContents(); + readIOcontents(); } @@ -132,7 +132,7 @@ template<class T> Foam::List<T> Foam::IOList<T>::readContents(const IOobject& io) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } diff --git a/src/OpenFOAM/db/IOobjects/IOList/IOList.H b/src/OpenFOAM/db/IOobjects/IOList/IOList.H index 1f30fc4863e071011722ed4d534e4b1d1175fb0f..636fab73dbbb0baaf4a88cca017e9583e67e1d01 100644 --- a/src/OpenFOAM/db/IOobjects/IOList/IOList.H +++ b/src/OpenFOAM/db/IOobjects/IOList/IOList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,7 +59,7 @@ class IOList // Private Member Functions //- Read if IOobject flags set. Return true if read. - bool readContents(); + bool readIOcontents(); public: diff --git a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C index 702aebd322ebb11d0998ae438dde9f297c96123e..53a6178a43eea59377ec1639a6f6de7cfb0331a8 100644 --- a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C +++ b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,7 +31,7 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class T> -bool Foam::IOMap<T>::readContents() +bool Foam::IOMap<T>::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -55,7 +55,7 @@ Foam::IOMap<T>::IOMap(const IOobject& io) : regIOobject(io) { - readContents(); + readIOcontents(); } @@ -64,7 +64,7 @@ Foam::IOMap<T>::IOMap(const IOobject& io, const label size) : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { Map<T>::resize(size); } @@ -76,7 +76,7 @@ Foam::IOMap<T>::IOMap(const IOobject& io, const Map<T>& content) : regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { Map<T>::operator=(content); } @@ -90,7 +90,7 @@ Foam::IOMap<T>::IOMap(const IOobject& io, Map<T>&& content) { Map<T>::transfer(content); - readContents(); + readIOcontents(); } @@ -100,11 +100,14 @@ template<class T> Foam::Map<T> Foam::IOMap<T>::readContents(const IOobject& io) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } + // The object is global + rio.globalObject(true); + IOMap<T> reader(rio); return Map<T>(std::move(static_cast<Map<T>&>(reader))); diff --git a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.H b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.H index 9cf43adee26c2d95b25541e7230709475138b1d0..3743165afc8006de9d2e75fed920e1bb49c689b2 100644 --- a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.H +++ b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,7 @@ class IOMap // Private Member Functions //- Read if IOobject flags set. Return true if read. - bool readContents(); + bool readIOcontents(); public: @@ -101,9 +101,7 @@ public: // Member Functions - bool writeData(Ostream& os) const; - - //- Is object global + //- This object is global virtual bool global() const { return true; @@ -116,6 +114,9 @@ public: return globalFilePath(type()); } + //- The writeData method for regIOobject write operation + bool writeData(Ostream& os) const; + // Member Operators diff --git a/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C b/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C index 48efa21d5ea2764005454b81ce089ff12528a984..95a42de2e5bf96001818f468481fc4e3bdb1e498 100644 --- a/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C +++ b/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C @@ -122,7 +122,7 @@ template<class T> Foam::PtrList<T> Foam::IOPtrList<T>::readContents(const IOobject& io) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C index 83834881ec780ea84af366c4ee35db6be7e1eef1..77fd7e7e56ec5584c3230c8af4228bcd11cb2d14 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -94,14 +94,31 @@ Foam::IOdictionary::IOdictionary // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // Foam::dictionary Foam::IOdictionary::readContents(const IOobject& io) +{ + return readContents(io, typeName); +} + + +Foam::dictionary Foam::IOdictionary::readContents +( + const IOobject& io, + const word& wantedType +) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } - IOdictionary reader(rio); + // The object is global + rio.globalObject(true); + + IOdictionary reader + ( + rio, + (wantedType.empty() ? typeName : wantedType) + ); return dictionary(std::move(static_cast<dictionary&>(reader))); } diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.H b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.H index 5c10205622ca47ec86bd03acc7337b4f48055d4b..fc7d48205cb547848330b3ce2a460170b51c29aa 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.H +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -89,9 +89,18 @@ public: // Factory Methods - //- Read and return contents. The IOobject will not be registered + //- Read and return contents, testing for "dictionary" type. + //- The IOobject will not be registered static dictionary readContents(const IOobject& io); + //- Read and return contents, testing for expected type. + //- The IOobject will not be registered + static dictionary readContents + ( + const IOobject& io, + const word& wantedType + ); + //- Destructor virtual ~IOdictionary() = default; @@ -99,14 +108,14 @@ public: // Member Functions - //- Is object global + //- The object is global virtual bool global() const { return true; } //- Return complete path + object name if the file exists - // either in the case/processor or case otherwise null + //- either in the case/processor or case otherwise null virtual fileName filePath() const { return globalFilePath(type()); diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/baseIOdictionary.C b/src/OpenFOAM/db/IOobjects/IOdictionary/baseIOdictionary.C index 7007cf483e71edcdfa65045b1e323204dcfc6597..53edc6901ef2bb58ab1e92e28e1681dec9844546 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/baseIOdictionary.C +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/baseIOdictionary.C @@ -92,7 +92,7 @@ bool Foam::baseIOdictionary::readData(Istream& is) { is >> *this; - if (writeDictionaries && Pstream::master() && !is.bad()) + if (writeDictionaries && UPstream::master() && !is.bad()) { Sout<< nl << "--- baseIOdictionary " << name() diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.C b/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.C index bd45e100c782c1d490447494b41e5ffd9f4ee209..202fe42beb00ca941e912b732ca41614cb2556c6 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.C +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -91,14 +91,28 @@ Foam::localIOdictionary::localIOdictionary // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // Foam::dictionary Foam::localIOdictionary::readContents(const IOobject& io) +{ + return readContents(io, typeName); +} + + +Foam::dictionary Foam::localIOdictionary::readContents +( + const IOobject& io, + const word& wantedType +) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } - localIOdictionary reader(rio); + localIOdictionary reader + ( + rio, + (wantedType.empty() ? typeName : wantedType) + ); return dictionary(std::move(static_cast<dictionary&>(reader))); } diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.H b/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.H index e151f258fc372b7d05248a66897624f527c262c5..ed6bd785bc9fe13edd04cf942947c82750675a7b 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.H +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/localIOdictionary.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,9 +86,18 @@ public: // Factory Methods - //- Read and return contents. The IOobject will not be registered + //- Read and return contents, testing for "dictionary" type. + //- The IOobject will not be registered static dictionary readContents(const IOobject& io); + //- Read and return contents, testing for expected type. + //- The IOobject will not be registered + static dictionary readContents + ( + const IOobject& io, + const word& wantedType + ); + //- Destructor virtual ~localIOdictionary() = default; @@ -96,14 +105,14 @@ public: // Member Functions - //- Is object global + //- The object is not global virtual bool global() const { return false; } //- Return complete path + object name if the file exists - // in the case otherwise null + //- in the case otherwise null virtual fileName filePath() const { // Use default (local only) search strategy diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.C b/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.C index f4183e9ceea4a52b5314bcc1f1955621b55fa396..1a54d61827904993868d3a524abbd5bf1ffed20d 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.C +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.C @@ -97,7 +97,7 @@ Foam::label Foam::unwatchedIOdictionary::addWatch(const fileName& f) { label index = -1; - if (readOpt() == IOobject::MUST_READ_IF_MODIFIED) + if (readOpt() == IOobjectOption::READ_MODIFIED) { index = files_.find(f); @@ -113,7 +113,7 @@ Foam::label Foam::unwatchedIOdictionary::addWatch(const fileName& f) void Foam::unwatchedIOdictionary::addWatch() { - if (readOpt() == IOobject::MUST_READ_IF_MODIFIED) + if (readOpt() == IOobjectOption::READ_MODIFIED) { fileName f = filePath(); if (f.empty()) diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.H b/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.H index bded2b07770fe3a1881dcca76f036adef2ffe3a1..521c482a010b8913eb0124123da067ff4a0533fc 100644 --- a/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.H +++ b/src/OpenFOAM/db/IOobjects/IOdictionary/unwatchedIOdictionary.H @@ -101,14 +101,14 @@ public: // Member Functions - //- Is object global + //- The object is global virtual bool global() const { return true; } //- Return complete path + object name if the file exists - // either in the case/processor or case otherwise null + //- either in the case/processor or case otherwise null virtual fileName filePath() const { return globalFilePath(type()); diff --git a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C index 4139ecca421647417fb51347da903d2c34ace88e..8542952455c88a611f6ff8b68c931b0a5a5ca265 100644 --- a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C +++ b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C @@ -545,7 +545,7 @@ bool Foam::decomposedBlockData::readBlocks } else { - PstreamBuffers pBufs(comm, UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm); if (UPstream::master(comm)) { @@ -667,7 +667,7 @@ Foam::autoPtr<Foam::ISstream> Foam::decomposedBlockData::readBlocks } else { - PstreamBuffers pBufs(comm, UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm); if (UPstream::master(comm)) { diff --git a/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.C b/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.C index 69f4d1772b547a273a2e726b109b4e462ca47825..64e1959fa3c1fce9ad4eeb36a52ed965aa93946d 100644 --- a/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.C +++ b/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,7 +31,7 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // template<class Type> -void Foam::rawIOField<Type>::readContents +void Foam::rawIOField<Type>::readIOcontents ( Istream& is, IOobjectOption::readOption readAverage @@ -65,7 +65,7 @@ void Foam::rawIOField<Type>::readContents template<class Type> -bool Foam::rawIOField<Type>::readContents +bool Foam::rawIOField<Type>::readIOcontents ( IOobjectOption::readOption readAverage ) @@ -111,7 +111,7 @@ bool Foam::rawIOField<Type>::readContents if (is.good()) { - readContents(is, readAverage); + readIOcontents(is, readAverage); close(); } } @@ -122,7 +122,7 @@ bool Foam::rawIOField<Type>::readContents if (isPtr && isPtr->good()) { - readContents(*isPtr, readAverage); + readIOcontents(*isPtr, readAverage); } else { @@ -165,7 +165,7 @@ Foam::rawIOField<Type>::rawIOField // Check for MUST_READ_IF_MODIFIED warnNoRereading<rawIOField<Type>>(); - readContents(readAverage); + readIOcontents(readAverage); } @@ -194,7 +194,7 @@ template<class Type> Foam::Field<Type> Foam::rawIOField<Type>::readContents(const IOobject& io) { IOobject rio(io, IOobjectOption::NO_REGISTER); - if (rio.readOpt() == IOobjectOption::MUST_READ_IF_MODIFIED) + if (rio.readOpt() == IOobjectOption::READ_MODIFIED) { rio.readOpt(IOobjectOption::MUST_READ); } diff --git a/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.H b/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.H index eaf5a9e934eb911c27a27b4242c5db4a8079289b..3e3668361eacd5e68f453a87e31a5380e8422251 100644 --- a/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.H +++ b/src/OpenFOAM/db/IOobjects/rawIOField/rawIOField.H @@ -67,10 +67,10 @@ class rawIOField // Private Member Functions //- Read contents and average - void readContents(Istream&, IOobjectOption::readOption readAverage); + void readIOcontents(Istream&, IOobjectOption::readOption readAverage); //- Read if IOobject flags set. Return true if read. - bool readContents(IOobjectOption::readOption readAverage); + bool readIOcontents(IOobjectOption::readOption readAverage); public: diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.C b/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.C index b9b9b2f318d227e56f5afea83d9a761a2584343b..664328400c4bd9fb243d0ee85cf4a104906285a3 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.C +++ b/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,6 +37,119 @@ namespace Foam } +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::DynamicList<char> +Foam::IFstream::readContents(IFstream& ifs) +{ + DynamicList<char> buffer; + + const auto inputSize = ifs.fileSize(); + + if (inputSize <= 0) + { + // Nothing to read + } + else if (IOstreamOption::COMPRESSED == ifs.compression()) + { + auto& iss = ifs.stdStream(); + + // For compressed files, no idea how large the result will be. + // So read chunk-wise. + // Using the compressed size for the chunk size: + // 50% compression = 2 iterations + // 66% compression = 3 iterations + // ... + + const uint64_t chunkSize = + ( + (inputSize <= 1024) + ? uint64_t(4096) + : uint64_t(2*inputSize) + ); + + uint64_t beg = 0; + + for (int iter = 1; iter < 100000; ++iter) + { + // Manual resizing to use incremental vs doubling + buffer.setCapacity(label(iter * chunkSize)); + buffer.resize(buffer.capacity()); + + ifs.readRaw(buffer.data() + beg, chunkSize); + const std::streamsize nread = iss.gcount(); + + if + ( + nread < 0 + || nread == std::numeric_limits<std::streamsize>::max() + ) + { + // Failed, but treat as normal 'done' + buffer.resize(label(beg)); + break; + } + else + { + beg += uint64_t(nread); + if (nread >= 0 && uint64_t(nread) < chunkSize) + { + // normalExit = true; + buffer.resize(label(beg)); + break; + } + } + } + } + else + { + // UNCOMPRESSED + { + auto& iss = ifs.stdStream(); + + buffer.setCapacity(label(inputSize)); + buffer.resize(buffer.capacity()); + + ifs.readRaw(buffer.data(), buffer.size_bytes()); + const std::streamsize nread = iss.gcount(); + + if + ( + nread < 0 + || nread == std::numeric_limits<std::streamsize>::max() + ) + { + // Failed, but treat as normal 'done' + buffer.clear(); + } + else + { + buffer.resize(label(nread)); // Safety + } + } + } + + return buffer; +} + + +Foam::DynamicList<char> +Foam::IFstream::readContents(const fileName& pathname) +{ + if (!pathname.empty()) + { + IFstream ifs(pathname, IOstreamOption::BINARY); + + if (ifs.good()) + { + return readContents(ifs); + } + } + + return DynamicList<char>(); +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::IFstream::IFstream @@ -197,7 +310,7 @@ Foam::IFstream& Foam::IFstream::operator()() const else { FatalIOErrorInFunction(*this) - << "file " << this->name() << " does not exist" + << "File " << this->name() << " does not exist" << exit(FatalIOError); } } diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.H b/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.H index c6ea419a75347d00e68d6b8f3cfd50611a9e126f..958af45aae9fed80df406c1eb607312dec5110c7 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.H +++ b/src/OpenFOAM/db/IOstreams/Fstreams/IFstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,8 @@ Class Foam::IFstream Description - Input from file stream, using an ISstream + Input from file stream as an ISstream, normally using \c std::ifstream + for the actual input. SourceFiles IFstream.C @@ -41,6 +42,7 @@ SourceFiles #include "ISstream.H" #include "className.H" #include "fstreamPointer.H" +#include "DynamicList.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -54,7 +56,7 @@ namespace Foam class IFstream : private Foam::ifstreamPointer, - public ISstream + public Foam::ISstream { public: @@ -86,6 +88,16 @@ public: ~IFstream() = default; + // Static Functions + + //- Get file contents from specified file (compressed/uncompressed). + //- Returns an empty list if the file cannot be opened. + static DynamicList<char> readContents(const fileName& pathname); + + //- Get file contents from IFstream (assumed to be rewound) + static DynamicList<char> readContents(IFstream& ifs); + + // Member Functions //- Get character(s) diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.C b/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.C index bc162c94f3aa2993796ed4e0f03da09f55dfb1ae..e0bf8edec3023490714e2a874e9d74ea69297a13 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.C +++ b/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,7 +66,7 @@ Foam::OFstream::OFstream ( pathname, streamOpt, - (IOstreamOption::appendType::APPEND == append), + append, (IOstreamOption::atomicType::ATOMIC == atomic) ), OSstream(*(ofstreamPointer::get()), pathname, streamOpt) diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.H b/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.H index ca0819ff43070ef4e249e55b64f043792561962c..e0c4a17a96769830c719836744b7fa0e72b6250b 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.H +++ b/src/OpenFOAM/db/IOstreams/Fstreams/OFstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,29 @@ Class Foam::OFstream Description - Output to file stream, using an OSstream + Output to file stream as an OSstream, normally using \c std::ofstream + for the actual output. + +Note + The atomic output works by creating an intermediate temporary file, + which is renamed as an atomic operation when closing. It is not + possible, or particularly desirable, to have an atomic in combination + with append behaviour. If both are specified, append has priority. + +Note + An output file can be opened in two different \c append modes, both of + which preserve existing files: + -# A common append mode is APPEND_APP, which corresponds to the + \c std::ios_base::app flag. + A seek-to-end is performed at \em every write. + It is thus not possible to use any manual seeks to overwrite parts + of the file. + -# The other append mode is APPEND_ATE, which roughly corresponds to the + \c std::ios_base::ate flag behaviour. + A seek-to-end is performed immediately after opening, + but not subsequently. + Manual seeks can be used to overwrite parts of the file. + . SourceFiles OFstream.C @@ -64,53 +86,55 @@ public: // Constructors - //- Construct a null output file stream. - // Behaves like \c /dev/null and is named accordingly + //- Construct a null output file stream that behaves like \c /dev/null explicit OFstream(std::nullptr_t); //- Construct with specified atomic behaviour - //- from pathname, stream option, optional append + //- from pathname, stream option, optional append (see note). OFstream ( IOstreamOption::atomicType atomic, const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND + IOstreamOption::appendType append = IOstreamOption::NO_APPEND ); - //- Construct from pathname and other specifications + //- Construct from pathname and other specifications. + // See note on append mode. explicit OFstream ( const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND + IOstreamOption::appendType append = IOstreamOption::NO_APPEND ) : OFstream(IOstreamOption::NON_ATOMIC, pathname, streamOpt, append) {} - //- Construct from pathname, format (uncompressed), optional append, + //- Construct from pathname, format (uncompressed), + //- optional append (see note), //- atomic behaviour as per system default OFstream ( const fileName& pathname, IOstreamOption::streamFormat fmt, IOstreamOption::compressionType cmp = IOstreamOption::UNCOMPRESSED, - IOstreamOption::appendType append = IOstreamOption::NON_APPEND + IOstreamOption::appendType append = IOstreamOption::NO_APPEND ) : OFstream(pathname, IOstreamOption(fmt, cmp), append) {} //- Construct with specified atomic behaviour - //- from pathname, format (uncompressed), optional append + //- from pathname, format (uncompressed), + //- optional append (see note). OFstream ( IOstreamOption::atomicType atomic, const fileName& pathname, IOstreamOption::streamFormat fmt, IOstreamOption::compressionType cmp = IOstreamOption::UNCOMPRESSED, - IOstreamOption::appendType append = IOstreamOption::NON_APPEND + IOstreamOption::appendType append = IOstreamOption::NO_APPEND ) : OFstream(atomic, pathname, IOstreamOption(fmt, cmp), append) @@ -141,6 +165,21 @@ public: virtual void rewind(); + // Output stream modes + + //- True if opened in append mode \em and file already existed + bool is_appending() const noexcept + { + return ofstreamPointer::is_appending(); + } + + //- True if file creation behaves as atomic + bool is_atomic() const noexcept + { + return ofstreamPointer::is_atomic(); + } + + // Print //- Print stream description @@ -158,7 +197,7 @@ public: IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp = IOstreamOption::UNCOMPRESSED, - IOstreamOption::appendType append = IOstreamOption::NON_APPEND + IOstreamOption::appendType append = IOstreamOption::NO_APPEND ) : OFstream(pathname, IOstreamOption(fmt, ver, cmp), append) diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointer.H b/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointer.H index ce94bcd6ff75f9ba71d2df059d3fabd200034d2b..1fbbabb253191670291dcf8b8bc8801e38e36110 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointer.H +++ b/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointer.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -132,7 +132,7 @@ public: // Member Functions //- True if compiled with libz support - static bool supports_gz(); + static bool supports_gz() noexcept; // Access @@ -194,20 +194,37 @@ public: class ofstreamPointer { + // Private Data Types + + //- The file open/creation type (bitmask) + enum modeType : char + { + NONE = 0, // Regular open (truncates existing) + ATOMIC = 0x1, // Atomic file creation + APPENDING = 0x2 // Is appending to an existing file + }; + + // Private Data //- The stream pointer (ofstream | ogzstream | ocountstream, ...) std::unique_ptr<std::ostream> ptr_; - //- Atomic file creation - bool atomic_; + //- File output/creation type (atomic, append etc) + char mode_; + + + // Private Member Functions + + //- Clear any output mode information + void clear_mode() noexcept { mode_ = modeType::NONE; } protected: // Protected Member Functions - //- Reopen for compressed/non-compressed + //- Reopen for compressed/non-compressed. Discards append status. void reopen(const std::string& pathname); //- Close stream and rename file @@ -245,16 +262,20 @@ public: //- Construct from pathname, option, append, file handling atomic // \param pathname The file name to open for writing // \param streamOpt Respects (UNCOMPRESSED | COMPRESSED) - // \param append Open in append mode + // \param append Open in specified append mode // \param atomic Write into temporary file (not target file). // This option should only be used with a stream wrapper // (eg, OFstream) that handles the final renaming. + // + // \note + // There are two different append modes: + // append at every write, or only append after opening. explicit ofstreamPointer ( const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - const bool append = false, - const bool atomic = false + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, + bool atomic = false ); //- Construct from pathname, compression, append, file handling atomic @@ -268,15 +289,15 @@ public: ( const fileName& pathname, IOstreamOption::compressionType comp, - const bool append = false, - const bool atomic = false + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, + bool atomic = false ); - // Member Functions + // Static Functions //- True if compiled with libz support - static bool supports_gz(); + static bool supports_gz() noexcept; // Access @@ -293,14 +314,34 @@ public: //- Which compression type? IOstreamOption::compressionType whichCompression() const; + //- True if opened in append mode \em and file already existed + bool is_appending() const noexcept + { + return (mode_ & modeType::APPENDING); + } + + //- True if file creation behaves as atomic + bool is_atomic() const noexcept + { + return (mode_ & modeType::ATOMIC); + } + // Edit - //- Return managed pointer and release ownership - std::ostream* release() noexcept { return ptr_.release(); } + //- Return managed pointer and release ownership. + std::ostream* release() noexcept + { + clear_mode(); + return ptr_.release(); + } //- Replace the managed pointer - void reset(std::ostream* ptr) noexcept { ptr_.reset(ptr); } + void reset(std::ostream* ptr) noexcept + { + clear_mode(); + ptr_.reset(ptr); + } // Operators diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointers.C b/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointers.C index 2f69d064f34946f3566ac2c3a0fce86914d1d24c..7e8d3282f0e9d058ba7cd192f65ec524f0dc22e5 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointers.C +++ b/src/OpenFOAM/db/IOstreams/Fstreams/fstreamPointers.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,7 +40,7 @@ License // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // -bool Foam::ifstreamPointer::supports_gz() +bool Foam::ifstreamPointer::supports_gz() noexcept { #ifdef HAVE_LIBZ return true; @@ -50,7 +50,7 @@ bool Foam::ifstreamPointer::supports_gz() } -bool Foam::ofstreamPointer::supports_gz() +bool Foam::ofstreamPointer::supports_gz() noexcept { #ifdef HAVE_LIBZ return true; @@ -60,9 +60,6 @@ bool Foam::ofstreamPointer::supports_gz() } -// Future: List<char> slurpFile(....); - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::ifstreamPointer::ifstreamPointer @@ -71,7 +68,7 @@ Foam::ifstreamPointer::ifstreamPointer IOstreamOption streamOpt // Currently unused ) : - ptr_(nullptr) + ptr_() { open(pathname, streamOpt); } @@ -82,7 +79,7 @@ Foam::ifstreamPointer::ifstreamPointer const fileName& pathname ) : - ptr_(nullptr) + ptr_() { open(pathname); } @@ -91,14 +88,14 @@ Foam::ifstreamPointer::ifstreamPointer Foam::ofstreamPointer::ofstreamPointer() noexcept : ptr_(), - atomic_(false) + mode_(modeType::NONE) {} Foam::ofstreamPointer::ofstreamPointer(std::nullptr_t) : ptr_(new Foam::ocountstream), - atomic_(false) + mode_(modeType::NONE) {} @@ -106,27 +103,44 @@ Foam::ofstreamPointer::ofstreamPointer ( const fileName& pathname, IOstreamOption streamOpt, - const bool append, - const bool atomic + IOstreamOption::appendType append, + bool atomic ) : - ptr_(nullptr), - atomic_(atomic) + ptr_(), + mode_(modeType::NONE) { - std::ios_base::openmode mode + // Leave std::ios_base::trunc implicitly handled to make things + // easier for append mode. + + std::ios_base::openmode openmode ( std::ios_base::out | std::ios_base::binary ); - if (append) + if (append == IOstreamOption::APPEND_APP) { - mode |= std::ios_base::app; + openmode |= std::ios_base::app; // Cannot append to gzstream streamOpt.compression(IOstreamOption::UNCOMPRESSED); // Cannot use append + atomic operation, without lots of extra work - atomic_ = false; + atomic = false; + } + else if (append == IOstreamOption::APPEND_ATE) + { + // Handle an "append-like" mode by opening "r+b" and NOT as "ab" + // - file already exists: Sets read position to start + // - file does not exist: Error + + openmode |= std::ios_base::in; // [SIC] - use read bit, not append! + + // Cannot append to gzstream + streamOpt.compression(IOstreamOption::UNCOMPRESSED); + + // Cannot use append + atomic operation, without lots of extra work + atomic = false; } @@ -149,9 +163,9 @@ Foam::ofstreamPointer::ofstreamPointer #ifdef HAVE_LIBZ // TBD: - // atomic_ = true; // Always treat COMPRESSED like an atomic + // atomic = true; // Always treat COMPRESSED like an atomic - const fileName& target = (atomic_ ? pathname_tmp : pathname_gz); + const fileName& target = (atomic ? pathname_tmp : pathname_gz); // Remove old uncompressed version (if any) fType = Foam::type(pathname, false); @@ -161,7 +175,7 @@ Foam::ofstreamPointer::ofstreamPointer } // Avoid writing into symlinked files (non-append mode) - if (!append || atomic_) + if (atomic || (append == IOstreamOption::NO_APPEND)) { fType = Foam::type(target, false); if (fType == fileName::SYMLINK) @@ -170,7 +184,7 @@ Foam::ofstreamPointer::ofstreamPointer } } - ptr_.reset(new ogzstream(target, mode)); + ptr_.reset(new ogzstream(target, openmode)); #else /* HAVE_LIBZ */ @@ -187,7 +201,7 @@ Foam::ofstreamPointer::ofstreamPointer if (IOstreamOption::COMPRESSED != streamOpt.compression()) { - const fileName& target = (atomic_ ? pathname_tmp : pathname); + const fileName& target = (atomic ? pathname_tmp : pathname); // Remove old compressed version (if any) fType = Foam::type(pathname_gz, false); @@ -197,7 +211,7 @@ Foam::ofstreamPointer::ofstreamPointer } // Avoid writing into symlinked files (non-append mode) - if (!append || atomic_) + if (atomic || (append == IOstreamOption::NO_APPEND)) { fType = Foam::type(target, false); if (fType == fileName::SYMLINK) @@ -206,7 +220,75 @@ Foam::ofstreamPointer::ofstreamPointer } } - ptr_.reset(new std::ofstream(target, mode)); + // File pointer (std::ofstream) + auto filePtr = std::make_unique<std::ofstream>(target, openmode); + + if (append == IOstreamOption::APPEND_APP) + { + // Final handling for append 'app' (always non-atomic) + + // Set output position to the end (like std::ios_base::ate) + // but only to test if the file had a size. + // No real performance problem since any subsequent write + // will do the same anyhow. + + filePtr->seekp(0, std::ios_base::end); + if (filePtr->tellp() <= 0) + { + // Did not open an existing file + append = IOstreamOption::NO_APPEND; + } + } + else if (append == IOstreamOption::APPEND_ATE) + { + // Final handling for append 'ate' (always non-atomic) + + if (filePtr->good()) + { + // Success if file already exists. + // Set output position to the end - like std::ios_base::ate + + filePtr->seekp(0, std::ios_base::end); + + if (filePtr->tellp() <= 0) + { + // Did not open an existing file + append = IOstreamOption::NO_APPEND; + } + } + else + { + // Error if file does not already exist. + // Reopen as regular output mode only. + + // Did not open an existing file + append = IOstreamOption::NO_APPEND; + + if (filePtr->is_open()) + { + filePtr->close(); + } + filePtr->clear(); + filePtr->open + ( + target, + (std::ios_base::out | std::ios_base::binary) + ); + } + } + ptr_.reset(filePtr.release()); + } + + // Is appending to an existing file + if (append != IOstreamOption::NO_APPEND) + { + mode_ = modeType::APPENDING; + } + + // An atomic output operation (normally not appending!) + if (atomic) + { + mode_ |= modeType::ATOMIC; } } @@ -215,8 +297,8 @@ Foam::ofstreamPointer::ofstreamPointer ( const fileName& pathname, IOstreamOption::compressionType comp, - const bool append, - const bool atomic + IOstreamOption::appendType append, + bool atomic ) : ofstreamPointer @@ -240,12 +322,12 @@ void Foam::ifstreamPointer::open // Forcibly close old stream (if any) ptr_.reset(nullptr); - const std::ios_base::openmode mode + const std::ios_base::openmode openmode ( std::ios_base::in | std::ios_base::binary ); - ptr_.reset(new std::ifstream(pathname, mode)); + ptr_.reset(new std::ifstream(pathname, openmode)); if (!ptr_->good()) { @@ -257,7 +339,7 @@ void Foam::ifstreamPointer::open { #ifdef HAVE_LIBZ - ptr_.reset(new igzstream(pathname_gz, mode)); + ptr_.reset(new igzstream(pathname_gz, openmode)); #else /* HAVE_LIBZ */ @@ -314,7 +396,7 @@ void Foam::ofstreamPointer::reopen(const std::string& pathname) gz->close(); gz->clear(); - if (atomic_) + if (mode_ & modeType::ATOMIC) { gz->open ( @@ -344,10 +426,11 @@ void Foam::ofstreamPointer::reopen(const std::string& pathname) } file->clear(); - // Don't need original request to append since rewind implies - // trashing that anyhow. + // Invalidate the appending into existing file information + // since rewind usually means overwrite + mode_ &= ~modeType::APPENDING; - if (atomic_) + if (mode_ & modeType::ATOMIC) { file->open ( @@ -370,7 +453,13 @@ void Foam::ofstreamPointer::reopen(const std::string& pathname) void Foam::ofstreamPointer::close(const std::string& pathname) { - if (!atomic_ || pathname.empty()) return; + // Invalidate the appending into existing file information + mode_ &= ~modeType::APPENDING; + + if (pathname.empty() || !(mode_ & modeType::ATOMIC)) + { + return; + } #ifdef HAVE_LIBZ auto* gz = dynamic_cast<ogzstream*>(ptr_.get()); diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C index cc80139f0e68f4c65b2d932962718b4a84fcb231..efdb248655576f7945706c31c62be1d0e5d01086 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C +++ b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C @@ -115,7 +115,7 @@ void Foam::masterOFstream::commit() } // Different files - PstreamBuffers pBufs(comm_, UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm_); if (!UPstream::master(comm_)) { diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H index c139e00e0de7a1cbe3693c1b0723dc5d78b88186..c8ee2618cdc2ff6b1fbc1d468a707f6714b5ed4f 100644 --- a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H +++ b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H @@ -107,7 +107,7 @@ public: const label comm, const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND, + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, const bool writeOnProc = true ); @@ -118,7 +118,7 @@ public: const label comm, const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND, + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, const bool writeOnProc = true ) : @@ -140,7 +140,7 @@ public: IOstreamOption::atomicType atomic, const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND, + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, const bool writeOnProc = true ) : @@ -161,7 +161,7 @@ public: ( const fileName& pathname, IOstreamOption streamOpt = IOstreamOption(), - IOstreamOption::appendType append = IOstreamOption::NON_APPEND, + IOstreamOption::appendType append = IOstreamOption::NO_APPEND, const bool writeOnProc = true ) : diff --git a/src/OpenFOAM/db/IOstreams/IOstreams/IOmanip.H b/src/OpenFOAM/db/IOstreams/IOstreams/IOmanip.H index 4df38b3276d56fccdbf1ef7f116d899e8511ed2e..08456800d5ad17c05471866c6eb3496a915b8d6c 100644 --- a/src/OpenFOAM/db/IOstreams/IOstreams/IOmanip.H +++ b/src/OpenFOAM/db/IOstreams/IOstreams/IOmanip.H @@ -166,9 +166,9 @@ inline Ostream& operator<<(Ostream& os, const Omanip<T>& m) // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -inline Smanip<ios_base::fmtflags> setf(const ios_base::fmtflags flags) +inline Smanip<std::ios_base::fmtflags> setf(std::ios_base::fmtflags flags) { - return Smanip<ios_base::fmtflags>(&IOstream::setf, flags); + return Smanip<std::ios_base::fmtflags>(&IOstream::setf, flags); } diff --git a/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.C b/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.C index a627e382bfdb432f6db9e7ba55ff6208867c03c0..889b2e19f6ba0ae3db984f0d161a50841eb324b1 100644 --- a/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.C +++ b/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.C @@ -114,23 +114,19 @@ void Foam::IOstream::print(Ostream& os, const int streamState) const { if (streamState == std::ios_base::goodbit) { - os << "ios_base::goodbit set : the last operation on stream succeeded" - << endl; + os << "goodbit set : the last operation on stream succeeded" << endl; } else if (streamState & std::ios_base::badbit) { - os << "ios_base::badbit set : characters possibly lost" - << endl; + os << "badbit set : characters possibly lost" << endl; } else if (streamState & std::ios_base::failbit) { - os << "ios_base::failbit set : some type of formatting error" - << endl; + os << "failbit set : some type of formatting error" << endl; } else if (streamState & std::ios_base::eofbit) { - os << "ios_base::eofbit set : at end of stream" - << endl; + os << "eofbit set : at end of stream" << endl; } } diff --git a/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.H b/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.H index b05e073cb3d870469dea0340c16da33bfa96482d..b67807efcd90ea80238d35f0e3437f4411e380e5 100644 --- a/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.H +++ b/src/OpenFOAM/db/IOstreams/IOstreams/IOstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -339,9 +339,6 @@ public: return old; } - //- Return flags of stream - virtual ios_base::fmtflags flags() const = 0; - //- Return the default precision static unsigned int defaultPrecision() noexcept { @@ -349,7 +346,7 @@ public: } //- Reset the default precision - // \return the previous value + // \return the previous default precision static unsigned int defaultPrecision(unsigned int prec) noexcept { unsigned int old(precision_); @@ -357,6 +354,18 @@ public: return old; } + //- Set the minimum default precision + // \return the previous default precision + static unsigned int minPrecision(unsigned int prec) noexcept + { + unsigned int old(precision_); + if (precision_ < prec) + { + precision_ = prec; + } + return old; + } + //- Set stream state as reached 'eof' void setEof() noexcept { @@ -370,32 +379,35 @@ public: } //- Set stream state to be 'bad' - void setBad() + void setBad() noexcept { ioState_ |= std::ios_base::badbit; } - //- Set flags of stream - virtual ios_base::fmtflags flags(const ios_base::fmtflags f) = 0; + //- Return current stream flags + virtual std::ios_base::fmtflags flags() const = 0; + + //- Set stream flags, return old stream flags + virtual std::ios_base::fmtflags flags(std::ios_base::fmtflags) = 0; - //- Set flags of stream - ios_base::fmtflags setf(const ios_base::fmtflags f) + //- Set stream flag(s), return old stream flags + std::ios_base::fmtflags setf(std::ios_base::fmtflags f) { return flags(flags() | f); } - //- Set flags of given field of stream - ios_base::fmtflags setf + //- Set stream flag(s) with mask, return old stream flags + std::ios_base::fmtflags setf ( - const ios_base::fmtflags f, - const ios_base::fmtflags mask + const std::ios_base::fmtflags f, + const std::ios_base::fmtflags mask ) { return flags((flags() & ~mask) | (f & mask)); } //- Unset flags of stream - void unsetf(const ios_base::fmtflags f) + void unsetf(std::ios_base::fmtflags f) { flags(flags() & ~f); } @@ -468,6 +480,41 @@ inline IOstream& scientific(IOstream& io) namespace Detail { +/*---------------------------------------------------------------------------*\ + Class Detail::StreamAllocator Declaration +\*---------------------------------------------------------------------------*/ + +//- A wrapper to hold a std::stream type for OpenFOAM wrapped streams. +//- This is necessary since the OpenFOAM streams hold a reference to +//- the normal std::stream +template<class StreamType> +class StreamAllocator +{ +protected: + + // Protected Data + + //- The std::stream + StreamType stream_; + + + // Constructors + + //- Default construct (empty) + StreamAllocator() = default; +}; + + +} // End namespace Detail + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Functions/Algorithms + +namespace Detail +{ + //- Termination for input looping (no-op) template<class IS> inline void inputLoop(IS&) {} diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/IPBstreams.C b/src/OpenFOAM/db/IOstreams/Pstreams/IPBstreams.C index a43f73116e4bebd5f8f47a74dd9f10edf12f85d7..54b1305f27ed6d378682f44c0de1aec9280e0cb4 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/IPBstreams.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/IPBstreams.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,7 +34,7 @@ License Foam::UIPBstream::UIPBstream ( const UPstream::commsTypes commsType, - const int fromProcNo, + const int rootProcNo, DynamicList<char>& receiveBuf, label& receiveBufPosition, const int tag, @@ -45,11 +45,11 @@ Foam::UIPBstream::UIPBstream : UIPstreamBase ( - commsType, - fromProcNo, + commsType, // irrelevant + rootProcNo, // normally UPstream::masterNo() receiveBuf, receiveBufPosition, - tag, + tag, // irrelevant comm, clearAtEnd, fmt @@ -62,7 +62,7 @@ Foam::UIPBstream::UIPBstream Foam::IPBstream::IPBstream ( const UPstream::commsTypes commsType, - const int fromProcNo, + const int rootProcNo, const label bufSize, const int tag, const label comm, @@ -72,11 +72,11 @@ Foam::IPBstream::IPBstream Pstream(commsType, bufSize), UIPBstream ( - commsType, - fromProcNo, + commsType, // irrelevant + rootProcNo, // normally UPstream::masterNo() Pstream::transferBuf_, UIPstreamBase::storedRecvBufPos_, // Internal only - tag, + tag, // irrelevant comm, false, // Do not clear Pstream::transferBuf_ if at end fmt @@ -86,7 +86,7 @@ Foam::IPBstream::IPBstream Foam::IPBstream::IPBstream ( - const int fromProcNo, + const int rootProcNo, const label comm, IOstreamOption::streamFormat fmt ) @@ -94,7 +94,25 @@ Foam::IPBstream::IPBstream IPBstream ( UPstream::commsTypes::scheduled, // irrelevant - fromProcNo, + rootProcNo, + label(0), // bufSize + UPstream::msgType(), // irrelevant + comm, + fmt + ) +{} + + +Foam::IPBstream::IPBstream +( + const label comm, + IOstreamOption::streamFormat fmt +) +: + IPBstream + ( + UPstream::commsTypes::scheduled, // irrelevant + UPstream::masterNo(), // rootProcNo label(0), // bufSize UPstream::msgType(), // irrelevant comm, diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/IPstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/IPstream.H index 5dda9b6e6eb7cd3793aaf0632b18668460c53c25..e1304da88512322a2b7c3a1c5d150a4fc04445a8 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/IPstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/IPstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,6 +71,33 @@ public: const label comm = UPstream::worldComm, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + + + // Static Functions + + //- Receive and deserialize a value. + //- Uses \c operator>> for de-serialization + template<class Type> + static void recv + ( + Type& value, + const int fromProcNo, + const int tag = UPstream::msgType(), + const label comm = UPstream::worldComm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + { + IPstream is + ( + UPstream::commsTypes::scheduled, // ie, MPI_Recv() + fromProcNo, + 0, // bufSize + tag, + comm, + fmt + ); + is >> value; + } }; @@ -100,14 +127,40 @@ public: IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); - //- Construct for broadcast root with optional communicator, - //- write format - explicit IPBstream + //- Construct for broadcast root and communicator, + //- with optional read format + IPBstream ( const int rootProcNo, //!< normally UPstream::masterNo() + const label comm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ); + + //- Construct with optional communicator and read format. + //- Uses UPstream::masterNo() root + explicit IPBstream + ( const label comm = UPstream::worldComm, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + + + // Static Functions + + //- Receive (from broadcast, root == UPstream::masterNo()) + //- and deserialize a value. + //- Uses \c operator>> for de-serialization + template<class Type> + static void recv + ( + Type& value, + const label comm = UPstream::worldComm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + { + IPBstream is(comm, fmt); + is >> value; + } }; diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/IPstreams.C b/src/OpenFOAM/db/IOstreams/Pstreams/IPstreams.C index d82a270238cd7804aa61ff2ca535a4f1fc59d49e..340f0a2f990813172778ad811721fc72e35fce46 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/IPstreams.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/IPstreams.C @@ -77,7 +77,7 @@ Foam::UIPstream::UIPstream(const int fromProcNo, PstreamBuffers& buffers) if (debug) { - Pout<< "UIPstream::UIPstream PstreamBuffers :" + Perr<< "UIPstream::UIPstream PstreamBuffers :" << " fromProcNo:" << fromProcNo_ << " tag:" << tag_ << " comm:" << comm_ << " receive buffer size:" << messageSize_ diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/OPBstreams.C b/src/OpenFOAM/db/IOstreams/Pstreams/OPBstreams.C index 487cdf6716cccd00dbe655082ab2ccc4da897b25..b68dc927a709dee58c924768adeb6291482be183 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/OPBstreams.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/OPBstreams.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,7 +34,7 @@ License Foam::UOPBstream::UOPBstream ( const UPstream::commsTypes commsType, - const int toProcNo, + const int rootProcNo, DynamicList<char>& sendBuf, const int tag, const label comm, @@ -42,14 +42,23 @@ Foam::UOPBstream::UOPBstream IOstreamOption::streamFormat fmt ) : - UOPstreamBase(commsType, toProcNo, sendBuf, tag, comm, sendAtDestruct, fmt) + UOPstreamBase + ( + commsType, // irrelevant + rootProcNo, // normally UPstream::masterNo() + sendBuf, + tag, // irrelevant + comm, + sendAtDestruct, + fmt + ) {} Foam::OPBstream::OPBstream ( const UPstream::commsTypes commsType, - const int toProcNo, + const int rootProcNo, const label bufSize, const int tag, const label comm, @@ -59,10 +68,10 @@ Foam::OPBstream::OPBstream Pstream(commsType, bufSize), UOPBstream ( - commsType, - toProcNo, + commsType, // irrelevant + rootProcNo, // normally UPstream::masterNo() Pstream::transferBuf_, - tag, + tag, // irrelevant comm, true, // sendAtDestruct fmt @@ -72,7 +81,25 @@ Foam::OPBstream::OPBstream Foam::OPBstream::OPBstream ( - const int toProcNo, + const int rootProcNo, + const label comm, + IOstreamOption::streamFormat fmt +) +: + OPBstream + ( + UPstream::commsTypes::scheduled, // irrelevant + rootProcNo, + label(0), // bufSize + UPstream::msgType(), // irrelevant + comm, + fmt + ) +{} + + +Foam::OPBstream::OPBstream +( const label comm, IOstreamOption::streamFormat fmt ) @@ -80,7 +107,7 @@ Foam::OPBstream::OPBstream OPBstream ( UPstream::commsTypes::scheduled, // irrelevant - toProcNo, + UPstream::masterNo(), // rootProcNo label(0), // bufSize UPstream::msgType(), // irrelevant comm, diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/OPstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/OPstream.H index 154ed87d3188c62b635fefefa4589d18d45306c5..1b4414a4604a4e366726ab2397f5c0ee2e8469b0 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/OPstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/OPstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,6 +71,50 @@ public: const label comm = UPstream::worldComm, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + + + // Static Functions + + //- Serialize a value and send (buffered/blocking or standard mode). + //- Uses \c operator<< for serialization + template<class Type> + static void send + ( + const Type& value, + //! blocking or scheduled only! + const UPstream::commsTypes commsType, + const int toProcNo, + const int tag = UPstream::msgType(), + const label comm = UPstream::worldComm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + { + OPstream os(commsType, toProcNo, 0, tag, comm, fmt); + os << value; + } + + //- Serialize a value and send (standard mode). + //- Uses \c operator<< for serialization + template<class Type> + static void send + ( + const Type& value, + const int toProcNo, + const int tag = UPstream::msgType(), + const label comm = UPstream::worldComm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + { + OPstream::send + ( + value, + UPstream::commsTypes::scheduled, // ie, MPI_Send() + toProcNo, + tag, + comm, + fmt + ); + } }; @@ -100,14 +144,39 @@ public: IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); - //- Construct for broadcast root with optional communicator, - //- write format - explicit OPBstream + //- Construct for broadcast root and communicator, + //- with optional write format + OPBstream ( const int rootProcNo, //!< normally UPstream::masterNo() + const label comm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ); + + //- Construct with optional communicator and write format. + //- Uses UPstream::masterNo() root + explicit OPBstream + ( const label comm = UPstream::worldComm, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + + + // Static Functions + + //- Serialize a value and broadcast (root == UPstream::masterNo()). + //- Uses \c operator<< for serialization + template<class Type> + static void send + ( + const Type& value, + const label comm = UPstream::worldComm, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + { + OPBstream os(comm, fmt); + os << value; + } }; diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/OPstreams.C b/src/OpenFOAM/db/IOstreams/Pstreams/OPstreams.C index fa913a868c693e28d74f34ed5da1a69d71babcde..fc8312f674923b47a0b6fcccd4ec742eb46585b7 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/OPstreams.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/OPstreams.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,12 +86,27 @@ Foam::OPstream::OPstream {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::UOPstream::send() +{ + sendAtDestruct_ = false; + return bufferIPCsend(); +} + + // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::UOPstream::~UOPstream() { if (sendAtDestruct_) { + // Note: sendAtDestruct_ and nonBlocking is a questionable combination + // since the transfer buffer will be destroyed before + // the non-blocking send completes! + // + // Could flag as an error, but not actually used anywhere. + if (!bufferIPCsend()) { FatalErrorInFunction diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/Pstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/Pstream.H index dbcfe69c56d8614ebd17fe06cea35e614e977050..04e3009503767a627469eb0ad385daa40cb11942 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/Pstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/Pstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -47,9 +47,6 @@ SourceFiles #include "UPstream.H" #include "DynamicList.H" -// Legacy -// #define Foam_Pstream_scatter_nobroadcast - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -130,22 +127,9 @@ public: // Gather - //- Gather (reduce) data, appyling \c bop to combine \c value - //- from different processors. The basis for Foam::reduce(). - // Uses the specified communication schedule. - template<class T, class BinaryOp> - static void gather - ( - const List<commsStruct>& comms, - T& value, - const BinaryOp& bop, - const int tag, - const label comm - ); - //- Gather (reduce) data, applying \c bop to combine \c value //- from different processors. The basis for Foam::reduce(). - // Uses linear/tree communication. + // Uses linear/tree communication (with parallel guard). template<class T, class BinaryOp> static void gather ( @@ -155,46 +139,46 @@ public: const label comm = UPstream::worldComm ); - - // Gather/combine data - // Inplace combine values from processors. - // (Uses construct from Istream instead of <<) - - //- Gather data, applying \c cop to inplace combine \c value - //- from different processors. - // Uses the specified communication schedule. - template<class T, class CombineOp> - static void combineGather + //- Gather individual values into list locations. + // On master list length == nProcs, otherwise zero length. + // \n + // For \b non-parallel : + // the returned list length is 1 with localValue. + template<class T> + static List<T> listGatherValues ( - const List<commsStruct>& comms, - T& value, - const CombineOp& cop, - const int tag, - const label comm + const T& localValue, + const label comm = UPstream::worldComm, + //! Only used for non-contiguous types + const int tag = UPstream::msgType() ); - //- Gather data, applying \c cop to inplace combine \c value - //- from different processors. - // Uses linear/tree communication. - template<class T, class CombineOp> - static void combineGather + //- Scatter individual values from list locations. + // On master input list length == nProcs, ignored on other procs. + // \n + // For \b non-parallel : + // returns the first list element (or default initialized). + template<class T> + static T listScatterValues ( - T& value, - const CombineOp& cop, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm + const UList<T>& allValues, + const label comm = UPstream::worldComm, + //! Only used for non-contiguous types + const int tag = UPstream::msgType() ); - //- Reduce inplace (cf. MPI Allreduce) - //- applying \c cop to inplace combine \c value + + // Gather/combine data + // Inplace combine values from processors. + // (Uses construct from Istream instead of \c << operator) + + //- Gather data, applying \c cop to inplace combine \c value //- from different processors. - //- After completion all processors have the same data. - // Uses the specified communication schedule. - // Wraps combineGather/broadcast (may change in the future). + // Uses linear/tree communication (with parallel guard). template<class T, class CombineOp> - static void combineReduce + static void combineGather ( - const List<commsStruct>& comms, + //! [in,out] T& value, const CombineOp& cop, const int tag = UPstream::msgType(), @@ -210,6 +194,7 @@ public: template<class T, class CombineOp> static void combineReduce ( + //! [in,out] T& value, const CombineOp& cop, const int tag = UPstream::msgType(), @@ -232,30 +217,25 @@ public: // Combine variants working on whole List at a time. + //- Combines List elements. + // Uses linear/tree communication (with parallel guard). template<class T, class CombineOp> static void listCombineGather ( - const List<commsStruct>& comms, - List<T>& values, - const CombineOp& cop, - const int tag, - const label comm - ); - - //- Like above but switches between linear/tree communication - template<class T, class CombineOp> - static void listCombineGather - ( - List<T>& values, + //! [in,out] + UList<T>& values, const CombineOp& cop, const int tag = UPstream::msgType(), const label comm = UPstream::worldComm ); + //- Combines List elements. //- After completion all processors have the same data. + // Uses linear/tree communication (with parallel guard). template<class T, class CombineOp> static void listCombineReduce ( + //! [in,out] - List (not UList) due to broadcast() List<T>& values, const CombineOp& cop, const int tag = UPstream::msgType(), @@ -266,6 +246,7 @@ public: template<class T, class CombineOp> static void listCombineAllGather ( + //! [in,out] - List (not UList) due to broadcast() List<T>& values, const CombineOp& cop, const int tag = UPstream::msgType(), @@ -279,17 +260,8 @@ public: // Combine variants working on whole map at a time. // Container needs iterators, find() and insert methods defined. - template<class Container, class CombineOp> - static void mapCombineGather - ( - const List<commsStruct>& comms, - Container& values, - const CombineOp& cop, - const int tag, - const label comm - ); - - //- Like above but switches between linear/tree communication + //- Combine Map elements. + // Uses linear/tree communication (with parallel guard). template<class Container, class CombineOp> static void mapCombineGather ( @@ -338,8 +310,9 @@ public: template<class T> static void gatherList ( - const List<commsStruct>& comms, - List<T>& values, + const UList<commsStruct>& comms, + //! [in,out] + UList<T>& values, const int tag, const label comm ); @@ -349,133 +322,48 @@ public: template<class T> static void gatherList ( - List<T>& values, + //! [in,out] + UList<T>& values, const int tag = UPstream::msgType(), const label comm = UPstream::worldComm ); //- Gather data, but keep individual values separate. - //- Uses linear/tree communication. + //- Uses MPI_Allgather or manual linear/tree communication. // After completion all processors have the same data. // Wraps gatherList/scatterList (may change in the future). template<class T> static void allGatherList ( - List<T>& values, + //! [in,out] + UList<T>& values, const int tag = UPstream::msgType(), const label comm = UPstream::worldComm ); - // Scatter - - //- Broadcast data: Distribute without modification. - // \note comms and tag parameters only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void scatter - ( - const List<commsStruct>& comms, - T& value, - const int tag, - const label comm - ); - - //- Broadcast data: Distribute without modification. - // \note tag parameter only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void scatter - ( - T& value, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm - ); - - //- Broadcast data: Distribute without modification. - // \note tag parameter only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void combineScatter - ( - const List<commsStruct>& comms, - T& value, - const int tag, - const label comm - ); - - //- Broadcast data: Distribute without modification. - // \note tag parameter only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void combineScatter - ( - T& value, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm - ); - - //- Broadcast data: Distribute without modification. - // \note comms and tag parameters only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void listCombineScatter - ( - const List<commsStruct>& comms, - List<T>& value, - const int tag, - const label comm - ); - - //- Broadcast data: Distribute without modification. - // \note comms and tag parameters only used when - // Foam_Pstream_scatter_nobroadcast is defined - template<class T> - static void listCombineScatter - ( - List<T>& value, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm - ); - - //- Broadcast data: Distribute without modification. - template<class Container> - static void mapCombineScatter - ( - const List<commsStruct>& comms, - Container& values, - const int tag, - const label comm - ); - - //- Like above but switches between linear/tree communication - template<class Container> - static void mapCombineScatter - ( - Container& values, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm - ); - - - //- Scatter data. Reverse of gatherList - template<class T> - static void scatterList - ( - const List<commsStruct>& comms, - List<T>& values, - const int tag, - const label comm - ); - - //- Like above but switches between linear/tree communication - template<class T> - static void scatterList - ( - List<T>& values, - const int tag = UPstream::msgType(), - const label comm = UPstream::worldComm - ); + // Scatter + + //- Inverse of gatherList. + //- Uses the specified communication schedule. + template<class T> + static void scatterList + ( + const UList<commsStruct>& comms, + UList<T>& values, + const int tag, + const label comm + ); + + //- Inverse of gatherList. + //- Uses linear/tree communication. + template<class T> + static void scatterList + ( + UList<T>& values, + const int tag = UPstream::msgType(), + const label comm = UPstream::worldComm + ); // Exchange @@ -654,6 +542,61 @@ public: const label comm, const bool wait = true //!< (ignored) ); + + + // Housekeeping + + //- \deprecated(2024-01) Broadcast data + template<class T> + FOAM_DEPRECATED_FOR(2024-01, "Pstream::broadcast()") + static void scatter + ( + T& value, + const int tag = UPstream::msgType(), //!< ignored + const label comm = UPstream::worldComm + ) + { + Pstream::broadcast(value, comm); + } + + //- \deprecated(2024-01) Broadcast data + template<class T> + FOAM_DEPRECATED_FOR(2024-01, "Pstream::broadcast()") + static void combineScatter + ( + T& value, + const int tag = UPstream::msgType(), //!< ignored + const label comm = UPstream::worldComm + ) + { + Pstream::broadcast(value, comm); + } + + //- \deprecated(2024-01) Broadcast data + template<class T> + FOAM_DEPRECATED_FOR(2024-01, "Pstream::broadcast()") + static void listCombineScatter + ( + List<T>& value, + const int tag = UPstream::msgType(), //!< ignored + const label comm = UPstream::worldComm + ) + { + Pstream::broadcast(value, comm); + } + + //- \deprecated(2024-01) Broadcast data + template<class Container> + FOAM_DEPRECATED_FOR(2024-01, "Pstream::broadcast()") + static void mapCombineScatter + ( + Container& values, + const int tag = UPstream::msgType(), //!< ignored + const label comm = UPstream::worldComm + ) + { + Pstream::broadcast(values, comm); + } }; diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBroadcast.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBroadcast.C index 1f39cca6931c0068645d519a85ee96ac8447ff94..b41fafee10db47c66c2a5ea3f4f34cfb76aa86a5 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBroadcast.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBroadcast.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,20 +41,19 @@ void Foam::Pstream::broadcast(Type& value, const label comm) ( reinterpret_cast<char*>(&value), sizeof(Type), - comm, - UPstream::masterNo() + comm ); } else if (UPstream::is_parallel(comm)) { if (UPstream::master(comm)) { - OPBstream os(UPstream::masterNo(), comm); + OPBstream os(comm); os << value; } else // UPstream::is_subrank(comm) { - IPBstream is(UPstream::masterNo(), comm); + IPBstream is(comm); is >> value; } } @@ -68,12 +67,12 @@ void Foam::Pstream::broadcasts(const label comm, Type& arg1, Args&&... args) { if (UPstream::master(comm)) { - OPBstream os(UPstream::masterNo(), comm); + OPBstream os(comm); Detail::outputLoop(os, arg1, std::forward<Args>(args)...); } else // UPstream::is_subrank(comm) { - IPBstream is(UPstream::masterNo(), comm); + IPBstream is(comm); Detail::inputLoop(is, arg1, std::forward<Args>(args)...); } } @@ -98,8 +97,7 @@ void Foam::Pstream::broadcastList(ListType& list, const label comm) ( reinterpret_cast<char*>(&len), sizeof(label), - comm, - UPstream::masterNo() + comm ); if (UPstream::is_subrank(comm)) @@ -113,8 +111,7 @@ void Foam::Pstream::broadcastList(ListType& list, const label comm) ( list.data_bytes(), list.size_bytes(), - comm, - UPstream::masterNo() + comm ); } } @@ -125,16 +122,44 @@ void Foam::Pstream::broadcastList(ListType& list, const label comm) if (UPstream::master(comm)) { - OPBstream os(UPstream::masterNo(), comm); + OPBstream os(comm); os << list; } else // UPstream::is_subrank(comm) { - IPBstream is(UPstream::masterNo(), comm); + IPBstream is(comm); is >> list; } } } +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Convenience wrappers - defined after all specialisations are known + +namespace Foam +{ + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//- Return a broadcasted value (uses a copy internally) +template<class Type> +Type returnBroadcast +( + const Type& value, + const label comm = UPstream::worldComm +) +{ + Type work(value); + Pstream::broadcast(work, comm); + return work; +} + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + + // ************************************************************************* // diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.C index 1949e7904c1495d855e1ff969a6d649d1129494d..37459b1abdaa3a3572073cbf87f7e252f4a89f11 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.C @@ -563,7 +563,7 @@ Foam::label Foam::PstreamBuffers::maxNonLocalRecvCount if (excludeProci != proci) { label len(recvBuffers_[proci].size() - recvPositions_[proci]); - maxLen = max(maxLen, len); + maxLen = Foam::max(maxLen, len); } } } diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.H b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.H index e61bf65e904cc4f1384692faf582cb679685b9c9..ed40029c9329aef3002343c72f62477bc3adc218 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamBuffers.H @@ -32,13 +32,13 @@ Description Use UOPstream to stream data into buffers, call finishedSends() to notify that data is in buffers and then use IUPstream to get data out - of received buffers. Works with both blocking and non-blocking. Does + of received buffers. Works with both buffered and non-blocking. Does not make much sense with scheduled since there you would not need these explicit buffers. Example usage: \code - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; for (const int proci : UPstream::allProcs()) { @@ -51,7 +51,7 @@ Description } } - pBufs.finishedSends(); // no-op for blocking + pBufs.finishedSends(); // no-op for buffered for (const int proci : UPstream::allProcs()) { @@ -68,7 +68,7 @@ Description one-to-all and all-to-one communication patterns. For example, \code - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; if (UPstream::master()) { @@ -96,7 +96,7 @@ Description For example, \code - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; pBufs.initRegisterSend(); diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamCombineGather.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamCombineGather.C index 41d427635b6b127699a9abe4559f54784d2a1e57..4e37481e56b197eb65137b7ac98feaceadc514b2 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamCombineGather.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamCombineGather.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -25,7 +25,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Description - Variant of gather, scatter. + Variant of gather. Normal gather uses: - default construct and read (>>) from Istream - binary operator and assignment operator to combine values @@ -36,8 +36,8 @@ Description \*---------------------------------------------------------------------------*/ -#include "OPstream.H" #include "IPstream.H" +#include "OPstream.H" #include "IOstreams.H" #include "contiguous.H" @@ -46,7 +46,6 @@ Description template<class T, class CombineOp> void Foam::Pstream::combineGather ( - const List<UPstream::commsStruct>& comms, T& value, const CombineOp& cop, const int tag, @@ -55,8 +54,10 @@ void Foam::Pstream::combineGather { if (UPstream::is_parallel(comm)) { - // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + // Communication order + const auto& comms = UPstream::whichCommunication(comm); + // if (comms.empty()) return; // extra safety? + const auto& myComm = comms[UPstream::myProcNo(comm)]; // Receive from my downstairs neighbours for (const label belowID : myComm.below()) @@ -77,7 +78,7 @@ void Foam::Pstream::combineGather if (debug & 2) { - Pout<< " received from " + Perr<< " received from " << belowID << " data:" << received << endl; } @@ -89,7 +90,7 @@ void Foam::Pstream::combineGather ( UPstream::commsTypes::scheduled, belowID, - 0, + 0, // bufsize tag, comm ); @@ -97,7 +98,7 @@ void Foam::Pstream::combineGather if (debug & 2) { - Pout<< " received from " + Perr<< " received from " << belowID << " data:" << received << endl; } @@ -106,11 +107,11 @@ void Foam::Pstream::combineGather } // Send up value - if (myComm.above() != -1) + if (myComm.above() >= 0) { if (debug & 2) { - Pout<< " sending to " << myComm.above() + Perr<< " sending to " << myComm.above() << " data:" << value << endl; } @@ -128,159 +129,13 @@ void Foam::Pstream::combineGather } else { - OPstream toAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - toAbove << value; + OPstream::send(value, myComm.above(), tag, comm); } } } } -template<class T> -void Foam::Pstream::combineScatter -( - const List<UPstream::commsStruct>& comms, - T& value, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(value, comm); - #else - if (UPstream::is_parallel(comm)) - { - // My communication order - const UPstream::commsStruct& myComm = comms[UPstream::myProcNo(comm)]; - - // Receive from up - if (myComm.above() != -1) - { - if (is_contiguous<T>::value) - { - UIPstream::read - ( - UPstream::commsTypes::scheduled, - myComm.above(), - reinterpret_cast<char*>(&value), - sizeof(T), - tag, - comm - ); - } - else - { - IPstream fromAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - value = T(fromAbove); - } - } - - // Send to my downstairs neighbours - forAllReverse(myComm.below(), belowI) - { - const label belowID = myComm.below()[belowI]; - - if (is_contiguous<T>::value) - { - UOPstream::write - ( - UPstream::commsTypes::scheduled, - belowID, - reinterpret_cast<const char*>(&value), - sizeof(T), - tag, - comm - ); - } - else - { - OPstream toBelow - ( - UPstream::commsTypes::scheduled, - belowID, - 0, - tag, - comm - ); - toBelow << value; - } - } - } - #endif -} - - -template<class T, class CombineOp> -void Foam::Pstream::combineGather -( - T& value, - const CombineOp& cop, - const int tag, - const label comm -) -{ - Pstream::combineGather - ( - UPstream::whichCommunication(comm), - value, - cop, - tag, - comm - ); -} - - -template<class T> -void Foam::Pstream::combineScatter -( - T& value, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(value, comm); - #else - Pstream::combineScatter - ( - UPstream::whichCommunication(comm), - value, - tag, - comm - ); - #endif -} - - -template<class T, class CombineOp> -void Foam::Pstream::combineReduce -( - const List<UPstream::commsStruct>& comms, - T& value, - const CombineOp& cop, - const int tag, - const label comm -) -{ - Pstream::combineGather(comms, value, cop, tag, comm); - Pstream::broadcast(value, comm); -} - - template<class T, class CombineOp> void Foam::Pstream::combineReduce ( @@ -292,9 +147,7 @@ void Foam::Pstream::combineReduce { if (UPstream::is_parallel(comm)) { - const auto& comms = UPstream::whichCommunication(comm); - - Pstream::combineGather(comms, value, cop, tag, comm); + Pstream::combineGather(value, cop, tag, comm); Pstream::broadcast(value, comm); } } @@ -305,8 +158,7 @@ void Foam::Pstream::combineReduce template<class T, class CombineOp> void Foam::Pstream::listCombineGather ( - const List<UPstream::commsStruct>& comms, - List<T>& values, + UList<T>& values, const CombineOp& cop, const int tag, const label comm @@ -314,8 +166,10 @@ void Foam::Pstream::listCombineGather { if (UPstream::is_parallel(comm)) { - // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + // Communication order + const auto& comms = UPstream::whichCommunication(comm); + // if (comms.empty()) return; // extra safety? + const auto& myComm = comms[UPstream::myProcNo(comm)]; // Receive from my downstairs neighbours for (const label belowID : myComm.below()) @@ -336,7 +190,7 @@ void Foam::Pstream::listCombineGather if (debug & 2) { - Pout<< " received from " + Perr<< " received from " << belowID << " data:" << received << endl; } @@ -351,7 +205,7 @@ void Foam::Pstream::listCombineGather ( UPstream::commsTypes::scheduled, belowID, - 0, + 0, // bufsize tag, comm ); @@ -359,7 +213,7 @@ void Foam::Pstream::listCombineGather if (debug & 2) { - Pout<< " received from " + Perr<< " received from " << belowID << " data:" << received << endl; } @@ -371,11 +225,11 @@ void Foam::Pstream::listCombineGather } // Send up values - if (myComm.above() != -1) + if (myComm.above() >= 0) { if (debug & 2) { - Pout<< " sending to " << myComm.above() + Perr<< " sending to " << myComm.above() << " data:" << values << endl; } @@ -393,141 +247,10 @@ void Foam::Pstream::listCombineGather } else { - OPstream toAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - toAbove << values; - } - } - } -} - - -template<class T> -void Foam::Pstream::listCombineScatter -( - const List<UPstream::commsStruct>& comms, - List<T>& values, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(values, comm); - #else - if (UPstream::is_parallel(comm)) - { - // My communication order - const UPstream::commsStruct& myComm = comms[UPstream::myProcNo(comm)]; - - // Receive from up - if (myComm.above() != -1) - { - if (is_contiguous<T>::value) - { - UIPstream::read - ( - UPstream::commsTypes::scheduled, - myComm.above(), - values.data_bytes(), - values.size_bytes(), - tag, - comm - ); - } - else - { - IPstream fromAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - fromAbove >> values; - } - } - - // Send to my downstairs neighbours - forAllReverse(myComm.below(), belowI) - { - const label belowID = myComm.below()[belowI]; - - if (is_contiguous<T>::value) - { - UOPstream::write - ( - UPstream::commsTypes::scheduled, - belowID, - values.cdata_bytes(), - values.size_bytes(), - tag, - comm - ); - } - else - { - OPstream toBelow - ( - UPstream::commsTypes::scheduled, - belowID, - 0, - tag, - comm - ); - toBelow << values; + OPstream::send(values, myComm.above(), tag, comm); } } } - #endif -} - - -template<class T, class CombineOp> -void Foam::Pstream::listCombineGather -( - List<T>& values, - const CombineOp& cop, - const int tag, - const label comm -) -{ - Pstream::listCombineGather - ( - UPstream::whichCommunication(comm), - values, - cop, - tag, - comm - ); -} - - -template<class T> -void Foam::Pstream::listCombineScatter -( - List<T>& values, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(values, comm); - #else - Pstream::listCombineScatter - ( - UPstream::whichCommunication(comm), - values, - tag, - comm - ); - #endif } @@ -542,9 +265,7 @@ void Foam::Pstream::listCombineReduce { if (UPstream::is_parallel(comm)) { - const auto& comms = UPstream::whichCommunication(comm); - - Pstream::listCombineGather(comms, values, cop, tag, comm); + Pstream::listCombineGather(values, cop, tag, comm); Pstream::broadcast(values, comm); } } @@ -555,7 +276,6 @@ void Foam::Pstream::listCombineReduce template<class Container, class CombineOp> void Foam::Pstream::mapCombineGather ( - const List<UPstream::commsStruct>& comms, Container& values, const CombineOp& cop, const int tag, @@ -564,8 +284,10 @@ void Foam::Pstream::mapCombineGather { if (UPstream::is_parallel(comm)) { - // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + // Communication order + const auto& comms = UPstream::whichCommunication(comm); + // if (comms.empty()) return; // extra safety? + const auto& myComm = comms[UPstream::myProcNo(comm)]; // Receive from my downstairs neighbours for (const label belowID : myComm.below()) @@ -576,7 +298,7 @@ void Foam::Pstream::mapCombineGather ( UPstream::commsTypes::scheduled, belowID, - 0, + 0, // bufsize tag, comm ); @@ -584,7 +306,7 @@ void Foam::Pstream::mapCombineGather if (debug & 2) { - Pout<< " received from " + Perr<< " received from " << belowID << " data:" << received << endl; } @@ -611,132 +333,20 @@ void Foam::Pstream::mapCombineGather } // Send up values - if (myComm.above() != -1) + if (myComm.above() >= 0) { if (debug & 2) { - Pout<< " sending to " << myComm.above() + Perr<< " sending to " << myComm.above() << " data:" << values << endl; } - OPstream toAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - toAbove << values; + OPstream::send(values, myComm.above(), tag, comm); } } } -template<class Container> -void Foam::Pstream::mapCombineScatter -( - const List<UPstream::commsStruct>& comms, - Container& values, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(values, comm); - #else - if (UPstream::is_parallel(comm)) - { - // My communication order - const UPstream::commsStruct& myComm = comms[UPstream::myProcNo(comm)]; - - // Receive from up - if (myComm.above() != -1) - { - IPstream fromAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - fromAbove >> values; - - if (debug & 2) - { - Pout<< " received from " - << myComm.above() << " data:" << values << endl; - } - } - - // Send to my downstairs neighbours - forAllReverse(myComm.below(), belowI) - { - const label belowID = myComm.below()[belowI]; - - if (debug & 2) - { - Pout<< " sending to " << belowID << " data:" << values << endl; - } - - OPstream toBelow - ( - UPstream::commsTypes::scheduled, - belowID, - 0, - tag, - comm - ); - toBelow << values; - } - } - #endif -} - - -template<class Container, class CombineOp> -void Foam::Pstream::mapCombineGather -( - Container& values, - const CombineOp& cop, - const int tag, - const label comm -) -{ - Pstream::mapCombineGather - ( - UPstream::whichCommunication(comm), - values, - cop, - tag, - comm - ); -} - - -template<class Container> -void Foam::Pstream::mapCombineScatter -( - Container& values, - const int tag, - const label comm -) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(values, comm); - #else - Pstream::mapCombineScatter - ( - UPstream::whichCommunication(comm), - values, - tag, - comm - ); - #endif -} - - template<class Container, class CombineOp> void Foam::Pstream::mapCombineReduce ( @@ -748,9 +358,7 @@ void Foam::Pstream::mapCombineReduce { if (UPstream::is_parallel(comm)) { - const auto& comms = UPstream::whichCommunication(comm); - - Pstream::mapCombineGather(comms, values, cop, tag, comm); + Pstream::mapCombineGather(values, cop, tag, comm); Pstream::broadcast(values, comm); } } diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchange.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchange.C index 034f6d3c33e82e456145026406991ae4bfa7eae6..c3f271d643f780f00d1d9a915b1b5ac8c8b4e80e 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchange.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchange.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -24,6 +24,21 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. +Note + The send/recv windows for chunk-wise transfers: + + iter data window + ---- ----------- + 0 [0, 1*chunk] + 1 [1*chunk, 2*chunk] + 2 [2*chunk, 3*chunk] + ... + + In older versions (v2312 and earlier) the number of chunks was + determined by the sender sizes and used an extra MPI_Allreduce. + However instead rely on the send/recv buffers having been consistently + sized, which avoids the additional reduction. + \*---------------------------------------------------------------------------*/ #include "Pstream.H" @@ -37,23 +52,82 @@ namespace Foam namespace PstreamDetail { -//- Setup sends and receives, each specified as [rank, span] tuple -// The serial list of tuples can be populated from other lists, from maps -// of data or subsets of lists/maps etc. +//- Number of elements corresponding to max byte transfer. +// Normal upper limit is INT_MAX since MPI sizes are limited to <int>. +template<class Type> +inline std::size_t maxTransferCount +( + const std::size_t max_bytes = std::size_t(0) +) noexcept +{ + return + ( + (max_bytes == 0) // ie, unlimited + ? (std::size_t(0)) // + : (max_bytes > std::size_t(INT_MAX)) // MPI limit is <int> + ? (std::size_t(INT_MAX) / sizeof(Type)) // + : (max_bytes > sizeof(Type)) // require an integral number + ? (max_bytes / sizeof(Type)) // + : (std::size_t(1)) // min of one element + ); +} + + +//- Upper limit on number of transfer bytes. +// Max bytes is normally INT_MAX since MPI sizes are limited to <int>. +// Negative values indicate a subtraction from INT_MAX. +inline std::size_t maxTransferBytes(const int64_t max_bytes) noexcept +{ + return + ( + (max_bytes < 0) // (numBytes fewer than INT_MAX) + ? std::size_t(INT_MAX + max_bytes) + : std::size_t(max_bytes) + ); +} + + +//- Exchange of \em contiguous data, with or without chunking. +//- Setup sends and receives, each specified as [rank, span] tuple. +// The serial list of tuples can be populated from other lists, from +// maps of data or subsets of lists/maps etc. +// +// Any waiting for requests is done outside by the caller template<class Type> -void exchangeBuf +void exchangeBuffers ( const UList<std::pair<int, stdFoam::span<const Type>>>& sends, const UList<std::pair<int, stdFoam::span<Type>>>& recvs, - const int tag, const label comm, - const bool wait + const int64_t maxComms_bytes = UPstream::maxCommsSize ) { - const label startOfRequests = UPstream::nRequests(); + typedef stdFoam::span<const Type> sendType; + typedef stdFoam::span<Type> recvType; + + // Caller already checked for parRun + + if (sends.empty() && recvs.empty()) + { + // Nothing to do + return; + } + const int myProci = UPstream::myProcNo(comm); + + // The chunk size (number of elements) corresponding to max byte transfer. + // Is zero for non-chunked exchanges. + const std::size_t chunkSize + ( + PstreamDetail::maxTransferCount<Type> + ( + PstreamDetail::maxTransferBytes(maxComms_bytes) + ) + ); + + // Set up receives // ~~~~~~~~~~~~~~~ @@ -63,8 +137,14 @@ void exchangeBuf const auto proci = slot.first; auto& payload = slot.second; - if (proci != myProci && !payload.empty()) + // No self-communication or zero-size payload + if (proci == myProci || payload.empty()) + { + continue; + } + else if (!chunkSize) { + // Dispatch without chunks UIPstream::read ( UPstream::commsTypes::nonBlocking, @@ -74,212 +154,124 @@ void exchangeBuf tag, comm ); + continue; } - } - // Set up sends - // ~~~~~~~~~~~~ + // Dispatch chunk-wise until there is nothing left + for (int iter = 0; /*true*/; ++iter) + { + // The begin/end for the data window + const std::size_t beg = (std::size_t(iter)*chunkSize); + const std::size_t end = (std::size_t(iter+1)*chunkSize); - for (const auto& slot : sends) - { - // [rank, span] - const auto proci = slot.first; - const auto& payload = slot.second; + // The message tag augmented by the iteration number + // - avoids message collisions between different chunks + const int msgTagChunk = (tag + iter); - if (proci != myProci && !payload.empty()) - { - if - ( - !UOPstream::write - ( - UPstream::commsTypes::nonBlocking, - proci, - payload.cdata_bytes(), - payload.size_bytes(), - tag, - comm - ) - ) + if (payload.size() <= beg) { - FatalErrorInFunction - << "Cannot send outgoing message to:" - << proci << " nBytes:" - << label(payload.size_bytes()) - << Foam::abort(FatalError); + // No more data windows + break; } - } - } - // Wait for all to finish - // ~~~~~~~~~~~~~~~~~~~~~~ + recvType window + ( + (end < payload.size()) + ? payload.subspan(beg, end - beg) + : payload.subspan(beg) + ); - if (wait) - { - UPstream::waitRequests(startOfRequests); + UIPstream::read + ( + UPstream::commsTypes::nonBlocking, + proci, + window.data_bytes(), + window.size_bytes(), + msgTagChunk, + comm + ); + } } -} -//- Chunked exchange of \em contiguous data. -//- Setup sends and receives, each specified as [rank, span] tuple. -// The serial list of tuples can be populated from other lists, from -// maps of data or subsets of lists/maps etc. -template<class Type> -void exchangeChunkedBuf -( - const UList<std::pair<int, stdFoam::span<const Type>>>& sends, - const UList<std::pair<int, stdFoam::span<Type>>>& recvs, - - const int tag, - const label comm, - const bool wait -) -{ - typedef std::pair<int, stdFoam::span<const Type>> sendTuple; - typedef std::pair<int, stdFoam::span<Type>> recvTuple; - - // Caller already checked for parRun and maxChunkSize > 0 + // Set up sends + // ~~~~~~~~~~~~ + for (const auto& slot : sends) { - // Determine the number of chunks to send. Note that we - // only have to look at the sending data since we are - // guaranteed that some processor's sending size is some other - // processor's receive size. Also we can ignore any local comms. - // - // We need to send chunks so the number of iterations: - // maxChunkSize iterations - // ------------ ---------- - // 0 0 - // 1..maxChunkSize 1 - // maxChunkSize+1..2*maxChunkSize 2 - // ... - - const label maxChunkSize = - ( - max - ( - static_cast<label>(1), - static_cast<label>(UPstream::maxCommsSize/sizeof(Type)) - ) - ); - - const int myProci = UPstream::myProcNo(comm); + // [rank, span] + const auto proci = slot.first; + const auto& payload = slot.second; - label nChunks(0); + // No self-communication or zero-size payload + if (proci == myProci || payload.empty()) { - // Get max send count (elements) - auto maxCount = static_cast<stdFoam::span<char>::size_type>(0); - - for (const auto& slot : sends) - { - // [rank, span] - const auto proci = slot.first; - const auto count = slot.second.size(); - - if (proci != myProci && count > maxCount) - { - // Note: using max() can be ambiguous - maxCount = count; - } - } + continue; + } + else if (!chunkSize) + { + // Dispatch without chunks + bool ok = UOPstream::write + ( + UPstream::commsTypes::nonBlocking, + proci, + payload.cdata_bytes(), + payload.size_bytes(), + tag, + comm + ); - // Convert from send count (elements) to number of chunks. - // Can normally calculate with (count-1), but add some safety - if (maxCount) + if (!ok) { - nChunks = 1 + label(maxCount/maxChunkSize); + FatalErrorInFunction + << "Failure sending message to:" << proci + << " nBytes:" << label(payload.size_bytes()) << nl + << Foam::abort(FatalError); } - - // MPI reduce (message tag is irrelevant) - reduce(nChunks, maxOp<label>(), UPstream::msgType(), comm); + continue; } - - // Dispatch the exchanges chunk-wise - List<sendTuple> sendChunks(sends); - List<recvTuple> recvChunks(recvs); - - // Dispatch - for (label iter = 0; iter < nChunks; ++iter) + // Dispatch chunk-wise until there is nothing left + for (int iter = 0; /*true*/; ++iter) { // The begin/end for the data window - const auto beg = static_cast<std::size_t>(iter*maxChunkSize); - const auto end = static_cast<std::size_t>((iter+1)*maxChunkSize); + const std::size_t beg = (std::size_t(iter)*chunkSize); + const std::size_t end = (std::size_t(iter+1)*chunkSize); - forAll(sendChunks, sloti) - { - const auto& baseline = sends[sloti].second; - auto& payload = sendChunks[sloti].second; - - // Window the data - if (beg < baseline.size()) - { - payload = - ( - (end < baseline.size()) - ? baseline.subspan(beg, end - beg) - : baseline.subspan(beg) - ); - } - else - { - payload = baseline.first(0); // zero-sized - } - } + // The message tag augmented by the iteration number + // - avoids message collisions between different chunks + const int msgTagChunk = (tag + iter); - forAll(recvChunks, sloti) + if (payload.size() <= beg) { - const auto& baseline = recvs[sloti].second; - auto& payload = recvChunks[sloti].second; - - // Window the data - if (beg < baseline.size()) - { - payload = - ( - (end < baseline.size()) - ? baseline.subspan(beg, end - beg) - : baseline.subspan(beg) - ); - } - else - { - payload = baseline.first(0); // zero-sized - } + // No more data windows + break; } + sendType window + ( + (end < payload.size()) + ? payload.subspan(beg, end - beg) + : payload.subspan(beg) + ); - // Exchange data chunks - PstreamDetail::exchangeBuf<Type> + bool ok = UOPstream::write ( - sendChunks, - recvChunks, - tag, - comm, - wait + UPstream::commsTypes::nonBlocking, + proci, + window.cdata_bytes(), + window.size_bytes(), + msgTagChunk, + comm ); - // Debugging output - can report on master only... - #if 0 // ifdef Foam_PstreamExchange_debug_chunks - do + if (!ok) { - labelList sendStarts(sends.size()); - labelList sendCounts(sends.size()); - - forAll(sendChunks, sloti) - { - const auto& baseline = sends[sloti].second; - const auto& payload = sendChunks[sloti].second; - - sendStarts[sloti] = (payload.data() - baseline.data()); - sendCounts[sloti] = (payload.size()); - } - - Info<< "iter " << iter - << ": beg=" << flatOutput(sendStarts) - << " len=" << flatOutput(sendCounts) << endl; - } while (false); - #endif + FatalErrorInFunction + << "Failure sending message to:" << proci + << " nBytes:" << label(window.size_bytes()) << nl + << Foam::abort(FatalError); + } } } } @@ -298,30 +290,99 @@ void exchangeContainer UList<Container>& recvBufs, const int tag, const label comm, - const bool wait //!< Wait for requests to complete + const bool wait, //!< Wait for requests to complete + const int64_t maxComms_bytes = UPstream::maxCommsSize ) { + typedef stdFoam::span<const Type> sendType; + typedef stdFoam::span<Type> recvType; + + // Caller already checked for parRun + + if (sendBufs.empty() && recvBufs.empty()) + { + // Nothing to do + return; + } + const label startOfRequests = UPstream::nRequests(); - const label myProci = UPstream::myProcNo(comm); + const int myProci = UPstream::myProcNo(comm); + + // The chunk size (number of elements) corresponding to max byte transfer + const std::size_t chunkSize + ( + PstreamDetail::maxTransferCount<Type> + ( + PstreamDetail::maxTransferBytes(maxComms_bytes) + ) + ); + // Set up receives // ~~~~~~~~~~~~~~~ forAll(recvBufs, proci) { - auto& recvData = recvBufs[proci]; + // [rank, span] + recvType payload + ( + recvBufs[proci].data(), + std::size_t(recvBufs[proci].size()) + ); - if (proci != myProci && !recvData.empty()) + // No self-communication or zero-size payload + if (proci == myProci || payload.empty()) { + continue; + } + else if (!chunkSize) + { + // Dispatch without chunks UIPstream::read ( UPstream::commsTypes::nonBlocking, proci, - recvData.data_bytes(), - recvData.size_bytes(), + payload.data_bytes(), + payload.size_bytes(), tag, comm ); + continue; + } + + // Dispatch chunk-wise until there is nothing left + for (int iter = 0; /*true*/; ++iter) + { + // The begin/end for the data window + const std::size_t beg = (std::size_t(iter)*chunkSize); + const std::size_t end = (std::size_t(iter+1)*chunkSize); + + // The message tag augmented by the iteration number + // - avoids message collisions between different chunks + const int msgTagChunk = (tag + iter); + + if (payload.size() <= beg) + { + // No more data windows + break; + } + + recvType window + ( + (end < payload.size()) + ? payload.subspan(beg, end - beg) + : payload.subspan(beg) + ); + + UIPstream::read + ( + UPstream::commsTypes::nonBlocking, + proci, + window.data_bytes(), + window.size_bytes(), + msgTagChunk, + comm + ); } } @@ -331,35 +392,96 @@ void exchangeContainer forAll(sendBufs, proci) { - const auto& sendData = sendBufs[proci]; + // [rank, span] + sendType payload + ( + sendBufs[proci].cdata(), + std::size_t(sendBufs[proci].size()) + ); + + // No self-communication or zero-size payload + if (proci == myProci || payload.empty()) + { + continue; + } + else if (!chunkSize) + { + // Dispatch without chunks + bool ok = UOPstream::write + ( + UPstream::commsTypes::nonBlocking, + proci, + payload.cdata_bytes(), + payload.size_bytes(), + tag, + comm + ); - if (proci != myProci && !sendData.empty()) + if (!ok) + { + FatalErrorInFunction + << "Fallure sending message to:" << proci + << " nBytes:" << label(payload.size_bytes()) << nl + << Foam::abort(FatalError); + } + continue; + } + + // Dispatch chunk-wise until there is nothing left + for (int iter = 0; /*true*/; ++iter) { - if + // The begin/end for the data window + const std::size_t beg = (std::size_t(iter)*chunkSize); + const std::size_t end = (std::size_t(iter+1)*chunkSize); + + // The message tag augmented by the iteration number + // - avoids message collisions between different chunks + const int msgTagChunk = (tag + iter); + + if (payload.size() <= beg) + { + // No more data windows + break; + } + + sendType window + ( + (end < payload.size()) + ? payload.subspan(beg, end - beg) + : payload.subspan(beg) + ); + + bool ok = UOPstream::write ( - !UOPstream::write - ( - UPstream::commsTypes::nonBlocking, - proci, - sendData.cdata_bytes(), - sendData.size_bytes(), - tag, - comm - ) - ) + UPstream::commsTypes::nonBlocking, + proci, + window.cdata_bytes(), + window.size_bytes(), + msgTagChunk, + comm + ); + + if (!ok) { FatalErrorInFunction - << "Cannot send outgoing message. " - << "to:" << proci << " nBytes:" - << label(sendData.size_bytes()) + << "Failure sending message to:" << proci + << " nBytes:" << label(window.size_bytes()) << nl << Foam::abort(FatalError); } } } + // Wait for all to finish // ~~~~~~~~~~~~~~~~~~~~~~ + if (UPstream::debug) + { + Perr<< "Pstream::exchange with " + << (UPstream::nRequests() - startOfRequests) + << " requests" << nl; + } + if (wait) { UPstream::waitRequests(startOfRequests); @@ -380,70 +502,111 @@ void exchangeContainer Map<Container>& recvBufs, const int tag, const label comm, - const bool wait //!< Wait for requests to complete + const bool wait, //!< Wait for requests to complete + const int64_t maxComms_bytes = UPstream::maxCommsSize ) { + typedef stdFoam::span<const Type> sendType; + typedef stdFoam::span<Type> recvType; + + typedef std::pair<int, sendType> sendTuple; + typedef std::pair<int, recvType> recvTuple; + const label startOfRequests = UPstream::nRequests(); const label myProci = UPstream::myProcNo(comm); - // Set up receives - // ~~~~~~~~~~~~~~~ - - forAllIters(recvBufs, iter) + // Serialize recv sequences + DynamicList<recvTuple> recvs(recvBufs.size()); { - const label proci = iter.key(); - auto& recvData = iter.val(); - - if (proci != myProci && !recvData.empty()) + forAllIters(recvBufs, iter) { - UIPstream::read + const auto proci = iter.key(); + auto& recvData = recvBufs[proci]; + + recvType payload ( - UPstream::commsTypes::nonBlocking, - proci, - recvData.data_bytes(), - recvData.size_bytes(), - tag, - comm + recvData.data(), + std::size_t(recvData.size()) ); + + // No self-communication or zero-size payload + if (proci != myProci && !payload.empty()) + { + recvs.emplace_back(proci, payload); + } } - } + std::sort + ( + recvs.begin(), + recvs.end(), + [=](const recvTuple& a, const recvTuple& b) + { + // Sorted processor order + return (a.first < b.first); - // Set up sends - // ~~~~~~~~~~~~ + // OR: // Shorter messages first + // return (a.second.size() < b.second.size()); + } + ); + } - forAllConstIters(sendBufs, iter) + // Serialize send sequences + DynamicList<sendTuple> sends(sendBufs.size()); { - const label proci = iter.key(); - const auto& sendData = iter.val(); - - if (proci != myProci && !sendData.empty()) + forAllConstIters(sendBufs, iter) { - if + const auto proci = iter.key(); + const auto& sendData = iter.val(); + + sendType payload ( - !UOPstream::write - ( - UPstream::commsTypes::nonBlocking, - proci, - sendData.cdata_bytes(), - sendData.size_bytes(), - tag, - comm - ) - ) + sendData.cdata(), + std::size_t(sendData.size()) + ); + + // No self-communication or zero-size payload + if (proci != myProci && !payload.empty()) { - FatalErrorInFunction - << "Cannot send outgoing message to:" - << proci << " nBytes:" - << label(sendData.size_bytes()) - << Foam::abort(FatalError); + sends.emplace_back(proci, payload); } } + + std::sort + ( + sends.begin(), + sends.end(), + [=](const sendTuple& a, const sendTuple& b) + { + // Sorted processor order + return (a.first < b.first); + + // OR: // Shorter messages first + // return (a.second.size() < b.second.size()); + } + ); } + // Exchange buffers in chunk-wise transfers + PstreamDetail::exchangeBuffers<Type> + ( + sends, + recvs, + tag, + comm, + maxComms_bytes + ); + // Wait for all to finish // ~~~~~~~~~~~~~~~~~~~~~~ + if (UPstream::debug) + { + Perr<< "Pstream::exchange with " + << (UPstream::nRequests() - startOfRequests) + << " requests" << nl; + } + if (wait) { UPstream::waitRequests(startOfRequests); @@ -476,17 +639,17 @@ void Foam::Pstream::exchange } const label myProci = UPstream::myProcNo(comm); - const label numProcs = UPstream::nProcs(comm); + const label numProc = UPstream::nProcs(comm); - if (sendBufs.size() != numProcs) + if (sendBufs.size() != numProc) { FatalErrorInFunction - << "Size of list " << sendBufs.size() - << " does not equal the number of processors " << numProcs + << "List size " << sendBufs.size() + << " != number of ranks " << numProc << nl << Foam::abort(FatalError); } - recvBufs.resize_nocopy(numProcs); + recvBufs.resize_nocopy(numProc); if (UPstream::is_parallel(comm)) { @@ -505,72 +668,15 @@ void Foam::Pstream::exchange } } - typedef std::pair<int, stdFoam::span<const Type>> sendTuple; - typedef std::pair<int, stdFoam::span<Type>> recvTuple; - - if (UPstream::maxCommsSize <= 0) - { - // Do the exchanging in one go - PstreamDetail::exchangeContainer<Container, Type> - ( - sendBufs, - recvBufs, - tag, - comm, - wait - ); - } - else - { - // Dispatch using chunk-wise exchanges - // Populate send sequence - DynamicList<sendTuple> sends(sendBufs.size()); - forAll(sendBufs, proci) - { - const auto& sendData = sendBufs[proci]; - - if (proci != myProci && !sendData.empty()) - { - sends.push_back - ( - sendTuple - ( - proci, - { sendData.cdata(), std::size_t(sendData.size()) } - ) - ); - } - } - - // Populate recv sequence - DynamicList<recvTuple> recvs(recvBufs.size()); - forAll(recvBufs, proci) - { - auto& recvData = recvBufs[proci]; - - if (proci != myProci && !recvData.empty()) - { - recvs.push_back - ( - recvTuple - ( - proci, - { recvData.data(), std::size_t(recvData.size()) } - ) - ); - } - } - - // Exchange buffers in chunks - PstreamDetail::exchangeChunkedBuf<Type> - ( - sends, - recvs, - tag, - comm, - wait - ); - } + PstreamDetail::exchangeContainer<Container, Type> + ( + sendBufs, + recvBufs, + tag, + comm, + wait + // (default: UPstream::maxCommsSize) + ); } // Do myself. Already checked if in communicator @@ -617,100 +723,15 @@ void Foam::Pstream::exchange } } - // Define the exchange sequences as a flattened list. - // We add an additional step of ordering the send/recv list - // by message size, which can help with transfer speeds. - - typedef std::pair<int, stdFoam::span<const Type>> sendTuple; - typedef std::pair<int, stdFoam::span<Type>> recvTuple; - - // Populate send sequences - DynamicList<sendTuple> sends(sendBufs.size()); - forAllConstIters(sendBufs, iter) - { - const auto proci = iter.key(); - const auto& sendData = iter.val(); - - if (proci != myProci && !sendData.empty()) - { - sends.push_back - ( - sendTuple - ( - proci, - { sendData.cdata(), std::size_t(sendData.size()) } - ) - ); - } - } - - // Shorter messages first - std::sort + PstreamDetail::exchangeContainer<Container, Type> ( - sends.begin(), - sends.end(), - [=](const sendTuple& a, const sendTuple& b) - { - return (a.second.size() < b.second.size()); - } + sendBufs, + recvBufs, + tag, + comm, + wait + // (default: UPstream::maxCommsSize) ); - - // Populate recv sequences - DynamicList<recvTuple> recvs(recvBufs.size()); - forAllIters(recvBufs, iter) - { - const auto proci = iter.key(); - auto& recvData = recvBufs[proci]; - - if (proci != myProci && !recvData.empty()) - { - recvs.push_back - ( - recvTuple - ( - proci, - { recvData.data(), std::size_t(recvData.size()) } - ) - ); - } - } - - // Shorter messages first - std::sort - ( - recvs.begin(), - recvs.end(), - [=](const recvTuple& a, const recvTuple& b) - { - return (a.second.size() < b.second.size()); - } - ); - - - if (UPstream::maxCommsSize <= 0) - { - // Do the exchanging in a single go - PstreamDetail::exchangeBuf<Type> - ( - sends, - recvs, - tag, - comm, - wait - ); - } - else - { - // Exchange buffers in chunks - PstreamDetail::exchangeChunkedBuf<Type> - ( - sends, - recvs, - tag, - comm, - wait - ); - } } // Do myself (if actually in the communicator) @@ -758,23 +779,23 @@ void Foam::Pstream::exchangeSizes } const label myProci = UPstream::myProcNo(comm); - const label numProcs = UPstream::nProcs(comm); + const label numProc = UPstream::nProcs(comm); - if (sendBufs.size() != numProcs) + if (sendBufs.size() != numProc) { FatalErrorInFunction - << "Size of container " << sendBufs.size() - << " does not equal the number of processors " << numProcs + << "Container size " << sendBufs.size() + << " != number of ranks " << numProc << nl << Foam::abort(FatalError); } - labelList sendSizes(numProcs); - for (label proci = 0; proci < numProcs; ++proci) + labelList sendSizes(numProc); + for (label proci = 0; proci < numProc; ++proci) { sendSizes[proci] = sendBufs[proci].size(); } - recvSizes.resize_nocopy(numProcs); + recvSizes.resize_nocopy(numProc); recvSizes = 0; // Ensure non-received entries are properly zeroed // Preserve self-send, even if not described by neighbourhood @@ -856,7 +877,6 @@ void Foam::Pstream::exchangeSizes const label comm ) { - Map<label> sendSizes(2*sendBufs.size()); recvSizes.clear(); // Done in allToAllConsensus too, but be explicit here if (!UPstream::is_rank(comm)) @@ -864,6 +884,9 @@ void Foam::Pstream::exchangeSizes return; // Process not in communicator } + Map<label> sendSizes; + sendSizes.reserve(sendBufs.size()); + forAllConstIters(sendBufs, iter) { const label proci = iter.key(); @@ -899,17 +922,17 @@ void Foam::Pstream::exchangeSizes return; // Process not in communicator } - const label numProcs = UPstream::nProcs(comm); + const label numProc = UPstream::nProcs(comm); - if (sendBufs.size() != numProcs) + if (sendBufs.size() != numProc) { FatalErrorInFunction - << "Size of container " << sendBufs.size() - << " does not equal the number of processors " << numProcs + << "Container size " << sendBufs.size() + << " != number of ranks " << numProc << nl << Foam::abort(FatalError); } - labelList sendSizes(numProcs); + labelList sendSizes(numProc); forAll(sendBufs, proci) { sendSizes[proci] = sendBufs[proci].size(); @@ -919,7 +942,7 @@ void Foam::Pstream::exchangeSizes if ( UPstream::nProcsNonblockingExchange > 1 - && UPstream::nProcsNonblockingExchange <= numProcs + && UPstream::nProcsNonblockingExchange <= numProc ) { // Use algorithm NBX: Nonblocking Consensus Exchange @@ -955,9 +978,17 @@ void Foam::Pstream::exchange // non-zero sendcounts. Post all sends and wait. labelList recvSizes; - exchangeSizes(sendBufs, recvSizes, comm); + Pstream::exchangeSizes(sendBufs, recvSizes, comm); - exchange<Container, Type>(sendBufs, recvSizes, recvBufs, tag, comm, wait); + Pstream::exchange<Container, Type> + ( + sendBufs, + recvSizes, + recvBufs, + tag, + comm, + wait + ); } @@ -975,9 +1006,17 @@ void Foam::Pstream::exchange // but using nonblocking consensus exchange for the sizes Map<label> recvSizes; - exchangeSizes(sendBufs, recvSizes, tag, comm); + Pstream::exchangeSizes(sendBufs, recvSizes, tag, comm); - exchange<Container, Type>(sendBufs, recvSizes, recvBufs, tag, comm, wait); + Pstream::exchange<Container, Type> + ( + sendBufs, + recvSizes, + recvBufs, + tag, + comm, + wait + ); } diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchangeConsensus.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchangeConsensus.C index ccc9cb6c3f734559545a4b8625fb036e3bc7c0a2..b26b1be61d176c7f70702499385c1849cd8fea00 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchangeConsensus.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamExchangeConsensus.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -82,7 +82,7 @@ void exchangeConsensus { buf.clear(); } - recvSizes = Zero; + recvSizes = Foam::zero{}; if (!UPstream::is_rank(comm)) { @@ -109,7 +109,7 @@ void exchangeConsensus recvBufs[myProci] = sendBufs[myProci]; if (myProci < recvSizes.size()) { - recvSizes[myProci] = recvBufs.size(); + recvSizes[myProci] = recvBufs[myProci].size(); } } @@ -175,7 +175,7 @@ void exchangeConsensus for (bool barrier_active = false, done = false; !done; /*nil*/) { - std::pair<int, int> probed = + std::pair<int, int64_t> probed = UPstream::probeMessage ( UPstream::commsTypes::nonBlocking, @@ -189,8 +189,8 @@ void exchangeConsensus // Message found and had size. // - receive into dest buffer location - const label proci = probed.first; - const label count = (probed.second / sizeof(Type)); + const label proci(probed.first); + const label count(probed.second / sizeof(Type)); auto& recvData = recvBufs[proci]; recvData.resize(count); // OK with resize() instead of _nocopy() @@ -202,7 +202,7 @@ void exchangeConsensus UIPstream::read ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::scheduled, // ie, MPI_Recv() proci, recvData.data_bytes(), recvData.size_bytes(), @@ -254,10 +254,10 @@ void exchangeConsensus { static_assert(is_contiguous<Type>::value, "Contiguous data only!"); - // TDB: const bool initialBarrier = (UPstream::tuning_NBX_ > 0); + const bool initialBarrier = (UPstream::tuning_NBX_ > 0); const label myProci = UPstream::myProcNo(comm); - const label numProc = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); // Initial: clear all receive locations // Preferrable to clear out the map entries instead of the map itself @@ -300,7 +300,12 @@ void exchangeConsensus // Setup sends // ------------------------------------------------------------------------ - // TDB: initialBarrier ... + // An initial barrier may help to avoid synchronisation problems + // caused elsewhere + if (initialBarrier) + { + UPstream::barrier(comm); + } // Algorithm NBX: Nonblocking consensus with Map (HashTable) containers @@ -347,7 +352,7 @@ void exchangeConsensus for (bool barrier_active = false, done = false; !done; /*nil*/) { - std::pair<int, int> probed = + std::pair<int, int64_t> probed = UPstream::probeMessage ( UPstream::commsTypes::nonBlocking, @@ -361,15 +366,15 @@ void exchangeConsensus // Message found and had size. // - receive into dest buffer location - const label proci = probed.first; - const label count = (probed.second / sizeof(Type)); + const label proci(probed.first); + const label count(probed.second / sizeof(Type)); auto& recvData = recvBufs(proci); recvData.resize(count); // OK with resize() instead of _nocopy() UIPstream::read ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::scheduled, // ie, MPI_Recv() proci, recvData.data_bytes(), recvData.size_bytes(), diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGather.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGather.C index daeb052876f00fe5ad961940cd308c612eef9779..ce2a1b34aef92da0bf11e8fecaf6cf8e60af588f 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGather.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGather.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,14 +26,14 @@ License Description Gather data from all processors onto single processor according to some - communication schedule (usually linear-to-master or tree-to-master). + communication schedule (usually tree-to-master). The gathered data will be a single value constructed from the values on individual processors using a user-specified operator. \*---------------------------------------------------------------------------*/ -#include "OPstream.H" #include "IPstream.H" +#include "OPstream.H" #include "contiguous.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -41,7 +41,6 @@ Description template<class T, class BinaryOp> void Foam::Pstream::gather ( - const List<UPstream::commsStruct>& comms, T& value, const BinaryOp& bop, const int tag, @@ -50,8 +49,10 @@ void Foam::Pstream::gather { if (UPstream::is_parallel(comm)) { - // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + // Communication order + const auto& comms = UPstream::whichCommunication(comm); + // if (comms.empty()) return; // extra safety? + const auto& myComm = comms[UPstream::myProcNo(comm)]; // Receive from my downstairs neighbours for (const label belowID : myComm.below()) @@ -72,22 +73,14 @@ void Foam::Pstream::gather } else { - IPstream fromBelow - ( - UPstream::commsTypes::scheduled, - belowID, - 0, - tag, - comm - ); - fromBelow >> received; + IPstream::recv(received, belowID, tag, comm); } value = bop(value, received); } // Send up value - if (myComm.above() != -1) + if (myComm.above() >= 0) { if (is_contiguous<T>::value) { @@ -103,15 +96,7 @@ void Foam::Pstream::gather } else { - OPstream toAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - toAbove << value; + OPstream::send(value, myComm.above(), tag, comm); } } } @@ -119,110 +104,157 @@ void Foam::Pstream::gather template<class T> -void Foam::Pstream::scatter +Foam::List<T> Foam::Pstream::listGatherValues ( - const List<UPstream::commsStruct>& comms, - T& value, - const int tag, - const label comm + const T& localValue, + const label comm, + const int tag ) { - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(value, comm); - #else + // OR + // if (is_contiguous<T>::value) + // { + // return UPstream::listGatherValues(localValue, comm); + // } + + List<T> allValues; + if (UPstream::is_parallel(comm)) { - // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + const label numProc = UPstream::nProcs(comm); - // Receive from up - if (myComm.above() != -1) + if (UPstream::master(comm)) { - if (is_contiguous<T>::value) - { - UIPstream::read - ( - UPstream::commsTypes::scheduled, - myComm.above(), - reinterpret_cast<char*>(&value), - sizeof(T), - tag, - comm - ); - } - else - { - IPstream fromAbove - ( - UPstream::commsTypes::scheduled, - myComm.above(), - 0, - tag, - comm - ); - fromAbove >> value; - } + allValues.resize(numProc); } - // Send to my downstairs neighbours. Note reverse order (compared to - // receiving). This is to make sure to send to the critical path - // (only when using a tree schedule!) first. - forAllReverse(myComm.below(), belowI) + if (is_contiguous<T>::value) { - const label belowID = myComm.below()[belowI]; - - if (is_contiguous<T>::value) + UPstream::mpiGather + ( + reinterpret_cast<const char*>(&localValue), + allValues.data_bytes(), + sizeof(T), // The send/recv size per rank + comm + ); + } + else + { + if (UPstream::master(comm)) { - UOPstream::write - ( - UPstream::commsTypes::scheduled, - belowID, - reinterpret_cast<const char*>(&value), - sizeof(T), - tag, - comm - ); + // Non-trivial to manage non-blocking gather without a + // PEX/NBX approach (eg, PstreamBuffers) but leave with + // with simple exchange for now + + allValues[0] = localValue; + + for (int proci = 1; proci < numProc; ++proci) + { + IPstream::recv(allValues[proci], proci, tag, comm); + } } - else + else if (UPstream::is_rank(comm)) { - OPstream toBelow - ( - UPstream::commsTypes::scheduled, - belowID, - 0, - tag, - comm - ); - toBelow << value; + OPstream::send(localValue, UPstream::masterNo(), tag, comm); } } } - #endif + else + { + // non-parallel: return own value + // TBD: only when UPstream::is_rank(comm) as well? + allValues.resize(1); + allValues[0] = localValue; + } + + return allValues; } -template<class T, class BinaryOp> -void Foam::Pstream::gather +template<class T> +T Foam::Pstream::listScatterValues ( - T& value, - const BinaryOp& bop, - const int tag, - const label comm + const UList<T>& allValues, + const label comm, + const int tag ) { - Pstream::gather(UPstream::whichCommunication(comm), value, bop, tag, comm); -} + // OR + // if (is_contiguous<T>::value) + // { + // return UPstream::listScatterValues(allValues, comm); + // } + T localValue{}; -template<class T> -void Foam::Pstream::scatter(T& value, const int tag, const label comm) -{ - #ifndef Foam_Pstream_scatter_nobroadcast - Pstream::broadcast(value, comm); - #else - Pstream::scatter(UPstream::whichCommunication(comm), value, tag, comm); - #endif + if (UPstream::is_parallel(comm)) + { + const label numProc = UPstream::nProcs(comm); + + if (UPstream::master(comm) && allValues.size() < numProc) + { + FatalErrorInFunction + << "Attempting to send " << allValues.size() + << " values to " << numProc << " processors" << endl + << Foam::abort(FatalError); + } + + if (is_contiguous<T>::value) + { + UPstream::mpiScatter + ( + allValues.cdata_bytes(), + reinterpret_cast<char*>(&localValue), + sizeof(T), // The send/recv size per rank + comm + ); + } + else + { + if (UPstream::master(comm)) + { + const label startOfRequests = UPstream::nRequests(); + + List<DynamicList<char>> sendBuffers(numProc); + + for (int proci = 1; proci < numProc; ++proci) + { + UOPstream toProc + ( + UPstream::commsTypes::nonBlocking, + proci, + sendBuffers[proci], + tag, + comm + ); + toProc << allValues[proci]; + } + + // Wait for outstanding requests + UPstream::waitRequests(startOfRequests); + + return allValues[0]; + } + else if (UPstream::is_rank(comm)) + { + IPstream::recv(localValue, UPstream::masterNo(), tag, comm); + } + } + } + else + { + // non-parallel: return first value + // TBD: only when UPstream::is_rank(comm) as well? + + if (!allValues.empty()) + { + return allValues[0]; + } + } + + return localValue; } + // ************************************************************************* // diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGatherList.C b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGatherList.C index e4dd9f844011ce3cee1c4dc902a5938906905b81..5b3719e96166b06c4733046545a1fcb78daecfb5 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGatherList.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamGatherList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +26,7 @@ License Description Gather data from all processors onto single processor according to some - communication schedule (usually linear-to-master or tree-to-master). + communication schedule (usually tree-to-master). The gathered data will be a list with element procID the data from processor procID. Before calling every processor should insert its value into values[UPstream::myProcNo(comm)]. @@ -45,24 +45,27 @@ Description template<class T> void Foam::Pstream::gatherList ( - const List<UPstream::commsStruct>& comms, - List<T>& values, + const UList<UPstream::commsStruct>& comms, + UList<T>& values, const int tag, const label comm ) { - if (UPstream::is_parallel(comm)) + if (!comms.empty() && UPstream::is_parallel(comm)) { - if (values.size() < UPstream::nProcs(comm)) + const label myProci = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); + + if (values.size() < numProc) { FatalErrorInFunction - << "List of values is too small:" << values.size() - << " vs numProcs:" << UPstream::nProcs(comm) << nl + << "List of values:" << values.size() + << " < numProcs:" << numProc << nl << Foam::abort(FatalError); } // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + const auto& myComm = comms[myProci]; // Receive from my downstairs neighbours for (const label belowID : myComm.below()) @@ -96,7 +99,7 @@ void Foam::Pstream::gatherList ( UPstream::commsTypes::scheduled, belowID, - 0, + 0, // bufsize tag, comm ); @@ -104,7 +107,7 @@ void Foam::Pstream::gatherList if (debug & 2) { - Pout<< " received through " + Perr<< " received through " << belowID << " data from:" << belowID << " data:" << values[belowID] << endl; } @@ -116,7 +119,7 @@ void Foam::Pstream::gatherList if (debug & 2) { - Pout<< " received through " + Perr<< " received through " << belowID << " data from:" << leafID << " data:" << values[leafID] << endl; } @@ -127,21 +130,21 @@ void Foam::Pstream::gatherList // Send up from values: // - my own value first // - all belowLeaves next - if (myComm.above() != -1) + if (myComm.above() >= 0) { const labelList& belowLeaves = myComm.allBelow(); if (debug & 2) { - Pout<< " sending to " << myComm.above() - << " data from me:" << UPstream::myProcNo(comm) - << " data:" << values[UPstream::myProcNo(comm)] << endl; + Perr<< " sending to " << myComm.above() + << " data from me:" << myProci + << " data:" << values[myProci] << endl; } if (is_contiguous<T>::value) { List<T> sending(belowLeaves.size() + 1); - sending[0] = values[UPstream::myProcNo(comm)]; + sending[0] = values[myProci]; forAll(belowLeaves, leafI) { @@ -164,17 +167,17 @@ void Foam::Pstream::gatherList ( UPstream::commsTypes::scheduled, myComm.above(), - 0, + 0, // bufsize tag, comm ); - toAbove << values[UPstream::myProcNo(comm)]; + toAbove << values[myProci]; for (const label leafID : belowLeaves) { if (debug & 2) { - Pout<< " sending to " + Perr<< " sending to " << myComm.above() << " data from:" << leafID << " data:" << values[leafID] << endl; } @@ -189,8 +192,8 @@ void Foam::Pstream::gatherList template<class T> void Foam::Pstream::scatterList ( - const List<UPstream::commsStruct>& comms, - List<T>& values, + const UList<UPstream::commsStruct>& comms, + UList<T>& values, const int tag, const label comm ) @@ -199,21 +202,24 @@ void Foam::Pstream::scatterList // between scatterList() and using broadcast(List<T>&) or a regular // scatter(List<T>&) is that processor-local data is skipped. - if (UPstream::is_parallel(comm)) + if (!comms.empty() && UPstream::is_parallel(comm)) { - if (values.size() < UPstream::nProcs(comm)) + const label myProci = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); + + if (values.size() < numProc) { FatalErrorInFunction - << "List of values is too small:" << values.size() - << " vs numProcs:" << UPstream::nProcs(comm) << nl + << "List of values:" << values.size() + << " < numProcs:" << numProc << nl << Foam::abort(FatalError); } // My communication order - const commsStruct& myComm = comms[UPstream::myProcNo(comm)]; + const auto& myComm = comms[myProci]; // Receive from up - if (myComm.above() != -1) + if (myComm.above() >= 0) { const labelList& notBelowLeaves = myComm.allNotBelow(); @@ -242,7 +248,7 @@ void Foam::Pstream::scatterList ( UPstream::commsTypes::scheduled, myComm.above(), - 0, + 0, // bufsize tag, comm ); @@ -253,7 +259,7 @@ void Foam::Pstream::scatterList if (debug & 2) { - Pout<< " received through " + Perr<< " received through " << myComm.above() << " data for:" << leafID << " data:" << values[leafID] << endl; } @@ -292,7 +298,7 @@ void Foam::Pstream::scatterList ( UPstream::commsTypes::scheduled, belowID, - 0, + 0, // bufsize tag, comm ); @@ -304,7 +310,7 @@ void Foam::Pstream::scatterList if (debug & 2) { - Pout<< " sent through " + Perr<< " sent through " << belowID << " data for:" << leafID << " data:" << values[leafID] << endl; } @@ -318,12 +324,18 @@ void Foam::Pstream::scatterList template<class T> void Foam::Pstream::gatherList ( - List<T>& values, + UList<T>& values, const int tag, const label comm ) { - Pstream::gatherList(UPstream::whichCommunication(comm), values, tag, comm); + Pstream::gatherList + ( + UPstream::whichCommunication(comm), + values, + tag, + comm + ); } @@ -331,19 +343,25 @@ void Foam::Pstream::gatherList template<class T> void Foam::Pstream::scatterList ( - List<T>& values, + UList<T>& values, const int tag, const label comm ) { - Pstream::scatterList(UPstream::whichCommunication(comm), values, tag, comm); + Pstream::scatterList + ( + UPstream::whichCommunication(comm), + values, + tag, + comm + ); } template<class T> void Foam::Pstream::allGatherList ( - List<T>& values, + UList<T>& values, const int tag, const label comm ) diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamReduceOps.H b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamReduceOps.H index 7c114a54e8746bc5da3c72fb90ee1545215463de..8bd8b474cf824afac7b4a68a2a55d14a301baec7 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/PstreamReduceOps.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/PstreamReduceOps.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,28 +46,6 @@ namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -//- Reduce inplace (cf. MPI Allreduce) -//- using specified communication schedule. -template<class T, class BinaryOp> -void reduce -( - const List<UPstream::commsStruct>& comms, - T& value, - const BinaryOp& bop, - const int tag, - const label comm -) -{ - if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) - { - Pout<< "** reducing:" << value << " with comm:" << comm << endl; - error::printStack(Pout); - } - Pstream::gather(comms, value, bop, tag, comm); - Pstream::broadcast(value, comm); -} - - //- Reduce inplace (cf. MPI Allreduce) //- using linear/tree communication schedule template<class T, class BinaryOp> @@ -81,7 +59,13 @@ void reduce { if (UPstream::is_parallel(comm)) { - Foam::reduce(UPstream::whichCommunication(comm), value, bop, tag, comm); + if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) + { + Perr<< "** reducing:" << value << " with comm:" << comm << endl; + error::printStack(Perr); + } + Pstream::gather(value, bop, tag, comm); + Pstream::broadcast(value, comm); } } @@ -436,8 +420,7 @@ Pstream_SumReduce(double); // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -// Convenience wrappers for some reduction operations -// - defined after all specialisations are known +// Convenience wrappers - defined after all specialisations are known //- Perform reduction on a copy, using specified binary operation // \return the resulting value diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UIPstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/UIPstream.H index 3e70872c34a2820ba8e44fb6e89bde3c8b8f8495..eb2deb9a87dcae6e911b360b36dabc77804d1797 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UIPstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UIPstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -96,7 +96,7 @@ protected: const int comm_; //- The message size, read on bufferIPCrecv or set directly - int messageSize_; + label messageSize_; //- Receive position in buffer data, if ony //- If there is no external location for recvBufPos_ @@ -151,16 +151,18 @@ public: // Stream State Functions - //- Return stream flags - virtual ios_base::fmtflags flags() const override + //- Return current stream flags. + //- Dummy for parallel stream, returns 0. + virtual std::ios_base::fmtflags flags() const override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } - //- Set flags of stream flags - virtual ios_base::fmtflags flags(const ios_base::fmtflags) override + //- Set stream flags, return old stream flags. + //- Dummy for parallel stream, returns 0. + virtual std::ios_base::fmtflags flags(std::ios_base::fmtflags) override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } @@ -279,8 +281,8 @@ public: // Static Functions //- Read buffer contents from given processor. - // \return the message size (bytes read) - static label read + // \return the message size (bytes read). May change in the future + static std::streamsize read ( const UPstream::commsTypes commsType, const int fromProcNo, @@ -293,8 +295,8 @@ public: ); //- Read buffer contents (non-blocking) from given processor. - // \return the message size (bytes read) - inline static label read + // \return the message size (bytes read). May change in the future + inline static std::streamsize read ( //! [out] request information UPstream::Request& req, @@ -321,7 +323,7 @@ public: // Only valid for contiguous data types. // \return the message size (bytes read). May change in the future template<class Type> - inline static label read + inline static std::streamsize read ( const UPstream::commsTypes commsType, const int fromProcNo, @@ -348,7 +350,7 @@ public: // Only valid for contiguous data types. // \return the message size (bytes read). May change in the future template<class Type> - inline static label read + inline static std::streamsize read ( const UPstream::commsTypes commsType, const int fromProcNo, @@ -375,7 +377,7 @@ public: // Only valid for contiguous data types. // \return the message size (bytes read). May change in the future template<class Type> - inline static label read + inline static std::streamsize read ( //! [out] request information UPstream::Request& req, @@ -401,7 +403,7 @@ public: // Only valid for contiguous data types. // \return the message size (bytes read). May change in the future template<class Type> - inline static label read + inline static std::streamsize read ( //! [out] request information UPstream::Request& req, @@ -474,8 +476,8 @@ public: // Static Functions //- Wrapped version of UPstream::broadcast - // \return the message size (bytes read) - static label read + // \return the message size (bytes read). May change in the future + static std::streamsize read ( const int rootProcNo, //!< normally UPstream::masterNo() char* buf, diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UIPstreamBase.C b/src/OpenFOAM/db/IOstreams/Pstreams/UIPstreamBase.C index a8d2c9e532fc389780f5b15b0b9cfe74c22a49f3..cfbb324164619f066e1bbce0faac81897c83b74f 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UIPstreamBase.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UIPstreamBase.C @@ -257,7 +257,7 @@ Foam::UIPstreamBase::~UIPstreamBase() { if (debug) { - Pout<< "UIPstreamBase Destructor : tag:" << tag_ + Perr<< "UIPstreamBase Destructor : tag:" << tag_ << " fromProcNo:" << fromProcNo_ << " clearing receive buffer of size " << recvBuf_.size() diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UOPstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/UOPstream.H index 274e8aaedb710b50952717cff2db3647484dd5de..e96a05d8754eedf7b4907dd9f12aa3529b3961b7 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UOPstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UOPstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2014 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -104,7 +104,7 @@ protected: const int comm_; //- Call bufferIPCsend on termination (in the destructor) - const bool sendAtDestruct_; + bool sendAtDestruct_; //- Reference to the send buffer data DynamicList<char>& sendBuf_; @@ -144,12 +144,20 @@ public: // Member Functions - // Inquiry + // Stream State Functions - //- Return flags of output stream - virtual ios_base::fmtflags flags() const override + //- Return current stream flags. + //- Dummy for parallel stream, returns 0. + virtual std::ios_base::fmtflags flags() const override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); + } + + //- Set stream flags, return old stream flags. + //- Dummy for parallel stream, returns 0. + virtual std::ios_base::fmtflags flags(std::ios_base::fmtflags) override + { + return std::ios_base::fmtflags(0); } @@ -281,15 +289,6 @@ public: virtual void rewind(); - // Edit - - //- Set flags of stream - virtual ios_base::fmtflags flags(const ios_base::fmtflags) override - { - return ios_base::fmtflags(0); - } - - // Print //- Print stream description to Ostream @@ -309,7 +308,7 @@ class UOPstream { // Private Member Functions - //- Final buffer send, called by destructor + //- Buffer send, usually called by destructor bool bufferIPCsend(); @@ -349,6 +348,10 @@ public: // Member Functions + //- Send buffer contents now and not in destructor [advanced usage]. + //- Returns true on success + bool send(); + //- Use all write methods from base class using UOPstreamBase::write; @@ -470,7 +473,7 @@ class UOPBstream { // Private Member Functions - //- Final buffer send, called by destructor + //- Buffer send, usually called by destructor bool bufferIPCsend(); diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UOPstreamBase.C b/src/OpenFOAM/db/IOstreams/Pstreams/UOPstreamBase.C index d969c7a08cee05f77eebebbe9a880f187ee22625..e07c5320e8f1118f9b4290a46fa455a4f7d5170d 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UOPstreamBase.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UOPstreamBase.C @@ -67,7 +67,7 @@ inline void Foam::UOPstreamBase::prepareBuffer const label pos = byteAlign(sendBuf_.size(), align); // Extend buffer (as required) - sendBuf_.reserve(max(1000, label(pos + count))); + sendBuf_.reserve(Foam::max(label(1024), label(pos + count))); // Move to the aligned output position. Fill any gap with nul char. sendBuf_.resize(pos, '\0'); @@ -115,7 +115,7 @@ inline void Foam::UOPstreamBase::putChar(const char c) { if (!sendBuf_.capacity()) { - sendBuf_.setCapacity(1000); + sendBuf_.setCapacity(1024); } sendBuf_.push_back(c); } diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.C b/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.C index 6e9fa98636f19dbf138b47fa858c0ad2e6e54cd9..c0dae071f9c2081a76b8690af6389ec518f1afc0 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.C @@ -50,9 +50,11 @@ const Foam::Enum > Foam::UPstream::commsTypeNames ({ - { commsTypes::blocking, "blocking" }, + { commsTypes::buffered, "buffered" }, // "buffered" { commsTypes::scheduled, "scheduled" }, - { commsTypes::nonBlocking, "nonBlocking" }, + { commsTypes::nonBlocking, "nonBlocking" }, // "immediate" + // compatibility names + { commsTypes::buffered, "blocking" }, }); @@ -219,7 +221,7 @@ void Foam::UPstream::setParRun(const label nProcs, const bool haveThreads) if (debug) { - Pout<< "UPstream::setParRun :" + Perr<< "UPstream::setParRun :" << " nProcs:" << nProcs << " haveThreads:" << haveThreads << endl; @@ -272,7 +274,7 @@ Foam::label Foam::UPstream::allocateCommunicator if (debug) { - Pout<< "Allocating communicator " << index << nl + Perr<< "Allocating communicator " << index << nl << " parent : " << parentIndex << nl << " procs : " << subRanks << nl << endl; @@ -333,7 +335,7 @@ Foam::label Foam::UPstream::allocateCommunicator if (debug) { - Pout<< "Allocating communicator " << index << nl + Perr<< "Allocating communicator " << index << nl << " parent : " << parentIndex << nl << " procs : " << flatOutput(subRanks) << nl << endl; @@ -490,7 +492,7 @@ bool Foam::UPstream::allocateHostCommunicatorPairs() if (debug) { - Pout<< "Allocating host communicators " + Perr<< "Allocating host communicators " << interHostComm_ << ", " << intraHostComm_ << nl << " parent : " << parentCommunicator << nl << endl; @@ -586,7 +588,7 @@ void Foam::UPstream::freeCommunicator if (debug) { - Pout<< "Communicators : Freeing communicator " << communicator + Perr<< "Communicators : Freeing communicator " << communicator << " parent: " << parentComm_[communicator] << " myProcNo: " << myProcNo_[communicator] << endl; diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.H b/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.H index 83b24683fe861ac025e80c4dbab2fce9c5b32309..089d7b6e8288b00b504320d47d59971c86aa6d0e 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.H +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UPstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,6 +56,9 @@ namespace Foam //- Implementation details for UPstream/Pstream/MPI etc. namespace PstreamDetail {} +//- Interface handling for UPstream/Pstream/MPI etc. +namespace PstreamUtils {} + /*---------------------------------------------------------------------------*\ Class UPstream Declaration \*---------------------------------------------------------------------------*/ @@ -70,15 +73,17 @@ public: //- Communications types enum class commsTypes : char { - blocking, //!< "blocking" : (MPI_Bsend, MPI_Recv) - scheduled, //!< "scheduled" : (MPI_Send, MPI_Recv) - nonBlocking //!< "nonBlocking" : (MPI_Isend, MPI_Irecv) + buffered, //!< "buffered" : (MPI_Bsend, MPI_Recv) + scheduled, //!< "scheduled" (MPI standard) : (MPI_Send, MPI_Recv) + nonBlocking, //!< "nonBlocking" (immediate) : (MPI_Isend, MPI_Irecv) + // Aliases + blocking = buffered //!< compatibility name for buffered }; //- Enumerated names for the communication types static const Enum<commsTypes> commsTypeNames; - //- Different MPI-send modes (ignored for commsTypes::blocking) + //- Different MPI-send modes (ignored for commsTypes::buffered) enum class sendModes : char { normal, //!< (MPI_Send, MPI_Isend) @@ -88,6 +93,9 @@ public: // Public Classes + //- Wrapper for MPI_Comm + class Communicator; // Forward Declaration + //- Wrapper for MPI_Request class Request; // Forward Declaration @@ -557,14 +565,14 @@ public: //- Probe for an incoming message. // - // \param commsType Blocking or not + // \param commsType Non-blocking or not // \param fromProcNo The source rank (negative == ANY_SOURCE) // \param tag The source message tag // \param communicator The communicator index // // \returns source rank and message size (bytes) // and (-1, 0) on failure - static std::pair<int,int> probeMessage + static std::pair<int,int64_t> probeMessage ( const UPstream::commsTypes commsType, const int fromProcNo, @@ -895,21 +903,32 @@ public: ); //- Communication schedule for tree all-to-master (proc 0) - static const List<commsStruct>& treeCommunication + static const List<commsStruct>& + treeCommunication ( const label communicator = worldComm ); - //- Communication schedule for linear/tree all-to-master (proc 0). - //- Chooses based on the value of UPstream::nProcsSimpleSum + //- Communication schedule for all-to-master (proc 0) as + //- linear/tree/none with switching based on UPstream::nProcsSimpleSum + //- and the is_parallel() state static const List<commsStruct>& whichCommunication ( const label communicator = worldComm ) { + const label np + ( + parRun_ && is_rank(communicator) // cf. is_parallel() + ? nProcs(communicator) + : 0 + ); + return ( - nProcs(communicator) < nProcsSimpleSum + np <= 1 + ? List<commsStruct>::null() + : np < nProcsSimpleSum ? linearCommunication(communicator) : treeCommunication(communicator) ); @@ -1138,7 +1157,7 @@ public: // On master input list length == nProcs, ignored on other procs. // \n // For \b non-parallel : - // returns the first list element (or zero). + // returns the first list element (or default initialized). template<class T> static T listScatterValues ( @@ -1191,6 +1210,7 @@ public: //- Process index of first sub-process // \deprecated(2020-09) use subProcs() method instead + FOAM_DEPRECATED_FOR(2020-09, "subProcs() method") static constexpr int firstSlave() noexcept { return 1; @@ -1198,6 +1218,7 @@ public: //- Process index of last sub-process // \deprecated(2020-09) use subProcs() method instead + FOAM_DEPRECATED_FOR(2020-09, "subProcs() or allProcs() method") static int lastSlave(const label communicator = worldComm) { return nProcs(communicator) - 1; @@ -1205,12 +1226,119 @@ public: }; +/*---------------------------------------------------------------------------*\ + Class UPstream::Communicator Declaration +\*---------------------------------------------------------------------------*/ + +//- An opaque wrapper for MPI_Comm with a vendor-independent +//- representation without any \c <mpi.h> header. +// The MPI standard states that MPI_Comm is always an opaque object. +// Generally it is either an integer (eg, mpich) or a pointer (eg, openmpi). +class UPstream::Communicator +{ +public: + + // Public Types + + //- Storage for MPI_Comm (as integer or pointer) + typedef std::intptr_t value_type; + + +private: + + // Private Data + + //- The MPI_Comm (as wrapped value) + value_type value_; + +public: + + // Generated Methods + + //- Copy construct + Communicator(const Communicator&) noexcept = default; + + //- Move construct + Communicator(Communicator&&) noexcept = default; + + //- Copy assignment + Communicator& operator=(const Communicator&) noexcept = default; + + //- Move assignment + Communicator& operator=(Communicator&&) noexcept = default; + + + // Member Operators + + //- Test for equality + bool operator==(const Communicator& rhs) const noexcept + { + return (value_ == rhs.value_); + } + + //- Test for inequality + bool operator!=(const Communicator& rhs) const noexcept + { + return (value_ != rhs.value_); + } + + + // Constructors + + //- Default construct as MPI_COMM_NULL + Communicator() noexcept; + + //- Construct from MPI_Comm (as pointer type) + explicit Communicator(const void* p) noexcept + : + value_(reinterpret_cast<value_type>(p)) + {} + + //- Construct from MPI_Comm (as integer type) + explicit Communicator(value_type val) noexcept + : + value_(val) + {} + + + // Factory Methods + + //- Transcribe internally indexed communicator to wrapped value. + // Example, + // \code + // PstreamUtils::Cast::to_mpi + // ( + // UPstream::Communicator::lookup(UPstream::commWorld()) + // ) + // \endcode + static Communicator lookup(const label comm); + + + // Member Functions + + //- Return raw value + value_type value() const noexcept { return value_; } + + //- Return as pointer value + const void* pointer() const noexcept + { + return reinterpret_cast<const void*>(value_); + } + + //- True if not equal to MPI_COMM_NULL + bool good() const noexcept; + + //- Reset to default constructed value (MPI_COMM_NULL) + void reset() noexcept; +}; + + /*---------------------------------------------------------------------------*\ Class UPstream::Request Declaration \*---------------------------------------------------------------------------*/ //- An opaque wrapper for MPI_Request with a vendor-independent -//- representation independent of any \c <mpi.h> header +//- representation without any \c <mpi.h> header. // The MPI standard states that MPI_Request is always an opaque object. // Generally it is either an integer (eg, mpich) or a pointer (eg, openmpi). class UPstream::Request diff --git a/src/OpenFOAM/db/IOstreams/Pstreams/UPstreamTemplates.C b/src/OpenFOAM/db/IOstreams/Pstreams/UPstreamTemplates.C index 10065bff3f60cda3f254a29d0eebe8d1e1a05696..6f71ec548f8428f285fd04290e2b8786077c0fa0 100644 --- a/src/OpenFOAM/db/IOstreams/Pstreams/UPstreamTemplates.C +++ b/src/OpenFOAM/db/IOstreams/Pstreams/UPstreamTemplates.C @@ -34,14 +34,6 @@ Foam::List<T> Foam::UPstream::allGatherValues const label comm ) { - if (!is_contiguous<T>::value) - { - FatalErrorInFunction - << "Cannot all-gather values for non-contiguous types" << endl - << Foam::abort(FatalError); - } - - List<T> allValues; if (UPstream::is_parallel(comm)) @@ -49,7 +41,17 @@ Foam::List<T> Foam::UPstream::allGatherValues allValues.resize(UPstream::nProcs(comm)); allValues[UPstream::myProcNo(comm)] = localValue; - UPstream::mpiAllGather(allValues.data_bytes(), sizeof(T), comm); + if (is_contiguous<T>::value) + { + UPstream::mpiAllGather(allValues.data_bytes(), sizeof(T), comm); + } + else + { + FatalErrorInFunction + << "Cannot all-gather values for non-contiguous types" + " - consider Pstream variant instead" << endl + << Foam::abort(FatalError); + } } else { @@ -70,14 +72,6 @@ Foam::List<T> Foam::UPstream::listGatherValues const label comm ) { - if (!is_contiguous<T>::value) - { - FatalErrorInFunction - << "Cannot gather values for non-contiguous types" << endl - << Foam::abort(FatalError); - } - - List<T> allValues; if (UPstream::is_parallel(comm)) @@ -87,13 +81,23 @@ Foam::List<T> Foam::UPstream::listGatherValues allValues.resize(UPstream::nProcs(comm)); } - UPstream::mpiGather - ( - reinterpret_cast<const char*>(&localValue), - allValues.data_bytes(), - sizeof(T), // The send/recv size per rank - comm - ); + if (is_contiguous<T>::value) + { + UPstream::mpiGather + ( + reinterpret_cast<const char*>(&localValue), + allValues.data_bytes(), + sizeof(T), // The send/recv size per rank + comm + ); + } + else + { + FatalErrorInFunction + << "Cannot gather values for non-contiguous types" + " - consider Pstream variant instead" << endl + << Foam::abort(FatalError); + } } else { @@ -114,47 +118,46 @@ T Foam::UPstream::listScatterValues const label comm ) { - if (!is_contiguous<T>::value) - { - FatalErrorInFunction - << "Cannot scatter values for non-contiguous types" << endl - << Foam::abort(FatalError); - } - - - T localValue; + T localValue{}; if (UPstream::is_parallel(comm)) { - const label nproc = UPstream::nProcs(comm); + const label numProc = UPstream::nProcs(comm); - if (UPstream::master(comm) && allValues.size() < nproc) + if (UPstream::master(comm) && allValues.size() < numProc) { FatalErrorInFunction << "Attempting to send " << allValues.size() - << " values to " << nproc << " processors" << endl + << " values to " << numProc << " processors" << endl << Foam::abort(FatalError); } - UPstream::mpiScatter - ( - allValues.cdata_bytes(), - reinterpret_cast<char*>(&localValue), - sizeof(T), // The send/recv size per rank - comm - ); + if (is_contiguous<T>::value) + { + UPstream::mpiScatter + ( + allValues.cdata_bytes(), + reinterpret_cast<char*>(&localValue), + sizeof(T), // The send/recv size per rank + comm + ); + } + else + { + FatalErrorInFunction + << "Cannot scatter values for non-contiguous types" + " - consider Pstream variant instead" << endl + << Foam::abort(FatalError); + } } else { - // non-parallel: return local value + // non-parallel: return first value + // TBD: only when UPstream::is_rank(comm) as well? - if (UPstream::is_rank(comm) && !allValues.empty()) - { - localValue = allValues[0]; - } - else + if (!allValues.empty()) { - localValue = Zero; + return allValues[0]; } } diff --git a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H index 89f232b40117955d722592f241cb6ddb7aead77b..223784367a90a1cb94c212fabc9505b740455f06 100644 --- a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H +++ b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H @@ -59,8 +59,10 @@ class ISstream { // Private Data + //- The input stream path fileName name_; + //- The input stream std::istream& is_; @@ -129,6 +131,8 @@ public: virtual const fileName& name() const override { return name_; } //- The name of the input serial stream, for modification. + // Use with caution since some classes (eg, Fstream) + // also use this for filesystem information! virtual fileName& name() { return name_; } @@ -143,14 +147,17 @@ public: // Stream State - //- Return flags of output stream - virtual ios_base::fmtflags flags() const override + //- Return current stream flags + virtual std::ios_base::fmtflags flags() const override { return is_.flags(); } - //- Set stream flags - virtual ios_base::fmtflags flags(const ios_base::fmtflags f) override + //- Set stream flags, return old stream flags + virtual std::ios_base::fmtflags flags + ( + std::ios_base::fmtflags f + ) override { return is_.flags(f); } diff --git a/src/OpenFOAM/db/IOstreams/Sstreams/OSstream.H b/src/OpenFOAM/db/IOstreams/Sstreams/OSstream.H index 70dcd99bba7d4e4e1026953d59c09177e4cb0008..3344fc7739e3733e5113a4cf0f66edd4fc132086 100644 --- a/src/OpenFOAM/db/IOstreams/Sstreams/OSstream.H +++ b/src/OpenFOAM/db/IOstreams/Sstreams/OSstream.H @@ -58,8 +58,10 @@ class OSstream { // Private Data + //- The output stream path fileName name_; + //- The output stream std::ostream& os_; @@ -119,6 +121,11 @@ public: //- (eg, the name of the Fstream file name) virtual const fileName& name() const override { return name_; } + //- The name of the output serial stream, for modification. + // Use with caution since some classes (eg, Fstream) + // also use this for filesystem information! + virtual fileName& name() { return name_; } + // STL stream @@ -131,14 +138,17 @@ public: // Stream State - //- Get stream flags - virtual ios_base::fmtflags flags() const override + //- Get current stream flags + virtual std::ios_base::fmtflags flags() const override { return os_.flags(); } - //- Set stream flags - virtual ios_base::fmtflags flags(const ios_base::fmtflags f) override + //- Set stream flags, return old stream flags + virtual std::ios_base::fmtflags flags + ( + std::ios_base::fmtflags f + ) override { return os_.flags(f); } diff --git a/src/OpenFOAM/db/IOstreams/StringStreams/StringStream.H b/src/OpenFOAM/db/IOstreams/StringStreams/StringStream.H index 66d766562f0ae2829244f300edb0a2026e0bef59..63089e40e92a705a5b94216e5a70e85399adb063 100644 --- a/src/OpenFOAM/db/IOstreams/StringStreams/StringStream.H +++ b/src/OpenFOAM/db/IOstreams/StringStreams/StringStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,60 +46,6 @@ SourceFiles namespace Foam { -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::StringStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- Allocator for variants of a std stringstream -template<class StreamType> -class StringStreamAllocator -{ -protected: - - // Protected Member Data - - //- The stream type - typedef StreamType stream_type; - - //- The input/output stream. - stream_type stream_; - - - // Constructors - - //- Default construct - StringStreamAllocator() = default; - - //- Copy construct from string - StringStreamAllocator(const std::string& s) - : - stream_(s) - {} - - -public: - - // Member Functions - - //- Get the string - as Foam::string rather than std::string - Foam::string str() const - { - return Foam::string(stream_.str()); - } - - //- Set the string - void str(const std::string& s) - { - stream_.str(s); - } -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class IStringStream Declaration \*---------------------------------------------------------------------------*/ @@ -107,10 +53,12 @@ public: //- Input from string buffer, using a ISstream. Always UNCOMPRESSED. class IStringStream : - public Detail::StringStreamAllocator<std::istringstream>, - public ISstream + public Foam::Detail::StreamAllocator<std::istringstream>, + public Foam::ISstream { - typedef Detail::StringStreamAllocator<std::istringstream> allocator_type; + typedef + Foam::Detail::StreamAllocator<std::istringstream> + allocator_type; public: @@ -133,9 +81,11 @@ public: IOstreamOption streamOpt = IOstreamOption() ) : - allocator_type(s), + allocator_type(), ISstream(stream_, "input", streamOpt.format(), streamOpt.version()) - {} + { + stream_.str(s); + } //- Construct from char* explicit IStringStream @@ -144,20 +94,32 @@ public: IOstreamOption streamOpt = IOstreamOption() ) : - allocator_type(s), + allocator_type(), ISstream(stream_, "input", streamOpt.format(), streamOpt.version()) - {} + { + stream_.str(s); + } //- Copy construct, copies content and format IStringStream(const IStringStream& str) : - allocator_type(str.str()), + allocator_type(), ISstream(stream_, str.name(), static_cast<IOstreamOption>(str)) - {} + { + stream_.str(str.str()); + } // Member Functions + //- Get the string. + //- As Foam::string instead of std::string (may change in future) + Foam::string str() const { return Foam::string(stream_.str()); } + + //- Set the string + void str(const std::string& s) { stream_.str(s); } + + //- Reset the input buffer and rewind the stream virtual void reset(const std::string& s) { @@ -220,10 +182,12 @@ public: //- Output to string buffer, using a OSstream. Always UNCOMPRESSED. class OStringStream : - public Detail::StringStreamAllocator<std::ostringstream>, - public OSstream + public Foam::Detail::StreamAllocator<std::ostringstream>, + public Foam::OSstream { - typedef Detail::StringStreamAllocator<std::ostringstream> allocator_type; + typedef + Foam::Detail::StreamAllocator<std::ostringstream> + allocator_type; public: @@ -242,13 +206,26 @@ public: //- Copy construct, copies content and format OStringStream(const OStringStream& str) : - allocator_type(str.str()), + allocator_type(), OSstream(stream_, str.name(), static_cast<IOstreamOption>(str)) - {} + { + stream_.str(str.str()); + } // Member Functions + //- The number of bytes outputted + std::streamsize count() { return stream_.tellp(); } + + //- Get the string. + //- As Foam::string instead of std::string (may change in future) + Foam::string str() const { return Foam::string(stream_.str()); } + + //- Set the string + void str(const std::string& s) { stream_.str(s); } + + //- Reset the output buffer and rewind the stream void reset() { diff --git a/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.C b/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.C index 2a8e1d676e70f7e23ea764270689914c25191892..66c2125e83e40239a0c90861a5be2037bd6d48b2 100644 --- a/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.C +++ b/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,7 +55,7 @@ static label parseStream(ISstream& is, tokenList& tokens) if (count >= tokens.size()) { // Increase capacity (doubling) with min-size [64] - tokens.resize(max(label(64), 2*tokens.size())); + tokens.resize(Foam::max(label(64), label(2*tokens.size()))); } tokens[count] = std::move(tok); @@ -77,7 +77,7 @@ Foam::ITstream& Foam::ITstream::empty_stream() if (emptyStreamPtr_) { emptyStreamPtr_->ITstream::clear(); // Ensure it really is empty - emptyStreamPtr_->ITstream::seek(0); // rewind(), but bypasss virtual + emptyStreamPtr_->ITstream::seek(0); // rewind() bypassing virtual } else { @@ -91,13 +91,14 @@ Foam::ITstream& Foam::ITstream::empty_stream() } -Foam::tokenList Foam::ITstream::parse +Foam::tokenList Foam::ITstream::parse_chars ( - const UList<char>& input, + const char* s, + size_t nbytes, IOstreamOption streamOpt ) { - ISpanStream is(input, streamOpt); + ISpanStream is(s, nbytes, streamOpt); tokenList tokens; parseStream(is, tokens); @@ -105,31 +106,14 @@ Foam::tokenList Foam::ITstream::parse } -Foam::tokenList Foam::ITstream::parse -( - const std::string& input, - IOstreamOption streamOpt -) -{ - ISpanStream is(input, streamOpt); - - tokenList tokens; - parseStream(is, tokens); - return tokens; -} - +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::tokenList Foam::ITstream::parse -( - const char* input, - IOstreamOption streamOpt -) +void Foam::ITstream::reset(const char* input, size_t nbytes) { - ISpanStream is(input, strlen(input), streamOpt); + ISpanStream is(input, nbytes, static_cast<IOstreamOption>(*this)); - tokenList tokens; - parseStream(is, tokens); - return tokens; + parseStream(is, static_cast<tokenList&>(*this)); + ITstream::seek(0); // rewind() bypassing virtual } @@ -254,10 +238,7 @@ Foam::ITstream::ITstream : ITstream(streamOpt, name) { - ISpanStream is(input, streamOpt); - - parseStream(is, static_cast<tokenList&>(*this)); - ITstream::seek(0); // rewind(), but bypasss virtual + reset(input.cdata(), input.size_bytes()); } @@ -270,10 +251,7 @@ Foam::ITstream::ITstream : ITstream(streamOpt, name) { - ISpanStream is(input, streamOpt); - - parseStream(is, static_cast<tokenList&>(*this)); - ITstream::seek(0); // rewind(), but bypasss virtual + reset(input.data(), input.size()); } @@ -286,10 +264,7 @@ Foam::ITstream::ITstream : ITstream(streamOpt, name) { - ISpanStream is(input, strlen(input), streamOpt); - - parseStream(is, static_cast<tokenList&>(*this)); - ITstream::seek(0); // rewind(), but bypasss virtual + reset(input, strlen(input)); } @@ -358,7 +333,7 @@ std::string Foam::ITstream::toString() const } -const Foam::token& Foam::ITstream::peek() const +const Foam::token& Foam::ITstream::peek() const noexcept { // Use putback token if it exists if (Istream::hasPutback()) @@ -384,45 +359,30 @@ Foam::token& Foam::ITstream::currentToken() } -void Foam::ITstream::seek(label pos) +void Foam::ITstream::seek(label pos) noexcept { lineNumber_ = 0; - const tokenList& toks = *this; - const label nToks = toks.size(); - - if (!pos) - { - // Seek begin (rewind) - tokenIndex_ = 0; - if (nToks) - { - lineNumber_ = toks.front().lineNumber(); - } - - setOpened(); - setGood(); - } - else if (pos < 0 || pos >= nToks) + if (pos < 0 || pos >= tokenList::size()) { // Seek end (-1) or seek is out of range - tokenIndex_ = nToks; + tokenIndex_ = tokenList::size(); - if (nToks) + if (!tokenList::empty()) { - lineNumber_ = toks.back().lineNumber(); + // The closest reference lineNumber + lineNumber_ = tokenList::cdata()[tokenIndex_-1].lineNumber(); } setEof(); } else { - // Seek middle (from the beginning) tokenIndex_ = pos; - if (nToks) + if (tokenIndex_ < tokenList::size()) { - lineNumber_ = toks[tokenIndex_].lineNumber(); + lineNumber_ = tokenList::cdata()[tokenIndex_].lineNumber(); } setOpened(); @@ -431,7 +391,7 @@ void Foam::ITstream::seek(label pos) } -bool Foam::ITstream::skip(label n) +bool Foam::ITstream::skip(label n) noexcept { if (!n) { @@ -458,14 +418,14 @@ bool Foam::ITstream::skip(label n) if (!tokenList::empty()) { // The closest reference lineNumber - lineNumber_ = tokenList::back().lineNumber(); + lineNumber_ = tokenList::cdata()[tokenIndex_-1].lineNumber(); } } // Update stream information if (tokenIndex_ < tokenList::size()) { - lineNumber_ = tokenList::operator[](tokenIndex_).lineNumber(); + lineNumber_ = tokenList::cdata()[tokenIndex_].lineNumber(); setOpened(); setGood(); } @@ -610,7 +570,8 @@ Foam::ITstream Foam::ITstream::extract(const labelRange& range) // Move tokens into result list std::move(first, last, result.begin()); - result.seek(0); // rewind + result.seek(0); // rewind() bypassing virtual + (void) remove(slice); // Adjust the original list @@ -733,12 +694,6 @@ Foam::Istream& Foam::ITstream::read(char*, std::streamsize) } -void Foam::ITstream::rewind() -{ - ITstream::seek(0); -} - - void Foam::ITstream::add_tokens(const token& tok) { reserveCapacity(tokenIndex_ + 1); @@ -788,7 +743,7 @@ void Foam::ITstream::operator=(const ITstream& is) Istream::operator=(is); tokenList::operator=(is); name_ = is.name_; - ITstream::seek(0); // rewind(), but bypasss virtual + ITstream::seek(0); // rewind() bypassing virtual } } @@ -796,14 +751,14 @@ void Foam::ITstream::operator=(const ITstream& is) void Foam::ITstream::operator=(const UList<token>& toks) { tokenList::operator=(toks); - ITstream::seek(0); // rewind(), but bypasss virtual + ITstream::seek(0); // rewind() bypassing virtual } void Foam::ITstream::operator=(List<token>&& toks) { tokenList::operator=(std::move(toks)); - ITstream::seek(0); // rewind(), but bypasss virtual + ITstream::seek(0); // rewind() bypassing virtual } diff --git a/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.H b/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.H index 4cc396c52c6198d5decba17db4bdb59bf803d012..37e5571e8dcd3290cc04b05b06c49cf06b9e995e 100644 --- a/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.H +++ b/src/OpenFOAM/db/IOstreams/Tstreams/ITstream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,14 +77,26 @@ class ITstream // but leave any excess capacity (ie, like reserve). void reserveCapacity(const label newCapacity); + //- Convert input sequence into a list of tokens, + static tokenList parse_chars + ( + const char* s, + size_t nbytes, + IOstreamOption streamOpt + ); + + //- Convert input sequence into a list of tokens, + //- using the existing stream format. Rewinds the stream + void reset(const char* input, size_t nbytes); + //- Failsafe read-access to token at specified location //- or undefinedToken - inline const token& peekNoFail(const label i) const + inline const token& peekNoFail(const label i) const noexcept { return ( (i >= 0 && i < tokenList::size()) - ? tokenList::operator[](i) + ? tokenList::cdata()[i] : token::undefinedToken ); } @@ -158,6 +170,47 @@ public: const string& name = "input" ); + #if __cplusplus >= 201703L + //- Construct token list by parsing the input character sequence + // Uses static parse function internally. + explicit ITstream + ( + std::string_view s, + IOstreamOption streamOpt = IOstreamOption() + ) + : + ITstream(streamOpt) + { + reset(s.data(), s.size()); + } + #endif + + //- Construct token list by parsing the input character sequence + // Uses static parse function internally. + explicit ITstream + ( + stdFoam::span<char> s, + IOstreamOption streamOpt = IOstreamOption() + ) + : + ITstream(streamOpt) + { + reset(s.data(), s.size()); + } + + //- Construct token list by parsing the input character sequence + // Uses static parse function internally. + explicit ITstream + ( + stdFoam::span<const char> s, + IOstreamOption streamOpt = IOstreamOption() + ) + : + ITstream(streamOpt) + { + reset(s.data(), s.size()); + } + // Additional constructors @@ -207,7 +260,10 @@ public: ( const UList<char>& input, IOstreamOption streamOpt = IOstreamOption() - ); + ) + { + return parse_chars(input.cdata(), input.size(), streamOpt); + } //- Create token list by parsing the input string //- until no good tokens remain. @@ -215,7 +271,10 @@ public: ( const std::string& input, IOstreamOption streamOpt = IOstreamOption() - ); + ) + { + return parse_chars(input.data(), input.size(), streamOpt); + } //- Create token list by parsing the input character sequence //- until no good tokens remain. @@ -223,7 +282,45 @@ public: ( const char* input, IOstreamOption streamOpt = IOstreamOption() - ); + ) + { + return parse_chars(input, strlen(input), streamOpt); + } + + #if __cplusplus >= 201703L + //- Create token list by parsing the input character sequence + //- until no good tokens remain. + static tokenList parse + ( + std::string_view s, + IOstreamOption streamOpt = IOstreamOption() + ) + { + return parse_chars(s.data(), s.size(), streamOpt); + } + #endif + + //- Create token list by parsing the input character sequence + //- until no good tokens remain. + static tokenList parse + ( + stdFoam::span<char> s, + IOstreamOption streamOpt = IOstreamOption() + ) + { + return parse_chars(s.data(), s.size(), streamOpt); + } + + //- Create token list by parsing the input character sequence + //- until no good tokens remain. + static tokenList parse + ( + stdFoam::span<const char> s, + IOstreamOption streamOpt = IOstreamOption() + ) + { + return parse_chars(s.data(), s.size(), streamOpt); + } // Member Functions @@ -251,25 +348,41 @@ public: // Token Access + //- The token contents (read-only access) + const tokenList& tokens() const noexcept { return *this; } + + //- The token contents (read/write access) + tokenList& tokens() noexcept { return *this; } + + //- True if putback token is in use bool hasPutback() const noexcept { return Istream::hasPutback(); } //- Failsafe peek at the token at the \b front of the tokenList // \return \c undefinedToken if the list is empty. - const token& front() const { return peekNoFail(0); } + const token& front() const noexcept + { + return peekNoFail(0); + } //- Failsafe peek at the token at the \b back of the tokenList // \return \c undefinedToken if the list is empty. - const token& back() const { return peekNoFail(tokenList::size()-1); } + const token& back() const noexcept + { + return peekNoFail(tokenList::size()-1); + } //- Failsafe peek at what the next read would return, //- including handling of any putback // \return \c undefinedToken if list is exhausted - const token& peek() const; + const token& peek() const noexcept; //- Read access to the token at the current tokenIndex. //- \returns \c undefinedToken if list is exhausted - const token& currentToken() const { return peekNoFail(tokenIndex_); } + const token& currentToken() const noexcept + { + return peekNoFail(tokenIndex_); + } //- Write access to the token at the current tokenIndex. //- Fatal if not in range @@ -300,9 +413,10 @@ public: } //- Move tokenIndex to the specified position - // Using seek(0) is identical to rewind. + //- and adjust the stream status (open/good/eof ...) + // Using seek(0) is identical to rewind(). // Using seek(-1) moves to the end. - void seek(label pos); + void seek(label pos) noexcept; //- Move tokenIndex relative to the current position. // Will not overrun the beginning (0) or one-past end positions. @@ -310,7 +424,7 @@ public: // Use skip(2) to move forward two tokens. // Use skip(-2) to move backward two tokens. // \return True if the indexing completed without underflow/overflow - bool skip(label n = 1); + bool skip(label n = 1) noexcept; // Searching @@ -319,7 +433,7 @@ public: using tokenList::find; //- Find range containing matching delimiter pair, starting at the - //- the specified position. The position -1 indicates to continue + //- specified position. The position -1 indicates to continue //- from the present tokenIndex() position. labelRange find ( @@ -328,6 +442,13 @@ public: label pos = 0 ) const; + //- Find compoundToken of specified Type, starting at the + //- specified position. The position -1 indicates to continue + //- from the present tokenIndex() position. + // \return nullptr if not found + template<class Type> + const Type* findCompound(label pos = 0) const; + // Token list modification @@ -378,16 +499,18 @@ public: // Stream State Functions - //- Get stream flags - always 0 - virtual ios_base::fmtflags flags() const override + //- Return current stream flags. + //- Dummy for token stream, returns 0. + virtual std::ios_base::fmtflags flags() const override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } - //- Set flags of stream - ignored - ios_base::fmtflags flags(const ios_base::fmtflags) override + //- Set stream flags, return old stream flags. + //- Dummy for token stream, returns 0. + std::ios_base::fmtflags flags(std::ios_base::fmtflags) override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } @@ -428,7 +551,7 @@ public: virtual bool endRawRead() override { return false; } //- Rewind the stream so that it may be read again. Same as seek(0) - virtual void rewind() override; + virtual void rewind() override { ITstream::seek(0); } // Output @@ -522,6 +645,10 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "ITstreamI.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/OpenFOAM/db/IOstreams/Tstreams/ITstreamI.H b/src/OpenFOAM/db/IOstreams/Tstreams/ITstreamI.H new file mode 100644 index 0000000000000000000000000000000000000000..00e3a2ee3b4ebba14fb440cb2389df7508d477e4 --- /dev/null +++ b/src/OpenFOAM/db/IOstreams/Tstreams/ITstreamI.H @@ -0,0 +1,52 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +template<class Type> +const Type* Foam::ITstream::findCompound(label pos) const +{ + if (pos < 0) + { + pos = tokenIndex_; + } + + const Type* ptr = nullptr; + + for (; pos < tokenList::size(); ++pos) + { + ptr = tokenList::operator[](pos).isCompound<Type>(); + + if (ptr) + { + break; + } + } + + return ptr; +} + + +// ************************************************************************* // diff --git a/src/OpenFOAM/db/IOstreams/Tstreams/OTstream.H b/src/OpenFOAM/db/IOstreams/Tstreams/OTstream.H index f50d30308e4276b4f41acf02c67a7d5087013b17..7af4253e98f483d54722d7ff512c36eb55fe4c9c 100644 --- a/src/OpenFOAM/db/IOstreams/Tstreams/OTstream.H +++ b/src/OpenFOAM/db/IOstreams/Tstreams/OTstream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,16 +101,10 @@ public: // Member Functions //- The tokens - const DynamicList<token>& tokens() const noexcept - { - return *this; - } + const DynamicList<token>& tokens() const noexcept { return *this; } //- The tokens - DynamicList<token>& tokens() noexcept - { - return *this; - } + DynamicList<token>& tokens() noexcept { return *this; } // Write @@ -187,16 +181,18 @@ public: // Stream State Functions - //- Get flags of output stream - virtual ios_base::fmtflags flags() const override + //- Return current stream flags. + //- Dummy for token stream, returns 0. + virtual std::ios_base::fmtflags flags() const override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } - //- Set flags of stream - ignored - std::ios_base::fmtflags flags(const ios_base::fmtflags) override + //- Set stream flags, return old stream flags. + //- Dummy for token stream, returns 0. + std::ios_base::fmtflags flags(std::ios_base::fmtflags) override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } //- Flush stream @@ -249,20 +245,20 @@ public: // Other + //- Rewind the output stream to position 0 (non-virtual!) + //- and adjust the stream status (open/good/eof ...) //- Reset the output buffer and rewind the stream - void reset() - { - this->rewind(); - } - - //- Rewind the output stream - virtual void rewind() + void reset() noexcept { DynamicList<token>::clear(); setOpened(); setGood(); } + //- Rewind the output stream to position 0 + //- and adjust the stream status (open/good/eof ...) + virtual void rewind() { OTstream::reset(); } + //- Print stream description to Ostream void print(Ostream& os) const override; diff --git a/src/OpenFOAM/db/IOstreams/Tstreams/Tstream.H b/src/OpenFOAM/db/IOstreams/Tstreams/Tstream.H index 9c265a8dc62511a8b31ac7f0b7375e661bff2b0b..e098c32fab9dc22cb894c83f6d82d4812a1db605 100644 --- a/src/OpenFOAM/db/IOstreams/Tstreams/Tstream.H +++ b/src/OpenFOAM/db/IOstreams/Tstreams/Tstream.H @@ -4,8 +4,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef Tstream_H -#define Tstream_H +#ifndef Foam_Tstream_H +#define Foam_Tstream_H #include "ITstream.H" #include "OTstream.H" diff --git a/src/OpenFOAM/db/IOstreams/dummy/dummyISstream.H b/src/OpenFOAM/db/IOstreams/dummy/dummyISstream.H index 6b50f50c6b1c730e7c418daf840739302d6de11e..ba9fce33209aae41ee1cedc9dd56369f3cf901cd 100644 --- a/src/OpenFOAM/db/IOstreams/dummy/dummyISstream.H +++ b/src/OpenFOAM/db/IOstreams/dummy/dummyISstream.H @@ -73,16 +73,18 @@ public: // Stream-state - //- Return flags of stream - virtual ios_base::fmtflags flags() const override + //- Return current stream flags. + //- Dummy for dummy stream, returns 0. + virtual std::ios_base::fmtflags flags() const override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } - //- Set flags of stream - virtual ios_base::fmtflags flags(const ios_base::fmtflags) override + //- Set stream flags, return old stream flags. + //- Dummy for dummy stream, returns 0. + virtual std::ios_base::fmtflags flags(std::ios_base::fmtflags) override { - return ios_base::fmtflags(0); + return std::ios_base::fmtflags(0); } diff --git a/src/OpenFOAM/db/IOstreams/hashes/OSHA1stream.H b/src/OpenFOAM/db/IOstreams/hashes/OSHA1stream.H index 69491d2b90fea2e3a5332446ae8e357ed4ec7818..623f34d30df57cfeca06fc6ea743bc921cd2a049 100644 --- a/src/OpenFOAM/db/IOstreams/hashes/OSHA1stream.H +++ b/src/OpenFOAM/db/IOstreams/hashes/OSHA1stream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,8 +35,8 @@ Description #ifndef Foam_OSHA1stream_H #define Foam_OSHA1stream_H -#include "OSstream.H" #include "SHA1.H" +#include "OSstream.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -114,33 +114,6 @@ public: }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::OSHA1streamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::osha1stream -class OSHA1streamAllocator -{ -protected: - - // Protected Data - - //- The output stream - Foam::osha1stream stream_; - - - // Constructors - - //- Default construct - OSHA1streamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class OSHA1stream Declaration \*---------------------------------------------------------------------------*/ @@ -148,10 +121,12 @@ protected: //- The output stream for calculating SHA1 digests class OSHA1stream : - public Detail::OSHA1streamAllocator, - public OSstream + public Foam::Detail::StreamAllocator<Foam::osha1stream>, + public Foam::OSstream { - typedef Detail::OSHA1streamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::osha1stream> + allocator_type; public: diff --git a/src/OpenFOAM/db/IOstreams/memory/ICharStream.H b/src/OpenFOAM/db/IOstreams/memory/ICharStream.H index c242b9d08df7e545704291fef81b5a0eb8ddcb4c..866a7d2135c8ad9c20ee525f413aed43033ae50d 100644 --- a/src/OpenFOAM/db/IOstreams/memory/ICharStream.H +++ b/src/OpenFOAM/db/IOstreams/memory/ICharStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,8 +42,6 @@ See Also #define Foam_ICharStream_H #include "ISpanStream.H" -#include "List.H" -#include "DynamicList.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -205,33 +203,6 @@ public: }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::ICharStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::icharstream -class ICharStreamAllocator -{ -protected: - - // Protected Data - - //- The stream - Foam::icharstream stream_; - - - // Constructors - - //- Default construct - ICharStreamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class ICharStream Declaration \*---------------------------------------------------------------------------*/ @@ -239,10 +210,12 @@ protected: //- An ISstream with internal List storage. Always UNCOMPRESSED. class ICharStream : - public Detail::ICharStreamAllocator, + public Foam::Detail::StreamAllocator<Foam::icharstream>, public Foam::ISstream { - typedef Detail::ICharStreamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::icharstream> + allocator_type; public: diff --git a/src/OpenFOAM/db/IOstreams/memory/ISpanStream.H b/src/OpenFOAM/db/IOstreams/memory/ISpanStream.H index 8f89db282c3f0d7183d247c4a2e467b113c01f00..9b03bf7bbda5fc58e058b13fd46f2ed3d00a2e26 100644 --- a/src/OpenFOAM/db/IOstreams/memory/ISpanStream.H +++ b/src/OpenFOAM/db/IOstreams/memory/ISpanStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -65,7 +65,6 @@ See Also #define Foam_ISpanStream_H #include "memoryStreamBuffer.H" -#include "UList.H" #include "ISstream.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -213,49 +212,23 @@ public: //- Some information about the input buffer position/capacity void debug_info(Ostream& os) const { - os << "get=" - << input_pos() << '/' << capacity(); + os << "get=" << input_pos() << '/' << capacity(); } }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::ISpanStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::ispanstream -class ISpanStreamAllocator -{ -protected: - - // Protected Data - - //- The stream - Foam::ispanstream stream_; - - - // Constructors - - //- Default construct (empty) - ISpanStreamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class ISpanStream Declaration \*---------------------------------------------------------------------------*/ class ISpanStream : - public Detail::ISpanStreamAllocator, + public Foam::Detail::StreamAllocator<Foam::ispanstream>, public Foam::ISstream { - typedef Detail::ISpanStreamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::ispanstream> + allocator_type; public: diff --git a/src/OpenFOAM/db/IOstreams/memory/OCharStream.H b/src/OpenFOAM/db/IOstreams/memory/OCharStream.H index 9b45472eaede8fc02232b7d85c5fdc2badbcb687..8849c4a55db579b5bad0cec3c9e799888010288d 100644 --- a/src/OpenFOAM/db/IOstreams/memory/OCharStream.H +++ b/src/OpenFOAM/db/IOstreams/memory/OCharStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -109,7 +109,13 @@ public: //- The current output position within the buffer (tellp) std::streampos output_pos() const { - return (buffer_type::span_tellp()); + return buffer_type::span_tellp(); + } + + //- The number of bytes outputted + std::streamsize count() const + { + return buffer_type::size_bytes(); } //- The put buffer capacity @@ -189,33 +195,6 @@ public: }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::OCharStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::ocharstream -class OCharStreamAllocator -{ -protected: - - // Protected Data - - //- The stream - Foam::ocharstream stream_; - - - // Constructors - - //- Default construct - empty - OCharStreamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class OCharStream Declaration \*---------------------------------------------------------------------------*/ @@ -223,10 +202,12 @@ protected: //- An OSstream with internal List storage class OCharStream : - public Detail::OCharStreamAllocator, + public Foam::Detail::StreamAllocator<Foam::ocharstream>, public Foam::OSstream { - typedef Detail::OCharStreamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::ocharstream> + allocator_type; public: @@ -277,8 +258,11 @@ public: //- The current output position within the buffer (tellp) std::streampos output_pos() const { return stream_.output_pos(); } - //- The current output size. Same as tellp(), output_pos() - label size() const { return label(stream_.output_pos()); } + //- The number of bytes outputted + std::streamsize count() const { return stream_.count(); } + + //- The current output size. Same as count(), output_pos(), tellp(). + label size() const { return label(stream_.count()); } //- The put buffer capacity std::streamsize capacity() const { return stream_.capacity(); } diff --git a/src/OpenFOAM/db/IOstreams/memory/OCountStream.H b/src/OpenFOAM/db/IOstreams/memory/OCountStream.H index 1618dd51daad6eeaddbff43106f0a2c39f2dbe61..c1c92fc36d51638d9b54f55bf3fc620a3ddd5e44 100644 --- a/src/OpenFOAM/db/IOstreams/memory/OCountStream.H +++ b/src/OpenFOAM/db/IOstreams/memory/OCountStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,7 +35,6 @@ Description #define Foam_OScountStream_H #include "OSstream.H" -#include <iostream> // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -126,7 +125,7 @@ class ocountstream // Member Functions - //- The number of bytes counted. + //- The number of bytes counted std::streamsize count() const noexcept { return size_; } //- Reset the count @@ -155,7 +154,7 @@ public: //- This hides both signatures of std::basic_ios::rdbuf() countbuf* rdbuf() { return &buf_; } - //- \return The number of bytes counted + //- The number of bytes counted std::streamsize count() const noexcept { return buf_.count(); } //- Reset the count @@ -173,33 +172,6 @@ public: }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::OCountStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::ocountstream -class OCountStreamAllocator -{ -protected: - - // Protected Data - - //- The output stream - Foam::ocountstream stream_; - - - // Constructors - - //- Default construct - OCountStreamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class OCountStream Declaration \*---------------------------------------------------------------------------*/ @@ -207,10 +179,12 @@ protected: //- An output stream for calculating byte counts class OCountStream : - public Detail::OCountStreamAllocator, - public OSstream + public Foam::Detail::StreamAllocator<Foam::ocountstream>, + public Foam::OSstream { - typedef Detail::OCountStreamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::ocountstream> + allocator_type; public: @@ -238,10 +212,10 @@ public: // Member Functions - //- \return The number of bytes counted + //- The number of bytes counted std::streamsize count() const noexcept { return stream_.count(); } - //- \return The number of bytes counted + //- The number of bytes counted std::streamsize size() const noexcept { return stream_.count(); } //- Reset the count diff --git a/src/OpenFOAM/db/IOstreams/memory/OSpanStream.H b/src/OpenFOAM/db/IOstreams/memory/OSpanStream.H index 1903c5a6b6ce102981cd3738cf1a7b99c2345557..58cf0e0b398a5504bfd745be091a923e6f2fd760 100644 --- a/src/OpenFOAM/db/IOstreams/memory/OSpanStream.H +++ b/src/OpenFOAM/db/IOstreams/memory/OSpanStream.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,7 +83,6 @@ See Also #define Foam_OSpanStream_H #include "memoryStreamBuffer.H" -#include "DynamicList.H" #include "OSstream.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -141,6 +140,12 @@ public: return buffer_type::span_tellp(); } + //- The number of bytes outputted + std::streamsize count() const + { + return buffer_type::size_bytes(); + } + //- The put buffer capacity std::streamsize capacity() const { @@ -199,49 +204,23 @@ public: //- Some information about the output buffer position/capacity void debug_info(Ostream& os) const { - os << "put=" - << output_pos() << '/' << capacity(); + os << "put=" << output_pos() << '/' << capacity(); } }; -namespace Detail -{ - -/*---------------------------------------------------------------------------*\ - Class Detail::OSpanStreamAllocator Declaration -\*---------------------------------------------------------------------------*/ - -//- An allocator for holding Foam::ospanstream -class OSpanStreamAllocator -{ -protected: - - // Protected Data - - //- The stream - Foam::ospanstream stream_; - - - // Constructors - - //- Default construct (empty) - OSpanStreamAllocator() = default; -}; - -} // End namespace Detail - - /*---------------------------------------------------------------------------*\ Class OSpanStream Declaration \*---------------------------------------------------------------------------*/ class OSpanStream : - public Detail::OSpanStreamAllocator, + public Foam::Detail::StreamAllocator<Foam::ospanstream>, public Foam::OSstream { - typedef Detail::OSpanStreamAllocator allocator_type; + typedef + Foam::Detail::StreamAllocator<Foam::ospanstream> + allocator_type; public: @@ -314,8 +293,11 @@ public: //- The current output position within the buffer (tellp) std::streampos output_pos() const { return stream_.output_pos(); } - //- The current output size. Same as tellp(), output_pos() - label size() const { return label(stream_.output_pos()); } + //- The number of bytes outputted + std::streamsize count() const { return stream_.count(); } + + //- The current output size. Same as count(), output_pos(), tellp(). + label size() const { return label(stream_.count()); } //- The put buffer capacity std::streamsize capacity() const { return stream_.capacity(); } diff --git a/src/OpenFOAM/db/IOstreams/token/token.H b/src/OpenFOAM/db/IOstreams/token/token.H index a9b2d9cd15ba4af4f34952b3ee9c48320d880776..7c7698e098dd20caabc8bd6636b430adb1a53ea5 100644 --- a/src/OpenFOAM/db/IOstreams/token/token.H +++ b/src/OpenFOAM/db/IOstreams/token/token.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -105,9 +105,9 @@ public: CHAR_DATA, //!< String-variant: plain character content // Aliases - FLOAT_SCALAR = FLOAT, - DOUBLE_SCALAR = DOUBLE, - VERBATIMSTRING = VERBATIM + FLOAT_SCALAR = FLOAT, //!< compatibility name for FLOAT + DOUBLE_SCALAR = DOUBLE, //!< compatibility name for DOUBLE + VERBATIMSTRING = VERBATIM //!< compatibility name for VERBATIM }; @@ -222,7 +222,8 @@ public: const bool readContent = true ); - //- Check if dynamic_cast to \c Type is possible. + //- Attempt dynamic_cast to \c Type + //- returns nullptr if cast is not possible template<class Type> const Type* isA() const { @@ -279,6 +280,9 @@ public: //- of the underlying data content virtual direction nComponents() const = 0; + //- The vector-space rank associated with the data content + virtual direction rank() const = 0; + //- Pointer to the underlying data as byte data virtual const char* cdata_bytes() const = 0; @@ -333,10 +337,10 @@ public: TypeNameNoDebug("Compound<T>"); //- No copy construct - Compound<T>(const Compound<T>&) = delete; + Compound(const Compound<T>&) = delete; //- No copy assignment - Compound<T>& operator=(const Compound<T>&) = delete; + void operator=(const Compound<T>&) = delete; // Constructors @@ -364,11 +368,13 @@ public: // Selectors - //- Construct autoPtr compound type with forwarding arguments + //- Construct autoPtr compound with forwarding arguments. + // The return type is compound, not Compound since that + // is what the token interface requires. template<class... Args> - static autoPtr<Compound<T>> New(Args&&... args) + static autoPtr<compound> New(Args&&... args) { - return autoPtr<Compound<T>> + return autoPtr<compound> ( new Compound<T>(T(std::forward<Args>(args)...)) ); @@ -383,7 +389,7 @@ public: return T::size(); } - //- Change the size of the underlying container content + //- Change the size of the underlying content virtual void resize(const label n) { T::resize(n); @@ -419,6 +425,12 @@ public: return pTraits_nComponents<value_type>(); } + //- The vector-space rank associated with the data content + virtual direction rank() const + { + return pTraits_rank<value_type>(); + } + //- Pointer to the underlying data as byte data virtual const char* cdata_bytes() const { @@ -474,7 +486,7 @@ private: //- The token type tokenType type_; - //- Line number in the file the token was read from + //- The file line number where the token was read from label line_; @@ -516,6 +528,8 @@ public: inline explicit token(punctuationToken p, label lineNum=0) noexcept; //- Construct label token + //- \note Use boolean() static method for creating a \b bool token + //- since \c bool and \c int are otherwise indistinguishable inline explicit token(const label val, label lineNum=0) noexcept; //- Construct float token @@ -541,7 +555,7 @@ public: // No character stripping inline explicit token(tokenType typ, const std::string&, label line=0); - //- Copy construct word/string token with the specified variant. + //- Move construct word/string token with the specified variant. // A invalid word/string variant type is silently treated as STRING. // No character stripping inline explicit token(tokenType typ, std::string&&, label line=0); @@ -635,7 +649,7 @@ public: inline bool isLabel() const noexcept; //- True if token is LABEL and equal to parameter - inline bool isLabel(const label val) const noexcept; + inline bool isLabel(const label value) const noexcept; //- Token is FLOAT inline bool isFloat() const noexcept; @@ -748,8 +762,15 @@ public: inline const compound& compoundToken() const; //- Return reference to compound token. Fatal if the wrong type. + //- No checks for \em released or \em pending states inline compound& refCompoundToken(); + //- Return reference to the underlying encapsulated container + //- (eg, \c List<label> etc) of a compound token. + //- No checks for \em released or \em pending states + template<class Type> + inline Type& refCompoundToken(); + //- Default construct the specified compound type and read from stream. // A no-op and returns false if compound type is unknown. // Modify the token and return true on success. diff --git a/src/OpenFOAM/db/IOstreams/token/tokenI.H b/src/OpenFOAM/db/IOstreams/token/tokenI.H index 9476b7e77cef03aad450f6ca28c7e914676c0395..f4d7ec119a969d4739bc02b93757429cba8da703 100644 --- a/src/OpenFOAM/db/IOstreams/token/tokenI.H +++ b/src/OpenFOAM/db/IOstreams/token/tokenI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -605,16 +605,34 @@ inline Foam::token::punctuationToken Foam::token::pToken() const inline bool Foam::token::isLabel() const noexcept { - return (type_ == tokenType::LABEL); + return + ( + type_ == tokenType::LABEL + // FUTURE? + // || type_ == tokenType::INT32 + // || type_ == tokenType::INT64 + ); } -inline bool Foam::token::isLabel(const label val) const noexcept +inline bool Foam::token::isLabel(const label value) const noexcept { + // FUTURE? + // return + // ( + // type_ == tokenType::LABEL + // ? value == data_.labelVal + // : type_ == tokenType::INT32 + // ? value == data_.int32Val + // : type_ == tokenType::INT64 + // ? value == data_.int64Val + // : false + // ); + return ( type_ == tokenType::LABEL - && data_.labelVal == val + && value == data_.labelVal ); } @@ -695,7 +713,7 @@ inline Foam::scalar Foam::token::scalarToken() const inline bool Foam::token::isNumber() const noexcept { - return (type_ == tokenType::LABEL || isScalar()); + return (isLabel() || isScalar()); } @@ -855,6 +873,23 @@ inline Foam::token::compound& Foam::token::refCompoundToken() } +template<class Type> +inline Type& Foam::token::refCompoundToken() +{ + if (type_ != tokenType::COMPOUND) + { + parseError("compound"); + } + return static_cast<Type&> + ( + dynamicCast<token::Compound<Type>> + ( + *data_.compoundPtr + ) + ); +} + + inline Foam::token::compound& Foam::token::transferCompoundToken(const Istream& is) { @@ -894,6 +929,15 @@ Foam::token::tokenType Foam::token::Compound<T>::typeCode() const { // List<label>, List<labelVector> etc return token::tokenType::LABEL; + + // FUTURE? + // return + // ( + // sizeof(int32_t) == sizeof(Foam::label) + // ? token::tokenType::INT32 + // : token::tokenType::INT64 + // ); + } else if (is_contiguous_scalar<valueType>::value) { diff --git a/src/OpenFOAM/db/IOstreams/token/tokenIO.C b/src/OpenFOAM/db/IOstreams/token/tokenIO.C index 6d606c00d8d0fe3869ea9ad427e3a4d9d989061c..b464565b41124868dba2f31f59864915b6c8ee8f 100644 --- a/src/OpenFOAM/db/IOstreams/token/tokenIO.C +++ b/src/OpenFOAM/db/IOstreams/token/tokenIO.C @@ -57,6 +57,14 @@ static OS& printTokenInfo(OS& os, const token& tok) os << "punctuation '" << tok.pToken() << '\''; break; + // case token::tokenType::INT32: + // os << "int32 " << tok.int32Token(); + // break; + // + // case token::tokenType::INT64: + // os << "int64 " << tok.int64Token(); + // break; + case token::tokenType::LABEL: os << "label " << tok.labelToken(); break; @@ -146,6 +154,9 @@ Foam::word Foam::token::name(const token::tokenType tokType) case token::tokenType::BOOL: return "bool"; case token::tokenType::FLAG: return "flag"; case token::tokenType::PUNCTUATION: return "punctuation"; + + // case token::tokenType::INT32: return "int32"; + // case token::tokenType::INT64: return "int64"; case token::tokenType::LABEL: return "label"; case token::tokenType::FLOAT: return "float"; case token::tokenType::DOUBLE: return "double"; diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C index f384919c50d9f17a931bf9a377b8c9a6bbc734b5..2d9ce11816d6de1a890aa18bb0a3d11a1144922e 100644 --- a/src/OpenFOAM/db/Time/Time.C +++ b/src/OpenFOAM/db/Time/Time.C @@ -730,14 +730,15 @@ Foam::word Foam::Time::timeName(const scalar t, const int precision) Foam::word Foam::Time::findInstance ( - const fileName& dir, + const fileName& directory, const word& name, IOobjectOption::readOption rOpt, - const word& stopInstance + const word& stopInstance, + const bool constant_fallback ) const { - // Note: name might be empty! - IOobject startIO(name, timeName(), dir, *this, rOpt); + // Note: name can empty (ie, search for directory only) + IOobject startIO(name, timeName(), directory, *this, rOpt); IOobject io ( @@ -745,48 +746,14 @@ Foam::word Foam::Time::findInstance ( startIO, timeOutputValue(), - stopInstance + stopInstance, + constant_fallback ) ); return io.instance(); } -Foam::word Foam::Time::findInstancePath -( - const fileName& directory, - const instant& t -) const -{ - // Simplified version: use findTimes (readDir + sort). The expensive - // bit is the readDir, not the sorting. Tbd: avoid calling findInstancePath - // from filePath. - - instantList timeDirs = findTimes(path(), constant()); - // Note: - // - times will include constant (with value 0) as first element. - // For backwards compatibility make sure to find 0 in preference - // to constant. - // - list is sorted so could use binary search - - forAllReverse(timeDirs, i) - { - if (t.equal(timeDirs[i].value())) - { - return timeDirs[i].name(); - } - } - - return word::null; -} - - -Foam::word Foam::Time::findInstancePath(const instant& t) const -{ - return findInstancePath(path(), t); -} - - Foam::label Foam::Time::startTimeIndex() const { return startTimeIndex_; diff --git a/src/OpenFOAM/db/Time/Time.H b/src/OpenFOAM/db/Time/Time.H index 8d50aa1b468dbe7003b4c6581a50e41ab0c2c205..673694b9b96cdb0cec20e583ce684c13d81708fd 100644 --- a/src/OpenFOAM/db/Time/Time.H +++ b/src/OpenFOAM/db/Time/Time.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2019 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,7 +34,7 @@ Description SourceFiles Time.C TimeIO.C - findInstance.C + TimeNew.C \*---------------------------------------------------------------------------*/ @@ -482,35 +482,31 @@ public: // Searching - //- Return time instance (location) of \em dir that contains - //- the file \em name (eg, used in reading mesh data). - // When \em is empty, searches for directory \em dir only. - // Does not search beyond stopInstance (if set) or \em constant. + //- Return time instance (location) of \c directory containing + //- the file \c name (eg, used in reading mesh data). + //- When \c name is empty, searches for \c directory only. + //- Does not search beyond \c stopInstance (if set) or \c constant. // - // \note If the instance cannot be found, returns the - // stopInstance (if set and reached) or \em constant. - // FatalError if it cannot be found and readOpt is - // (MUST_READ or READ_MODIFIED). + // If the instance cannot be found: + // - FatalError when readOpt is MUST_READ or READ_MODIFIED + // - return \c stopInstance (if set and reached) + // - return \c constant if constant_fallback is true + // - return an empty word if constant_fallback is false + // . word findInstance ( - const fileName& dir, + //! The subdirectory (local) for the search + const fileName& directory, + //! The filename for the search. If empty, only search for directory const word& name = word::null, + //! The search type : generally MUST_READ or READ_IF_PRESENT IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - const word& stopInstance = word::null - ) const; - - //- Search the case for the time directory path - //- corresponding to the given instance - word findInstancePath - ( - const fileName& directory, - const instant& t + //! The search stop instance + const word& stopInstance = word::null, + //! Return \c "constant" instead of \c "" if the search failed + const bool constant_fallback = true ) const; - //- Search the case for the time directory path - //- corresponding to the given instance - word findInstancePath(const instant& t) const; - // Member Functions diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C index d471ad7f556c832bd64a2419c51764c448f4bded..778666aca94b5cd462056b0a1fadf4641a88e956 100644 --- a/src/OpenFOAM/db/Time/TimeIO.C +++ b/src/OpenFOAM/db/Time/TimeIO.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -207,7 +207,7 @@ void Foam::Time::readDict() // Change in-memory dimensionedConstants().merge(*localDict); - IStringStream dummyIs(""); + ISpanStream dummyIs; // Reporting verbosity corresponding to detail level const bool verbose = (::Foam::infoDetailLevel > 0); @@ -255,11 +255,14 @@ void Foam::Time::readDict() const List<simpleRegIOobject*>& objects = *objPtr; + OCharStream os; + for (simpleRegIOobject* obj : objects) { - OStringStream os; + os.rewind(); os << dict; - IStringStream is(os.str()); + + ISpanStream is(os.view()); obj->readData(is); } } diff --git a/src/OpenFOAM/db/Time/TimePaths.C b/src/OpenFOAM/db/Time/TimePaths.C index 5133ed6731f4d74ac80aba34d155ca50d18ddc03..e764e6457d0e9bad7bd724939e7b3f6d04e65805 100644 --- a/src/OpenFOAM/db/Time/TimePaths.C +++ b/src/OpenFOAM/db/Time/TimePaths.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -128,9 +128,60 @@ Foam::instantList Foam::TimePaths::times() const } +Foam::word Foam::TimePaths::findInstancePath +( + const UList<instant>& timeDirs, + const instant& t +) +{ + // Note: + // - timeDirs will include constant (with value 0) as first element. + // For backwards compatibility make sure to find 0 in preference + // to constant. + // - list is sorted so could use binary search + + forAllReverse(timeDirs, i) + { + if (t.equal(timeDirs[i].value())) + { + return timeDirs[i].name(); + } + } + + return word(); +} + + +// Foam::word Foam::Time::findInstancePath +// ( +// const fileName& directory, +// const instant& t +// ) const +// { +// // Simplified version: use findTimes (readDir + sort). +// // The expensive bit is the readDir, not the sorting. +// // TBD: avoid calling findInstancePath from filePath. +// +// instantList timeDirs = findTimes(directory, constant()); +// +// return findInstancePath(timeDirs, i); +// } + + +Foam::word Foam::TimePaths::findInstancePath(const instant& t) const +{ + // Simplified version: use findTimes (readDir + sort). + // The expensive bit is the readDir, not the sorting. + // TBD: avoid calling findInstancePath from filePath. + + instantList timeDirs = findTimes(path(), constant()); + return findInstancePath(timeDirs, t); +} + + Foam::label Foam::TimePaths::findClosestTimeIndex ( - const instantList& timeDirs, + const UList<instant>& timeDirs, const scalar t, const word& constantDirName ) diff --git a/src/OpenFOAM/db/Time/TimePaths.H b/src/OpenFOAM/db/Time/TimePaths.H index e6b46ab569080ddf9d8bb5cab2b7461aadf26c29..ab0d2e29cf435cefd986be4fd969fa92878a2c70 100644 --- a/src/OpenFOAM/db/Time/TimePaths.H +++ b/src/OpenFOAM/db/Time/TimePaths.H @@ -53,7 +53,6 @@ class argList; Class TimePaths Declaration \*---------------------------------------------------------------------------*/ - class TimePaths { // Private Data @@ -187,16 +186,28 @@ public: //- Search instantList for the time index closest to the specified time static label findClosestTimeIndex ( - const instantList& timeDirs, + const UList<instant>& timeDirs, const scalar t, const word& constantDirName = "constant" ); + //- Search instantList for matching time value, + //- return the instance name or word::null if nothing is equal. + static word findInstancePath + ( + const UList<instant>& timeDirs, + const instant& t + ); + //- Search the case for valid time directories instantList times() const; //- Search the case for the time closest to the given time instant findClosestTime(const scalar t) const; + + //- Search the case for the time directory path + //- corresponding to the given instance + word findInstancePath(const instant& t) const; }; diff --git a/src/OpenFOAM/db/Time/timeSelector.C b/src/OpenFOAM/db/Time/timeSelector.C index 63046f7465d29e9d82b60b725ad72d27a9ce6717..4b93af376f9b8d481fb41af6ccd841adda2c758c 100644 --- a/src/OpenFOAM/db/Time/timeSelector.C +++ b/src/OpenFOAM/db/Time/timeSelector.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -115,7 +115,7 @@ void Foam::timeSelector::addOptions argList::addBoolOption ( "constant", - "Include the 'constant/' dir in the times list" + "Include 'constant/' dir in the times list" ); } if (withZero) @@ -123,13 +123,13 @@ void Foam::timeSelector::addOptions argList::addBoolOption ( "withZero", - "Include the '0/' dir in the times list" + "Include '0/' dir in the times list" ); } argList::addBoolOption ( "noZero", - string("Exclude the '0/' dir from the times list") + string("Exclude '0/' dir from the times list") + ( withZero ? ", has precedence over the -withZero option" @@ -150,6 +150,32 @@ void Foam::timeSelector::addOptions } +void Foam::timeSelector::addOptions_singleTime() +{ + argList::addBoolOption + ( + "constant", + "Include 'constant/' dir in the times" + ); + argList::addBoolOption + ( + "noZero", + "Exclude '0/' dir from the times (currently ignored)" + ); + argList::addBoolOption + ( + "latestTime", + "Select the latest time" + ); + argList::addOption + ( + "time", + "value", + "Select the nearest time to the specified value" + ); +} + + Foam::instantList Foam::timeSelector::select ( const instantList& times, @@ -291,4 +317,77 @@ Foam::instantList Foam::timeSelector::selectIfPresent } +bool Foam::timeSelector::setTimeIfPresent +( + Time& runTime, + const argList& args, + const bool forceInitial +) +{ + label timei = -1; + instantList times; + + if + ( + forceInitial + || args.found("constant") + || args.found("latestTime") + || args.found("time") + // Currently ignoring -noZero, -withZero + ) + { + // Get times list + times = runTime.times(); + } + + if (times.size()) + { + // Start from first time (eg, for -constant or forced) + timei = 0; + + // Determine latestTime selection (if any) + // This must appear before the -time option processing + if (args.found("latestTime")) + { + timei = times.size() - 1; + } + else if (args.found("time")) + { + const scalar target = args.get<scalar>("time"); + + timei = TimePaths::findClosestTimeIndex(times, target); + } + + + // Avoid "constant" unless specifically requested with -constant, + // and the -constant option is actually an expected option + + if + ( + (timei >= 0 && timei < times.size()-1) + && times[timei].name() == "constant" + && (argList::validOptions.found("constant") && !args.found("constant")) + ) + { + ++timei; + } + } + + + if (timei >= 0 && timei < times.size()) + { + // Specified a timeSelector option, or forceInitial. + // Set the runTime accordingly. + + runTime.setTime(times[timei], timei); + return true; + } + else + { + // No timeSelector option specified. Do not change runTime. + return false; + } +} + + // ************************************************************************* // diff --git a/src/OpenFOAM/db/Time/timeSelector.H b/src/OpenFOAM/db/Time/timeSelector.H index 0ea84d6403a549f35092ed019a820b985a79e9d8..9a36bcbc2404216e390ddec39b923b8302a2378d 100644 --- a/src/OpenFOAM/db/Time/timeSelector.H +++ b/src/OpenFOAM/db/Time/timeSelector.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,14 +28,13 @@ Class Foam::timeSelector Description - A List of scalarRange for selecting times. - The timeSelector provides a convenient means of selecting multiple - times. A typical use would be the following: + times. + A typical use would be the following: \verbatim timeSelector::addOptions(); - // add other options + ... #include "setRootCase.H" #include "createTime.H" instantList timeDirs = timeSelector::select0(runTime, args); @@ -46,11 +45,11 @@ Description } \endverbatim - The result program would receive \b -time, \b -latestTime, \b -constant - and \b -noZero options. The \b -constant option explicitly includes the + With the \c addOptions() method, application receives + \b -time, \b -latestTime, \b -constant and \b -noZero options. + The \b -constant option explicitly includes the \c constant/ directory in the time list and the \b -noZero option explicitly excludes the \c 0/ directory from the time list. - There may however also be many cases in which neither the \c constant/ directory nor the \c 0/ directory contain particularly relevant information. This might occur, for example, when post-processing @@ -66,6 +65,25 @@ Description \c 0/ directory from being included in the default time range and in the \b -latestTime selection. + It is also possible to use the timeSelector for setting a single time. + Typical use would be the following: + + \verbatim + timeSelector::addOptions_singleTime(); + ... + #include "setRootCase.H" + #include "createTime.H" + timeSelector::setTimeIfPresent(runTime, args); + \endverbatim + + With the \c addOptions_singleTime() method, application receives + \b -time, \b -latestTime, \b -constant options. In the case, + the \b -time option is intended to be a single value and not include + any ranges. + + The subsequent call to \c setTimeIfPresent() will scan the arguments + for relevant time options and use them to set the time. + SourceFiles timeSelector.C @@ -135,6 +153,14 @@ public: //- Add timeSelector options to argList::validOptions // + // \par Options added: + // - \c -constant + // - \c -time + // - \c -latestTime + // - \c -noZero + // - \c -withZero + // . + // // \param constant // Add the \b -constant option to include the \c constant/ directory // @@ -150,6 +176,16 @@ public: const bool withZero=false ); + //- Add single-time timeSelector options to argList::validOptions() + // + // \par Options added: + // - \c -constant + // - \c -time + // - \c -latestTime + // - \c -noZero (ignored) + // . + static void addOptions_singleTime(); + //- Return the set of times selected based on the argList options static instantList select ( @@ -167,14 +203,25 @@ public: const argList& args ); - //- If any time option provided return the set of times (as select0) - //- otherwise return just the current time. + //- If any time option provided return the set of times - + //- as per select0() - otherwise return just the current time. // Also set the runTime to the first instance static instantList selectIfPresent ( Time& runTime, const argList& args ); + + //- Set the runTime based on \c -constant (if present), + //- \c -time (value), or \c -latestTime. + // This method is a no-op if no relevant options have been specified. + static bool setTimeIfPresent + ( + Time& runTime, + const argList& args, + //! Force initial time (default: 0) even if no options specified + const bool forceInitial = false + ); }; diff --git a/src/OpenFOAM/db/dictionary/dictionary.C b/src/OpenFOAM/db/dictionary/dictionary.C index 68d1487899b7382c198ae6fcab7dcfbf1895b36e..024713199ac077ac90b10f893eac1c3d90608e4c 100644 --- a/src/OpenFOAM/db/dictionary/dictionary.C +++ b/src/OpenFOAM/db/dictionary/dictionary.C @@ -241,7 +241,7 @@ Foam::SHA1Digest Foam::dictionary::digest() const Foam::tokenList Foam::dictionary::tokens() const { // Serialize dictionary entries into a string - OStringStream os; + OCharStream os; // Process entries for (const entry& e : *this) @@ -250,7 +250,7 @@ Foam::tokenList Foam::dictionary::tokens() const } // String re-parsed as a list of tokens - return ITstream::parse(os.str()); + return ITstream::parse(os.view()); } diff --git a/src/OpenFOAM/db/dictionary/dictionary.H b/src/OpenFOAM/db/dictionary/dictionary.H index 0f8b64394f9dcfde7538951422fabfddba9abf81..e0c045b571ec815042e1333471dd988b5aabeca4 100644 --- a/src/OpenFOAM/db/dictionary/dictionary.H +++ b/src/OpenFOAM/db/dictionary/dictionary.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -183,8 +183,7 @@ public: pointer eptr_; - //- Construct for the given dictionary context. - // Allow implicit conversion + //- Implicit construct for the given dictionary context Searcher(dict_pointer dict) noexcept : dict_(dict), @@ -212,6 +211,7 @@ public: bool good() const noexcept { return eptr_; } //- True if entry was found + // \deprecated(2019-01) - prefer good() method bool found() const noexcept { return eptr_; } //- The containing dictionary context @@ -229,19 +229,32 @@ public: return (eptr_ && eptr_->dictPtr()); } + //- True if found entry is a stream. + bool isStream() const noexcept + { + return (eptr_ && eptr_->streamPtr()); + } + //- Pointer to the found entry as a dictionary, nullptr otherwise dict_pointer dictPtr() const noexcept { - return eptr_ ? eptr_->dictPtr() : nullptr; + return (eptr_ ? eptr_->dictPtr() : nullptr); } - //- Reference the found entry as a dictionary. - // (Error if not found, or not a dictionary). - dict_reference dict() const + //- Pointer to the found entry as a stream, nullptr otherwise + ITstream* streamPtr() const noexcept { - return eptr_->dict(); + return (eptr_ ? eptr_->streamPtr() : nullptr); } + //- Return the found entry as a dictionary. + //- Error if not found, or not a dictionary. + dict_reference dict() const { return eptr_->dict(); } + + //- Return the found entry as a ITstream. + //- Error if not found, or not a stream. + ITstream& stream() const { return eptr_->stream(); } + //- Permit an explicit cast to the other (const/non-const) searcher explicit operator const Searcher<!Const>&() const { @@ -249,16 +262,10 @@ public: } //- A pointer to the entry (nullptr if not found) - pointer operator->() const noexcept - { - return eptr_; - } + pointer operator->() const noexcept { return eptr_; } //- A reference to the entry (Error if not found) - reference operator*() const - { - return *eptr_; - } + reference operator*() const { return *eptr_; } }; @@ -557,7 +564,7 @@ public: ) const; //- Find and return a sub-dictionary pointer if present - //- (and a sub-dictionary) otherwise return nullptr. + //- (and it is a dictionary) otherwise return nullptr. // // \param keyword the keyword to search for // \param matchOpt search mode (default: non-recursive with patterns) @@ -570,7 +577,7 @@ public: ) const; //- Find and return a sub-dictionary pointer if present - //- (and a sub-dictionary) otherwise return nullptr. + //- (and it is a dictionary) otherwise return nullptr. // // \param keyword the keyword to search for // \param matchOpt search mode (default: non-recursive with patterns) @@ -582,13 +589,14 @@ public: enum keyType::option matchOpt = keyType::REGEX ); - //- Find a sub-dictionary. + //- Find and return an entry stream if present + //- (and it is a stream) otherwise return nullptr. // // \param keyword the keyword to search for // \param matchOpt search mode (default: non-recursive with patterns) // - // \return true if the sub-dictionary was found - inline bool isDict + // \return pointer to ITstream or a nullptr + inline ITstream* findStream ( const word& keyword, enum keyType::option matchOpt = keyType::REGEX @@ -1283,7 +1291,7 @@ public: // Shortcuts - when a templated classes also inherits from a dictionary - #undef defineDictionaryGetter + #undef defineDictionaryGetter #define defineDictionaryGetter(Func, Type) \ /*! \brief Same as get\<Type\>(const word&, keyType::option) */ \ Type Func \ @@ -1307,6 +1315,18 @@ public: // Housekeeping + //- Check for existence of a sub-dictionary. + //- Generally prefer findDict() for more flexibility. + FOAM_DEPRECATED_STRICT(2024-05, "findDict()") + bool isDict + ( + const word& keyword, + enum keyType::option matchOpt = keyType::REGEX + ) const + { + return static_cast<bool>(findDict(keyword, matchOpt)); + } + //- Same as getOrDefault() template<class T> FOAM_DEPRECATED_STRICT(2019-06, "getOrDefault()") @@ -1320,7 +1340,6 @@ public: return getOrDefault<T>(keyword, deflt, matchOpt); } - //- Same as getOrAdd() template<class T> FOAM_DEPRECATED_STRICT(2019-06, "getOrAdd()") diff --git a/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntry.C b/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntry.C index 3435ae809277f5a34e82890dd4323db6625c4f1e..0187d7061982c550b34fc4e4f3f8ea545fdf2e6f 100644 --- a/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntry.C +++ b/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntry.C @@ -70,7 +70,8 @@ Foam::label Foam::dictionaryEntry::endLineNumber() const Foam::ITstream& Foam::dictionaryEntry::stream() const { FatalIOErrorInFunction(*this) - << "Attempt to return dictionary entry as a primitive" + << "Attempt to return stream of primitives from a dictionary entry: " + << entry::keyword() << nl << abort(FatalIOError); // Need to return something - send back an empty stream diff --git a/src/OpenFOAM/db/dictionary/dictionaryI.H b/src/OpenFOAM/db/dictionary/dictionaryI.H index 612e53acbb60bfc86f62d4759d69a0a6a58b7834..61568506a391c0e9a8792dd72cf82a4dec1dc323 100644 --- a/src/OpenFOAM/db/dictionary/dictionaryI.H +++ b/src/OpenFOAM/db/dictionary/dictionaryI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -147,13 +147,13 @@ inline Foam::dictionary* Foam::dictionary::findDict } -inline bool Foam::dictionary::isDict +inline Foam::ITstream* Foam::dictionary::findStream ( const word& keyword, enum keyType::option matchOpt ) const { - return static_cast<bool>(findDict(keyword, matchOpt)); + return csearch(keyword, matchOpt).streamPtr(); } diff --git a/src/OpenFOAM/db/dictionary/dictionaryListEntry/dictionaryListEntry.H b/src/OpenFOAM/db/dictionary/dictionaryListEntry/dictionaryListEntry.H index f605257f0f6ae745873af3ec511c12b14f32e92e..f119db5e5002dd8f9503fdba80e235e8a2b65b1c 100644 --- a/src/OpenFOAM/db/dictionary/dictionaryListEntry/dictionaryListEntry.H +++ b/src/OpenFOAM/db/dictionary/dictionaryListEntry/dictionaryListEntry.H @@ -37,7 +37,6 @@ Description comment. Can be used to e.g. manipulate polyMesh/boundary files. SourceFiles - dictionaryListEntry.C dictionaryListEntryIO.C \*---------------------------------------------------------------------------*/ diff --git a/src/OpenFOAM/db/dictionary/entry/entry.C b/src/OpenFOAM/db/dictionary/entry/entry.C index c82da030ccb95d9d88a3e9c75a7f152eeefcc3f5..4554c48bd54c55dd9f77644746193169555a8ef1 100644 --- a/src/OpenFOAM/db/dictionary/entry/entry.C +++ b/src/OpenFOAM/db/dictionary/entry/entry.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,7 @@ License #include "entry.H" #include "dictionary.H" -#include "StringStream.H" +#include "SpanStream.H" #include "JobInfo.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -206,14 +206,23 @@ bool Foam::entry::operator==(const entry& e) const } // Compare contents (as strings) + OCharStream content1; + content1 << *this; - OStringStream oss1; - oss1 << *this; + OCharStream content2; + content2 << e; - OStringStream oss2; - oss2 << e; - - return oss1.str() == oss2.str(); + return + ( + content1.view().size() == content2.view().size() + && + std::equal + ( + content1.view().begin(), + content1.view().end(), + content2.view().begin() + ) + ); } diff --git a/src/OpenFOAM/db/dictionary/entry/entry.H b/src/OpenFOAM/db/dictionary/entry/entry.H index b61c4fd72f4a7e3a7a20b944d766f6a6a8808120..027423288972415a2bb99a82a81b7171fd885265 100644 --- a/src/OpenFOAM/db/dictionary/entry/entry.H +++ b/src/OpenFOAM/db/dictionary/entry/entry.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -193,16 +193,10 @@ public: // Member Functions //- Return keyword - const keyType& keyword() const noexcept - { - return keyword_; - } + const keyType& keyword() const noexcept { return keyword_; } //- Return non-const access to keyword - keyType& keyword() noexcept - { - return keyword_; - } + keyType& keyword() noexcept { return keyword_; } //- Return the entry name virtual const fileName& name() const = 0; @@ -220,40 +214,34 @@ public: virtual label endLineNumber() const = 0; - //- Return true if this entry is a stream - virtual bool isStream() const noexcept - { - return false; - } + //- True if this entry is a stream + virtual bool isStream() const noexcept { return this->streamPtr(); } + + //- Return pointer to token stream, if it is a primitive entry, + //- otherwise return nullptr + virtual ITstream* streamPtr() const noexcept { return nullptr; } //- Return token stream, if entry is a primitive entry virtual ITstream& stream() const = 0; - //- Return true if this entry is a dictionary - virtual bool isDict() const noexcept - { - return this->dictPtr(); - } + //- True if this entry is a dictionary + virtual bool isDict() const noexcept { return this->dictPtr(); } - //- Return pointer to dictionary, if entry is a dictionary. - // Return nullptr if the entry is not a dictionary. - virtual const dictionary* dictPtr() const noexcept - { - return nullptr; - } + //- Return pointer to dictionary, if entry is a dictionary, + //- otherwise return nullptr. + virtual const dictionary* dictPtr() const noexcept { return nullptr; } - //- Return non-const pointer to dictionary, if entry is a dictionary - // Return nullptr if the entry is not a dictionary. - virtual dictionary* dictPtr() noexcept - { - return nullptr; - } + //- Return non-const pointer to dictionary, if entry is a dictionary, + //- otherwise return nullptr. + virtual dictionary* dictPtr() noexcept { return nullptr; } - //- Return dictionary, if entry is a dictionary + //- Return dictionary, if entry is a dictionary, + //- otherwise Fatal. virtual const dictionary& dict() const = 0; - //- Return non-const access to dictionary, if entry is a dictionary + //- Return non-const access to dictionary, if entry is a dictionary, + //- otherwise Fatal. virtual dictionary& dict() = 0; diff --git a/src/OpenFOAM/db/dictionary/entry/entryIO.C b/src/OpenFOAM/db/dictionary/entry/entryIO.C index 1b5d9fab2aa218a8e4eab0047e18273bbb054347..9b2d8312fca7fcfb7f059e3f0e82336a6809d50a 100644 --- a/src/OpenFOAM/db/dictionary/entry/entryIO.C +++ b/src/OpenFOAM/db/dictionary/entry/entryIO.C @@ -247,7 +247,7 @@ bool Foam::entry::New if (finder.good()) { // Read as primitiveEntry - const keyType newKeyword(finder.ptr()->stream()); + const keyType newKeyword(finder.stream()); return parentDict.add ( diff --git a/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.C b/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.C index ba45223d962ce18ec6a31b507a5675d20c1b7c04..a3f80dd28f1df126a897cdfb0b126da47465018b 100644 --- a/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.C +++ b/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2023 Sergey Lesnik - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,7 +35,7 @@ namespace Foam { // Write tokens without keyword, suppress/ignore bad tokens. -// Mostly like primitiveEntry::write(os, false); +// Mostly like primitiveEntry::write(os, true); static void writeTokens(Ostream& os, const tokenList& toks) { @@ -56,11 +56,11 @@ static void writeTokens(Ostream& os, const tokenList& toks) started = true; } - // Output token with direct handling in Ostream(s), - // or use normal '<<' output operator + // Token output via direct handling in Ostream(s), + // or normal '<<' output operator if (!os.write(tok)) { - os << tok; + os << tok; } if (tok.isCharData()) @@ -73,18 +73,10 @@ static void writeTokens(Ostream& os, const tokenList& toks) if (s.starts_with("//") && !s.ends_with('\n')) { os << '\n'; - started = false; // already have newline as separator + started = false; // Does not need further space separator } } } - - // Always finish up with a newline? - // eg, - // - // if (started) - // { - // os << nl; - // } } } // End namespace Foam @@ -141,7 +133,10 @@ Foam::formattingEntry::formattingEntry void Foam::formattingEntry::write(Ostream& os) const { - writeTokens(os, *this); + if (active_) + { + writeTokens(os, *this); + } } diff --git a/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.H b/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.H index c672ac08ffc17463139c1dacc163d78439673cdf..fb517c258e419f87655b828a8aef59c62b7fdc2a 100644 --- a/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.H +++ b/src/OpenFOAM/db/dictionary/formattingEntry/formattingEntry.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2023 Sergey Lesnik - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,12 +51,17 @@ class formattingEntry : public primitiveEntry { + // Private Data + + //- The output visibility + bool active_ = true; + public: // Static Member Functions - //- Generate a default entry keyword: "__format-entry__NNN" - // The generated names are unlikely to collide with user dictionaries + //- Generate an entry keyword: "__format-entry__NNN". + //- The generated names are unlikely to collide with user dictionaries static keyType defaultName(label n) { return keyType @@ -99,6 +104,12 @@ public: formattingEntry(defaultName(n), std::move(content)) {} + //- Construct with token data, using a generated keyword + formattingEntry(const label n, token&& tok, bool visible=true) + : + primitiveEntry(defaultName(n), std::move(tok)), + active_(visible) + {} //- Clone the entry virtual autoPtr<entry> clone(const dictionary&) const @@ -112,6 +123,21 @@ public: // Member Functions + //- Set output visibility on/off. + // \return the previous value + bool active(bool on) noexcept + { + bool old(active_); + active_ = on; + return old; + } + + //- Get the output visibility + bool active() const noexcept + { + return active_; + } + //- Write content without the keyword. // Special properties: // - ignores any bad tokens on output. diff --git a/src/OpenFOAM/db/dictionary/functionEntries/evalEntry/evalEntry.C b/src/OpenFOAM/db/dictionary/functionEntries/evalEntry/evalEntry.C index db54680d06c29bbfc2f1c3511124b1b6c65af037..0b5cdd1ab4daefdc96fb01ea5fe7bdd6311bbc0e 100644 --- a/src/OpenFOAM/db/dictionary/functionEntries/evalEntry/evalEntry.C +++ b/src/OpenFOAM/db/dictionary/functionEntries/evalEntry/evalEntry.C @@ -198,7 +198,7 @@ Foam::tokenList Foam::functionEntries::evalEntry::evaluate // - #eval INT "expr" // - #eval INT { expr } // - #eval INT #{ expr #} - fieldWidth = max(1, tok.labelToken()); + fieldWidth = Foam::max(1, tok.labelToken()); is >> tok; } diff --git a/src/OpenFOAM/db/dictionary/functionEntries/removeEntry/removeEntry.C b/src/OpenFOAM/db/dictionary/functionEntries/removeEntry/removeEntry.C index 2126d797e3fb8de6d48d5868705f3b19027a4c05..3a3846080b9871445608bed060a327b9bdb69ec1 100644 --- a/src/OpenFOAM/db/dictionary/functionEntries/removeEntry/removeEntry.C +++ b/src/OpenFOAM/db/dictionary/functionEntries/removeEntry/removeEntry.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,7 @@ License #include "removeEntry.H" #include "dictionary.H" -#include "stringListOps.H" +#include "wordRes.H" #include "addToMemberFunctionSelectionTable.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -75,7 +75,7 @@ bool Foam::functionEntries::removeEntry::execute { // Remove by pattern const wordList dictKeys = parentDict.toc(); - const labelList indices = findStrings(key, dictKeys); + const labelList indices = wordRes::matching(key, dictKeys); for (const auto idx : indices) { diff --git a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.C b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.C index acc269dad3c76fc3b906df4b7547127c4f3331a0..7ec54d3db9edd903c94e5fa22c855993183eef0d 100644 --- a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.C +++ b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.C @@ -273,10 +273,18 @@ Foam::primitiveEntry::primitiveEntry // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +Foam::ITstream* Foam::primitiveEntry::streamPtr() const noexcept +{ + ITstream* ptr = const_cast<primitiveEntry*>(this); + ptr->seek(0); + return ptr; +} + + Foam::ITstream& Foam::primitiveEntry::stream() const { ITstream& is = const_cast<primitiveEntry&>(*this); - is.rewind(); + is.seek(0); return is; } diff --git a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.H b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.H index b2c1c82dc666f69910fc94103470d0b45f07d3f3..082ec95454916f8fd4da7a5ee12edc9b82082973 100644 --- a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.H +++ b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntry.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -181,11 +181,8 @@ public: return ITstream::endLineNumber(); } - //- Return true - this entry is a stream - virtual bool isStream() const noexcept - { - return true; - } + //- Return pointer to token stream for this primitive entry + virtual ITstream* streamPtr() const noexcept; //- Return token stream for this primitive entry virtual ITstream& stream() const; diff --git a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryIO.C b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryIO.C index b2cdc52299c9cdd73a767f9a5a34c1387b7f3442..25961e79247afce26fd83de52f44b8e74e6d50ba 100644 --- a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryIO.C +++ b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryIO.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -333,16 +333,16 @@ Foam::Ostream& Foam::operator<< e.print(os); - constexpr label nPrintTokens = 10; + const label nPrintTokens = Foam::min(label(10), label(e.size())); os << " primitiveEntry '" << e.keyword() << "' comprises "; - for (label i=0; i<min(e.size(), nPrintTokens); ++i) + for (label i = 0; i < nPrintTokens; ++i) { os << nl << " " << e[i].info(); } - if (e.size() > nPrintTokens) + if (10 < e.size()) { os << " ..."; } diff --git a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryTemplates.C b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryTemplates.C index 0342274870b915947e7d82a14d81d9890d8ce434..61be70d4e0d67d6913b21e59fcf883b4dbbea88d 100644 --- a/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryTemplates.C +++ b/src/OpenFOAM/db/dictionary/primitiveEntry/primitiveEntryTemplates.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,7 +28,8 @@ License #include "primitiveEntry.H" #include "dictionary.H" -#include "StringStream.H" +#include "SpanStream.H" +#include "StringStream.H" // Legacy include, perhaps expected elsewhere // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -37,9 +39,9 @@ Foam::primitiveEntry::primitiveEntry(const keyType& key, const T& val) entry(key), ITstream(IOstreamOption(), key) { - OStringStream os; + OCharStream os; os << val << token::END_STATEMENT; - IStringStream is(os.str()); + ISpanStream is(os.view()); readEntry(dictionary::null, is); } diff --git a/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C b/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C index d7fd8eef9c22b7088aac6d8a9c390e3f355f5591..2e1d2cabc1b9dd4309320107c2ea2be4f18d34fe 100644 --- a/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C +++ b/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -376,9 +376,9 @@ void Foam::dlLibraryTable::close(bool verbose) } -bool Foam::dlLibraryTable::append(const fileName& libName) +bool Foam::dlLibraryTable::push_back(const fileName& libName) { - if (libName.empty() || libNames_.found(libName)) + if (libName.empty() || libNames_.contains(libName)) { return false; } @@ -390,13 +390,13 @@ bool Foam::dlLibraryTable::append(const fileName& libName) } -Foam::label Foam::dlLibraryTable::append(const UList<fileName>& libNames) +Foam::label Foam::dlLibraryTable::push_back(const UList<fileName>& libNames) { label nAdded = 0; for (const fileName& libName : libNames) { - if (append(libName)) + if (push_back(libName)) { ++nAdded; } diff --git a/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.H b/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.H index f3ca9d581c19fd83e8bc63f9daf0638e49de9686..1b9a445d2a33e06d0c9208948c252c07a576c2e5 100644 --- a/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.H +++ b/src/OpenFOAM/db/dynamicLibrary/dlLibraryTable/dlLibraryTable.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -227,13 +227,13 @@ public: List<fileName> loaded() const; //- Names of the libraries in use, or requested - const UList<fileName>& names() const + const UList<fileName>& names() const noexcept { return libNames_; } //- Pointers to the libraries in use. Access with caution. - const UList<void*>& pointers() const + const UList<void*>& pointers() const noexcept { return libPtrs_; } @@ -241,16 +241,18 @@ public: //- Clears the table, without attempting to close the libraries void clear(); + //- Add to the list of names, but do not yet open. - // Ignores duplicate names. - bool append(const fileName& libName); + // Ignores empty and duplicate names. + bool push_back(const fileName& libName); //- Add to the list of names, but do not yet open. - // Ignores duplicate names. - label append(const UList<fileName>& libNames); + // Ignores empty and duplicate names. + label push_back(const UList<fileName>& libNames); + //- Open named, but unopened libraries. - //- These names will normally have been added with the append() method. + //- These names will normally have been added with push_back(). bool open(bool verbose = true); //- Open the named library, warn by default if problems occur. @@ -312,6 +314,23 @@ public: //- Return info proxy, //- used to print library table information to a stream InfoProxy<dlLibraryTable> info() const noexcept { return *this; } + + + // Housekeeping + + //- Add to the list of names, but do not yet open. + //FOAM_DEPRECATED_FOR(2024-04, "push_back()") + bool append(const fileName& libName) + { + return push_back(libName); + } + + //- Add to the list of names, but do not yet open. + //FOAM_DEPRECATED_FOR(2024-04, "push_back()") + label append(const UList<fileName>& libNames) + { + return push_back(libNames); + } }; diff --git a/src/OpenFOAM/db/error/IOerror.C b/src/OpenFOAM/db/error/IOerror.C index ebde730a0957ead031f207a99c451bae7e0f3b03..23029959ffcb24ae3c37985a59eb61e891b04190 100644 --- a/src/OpenFOAM/db/error/IOerror.C +++ b/src/OpenFOAM/db/error/IOerror.C @@ -30,15 +30,15 @@ Note \*---------------------------------------------------------------------------*/ #include "error.H" -#include "StringStream.H" #include "fileName.H" #include "dictionary.H" #include "JobInfo.H" #include "Pstream.H" +#include "StringStream.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::IOerror::IOerror(const string& title) +Foam::IOerror::IOerror(const char* title) : error(title), ioFileName_("unknown"), @@ -171,7 +171,7 @@ void Foam::IOerror::SafeFatalIOError const char* sourceFileName, const int sourceFileLineNumber, const IOstream& ioStream, - const string& msg + const std::string& msg ) { if (JobInfo::constructed) @@ -182,10 +182,11 @@ void Foam::IOerror::SafeFatalIOError sourceFileName, sourceFileLineNumber, ioStream - ) << msg << Foam::exit(FatalIOError); + ) << msg.c_str() << Foam::exit(FatalIOError); } else { + // Without (openfoam=API patch=NN) since it is rarely used std::cerr << nl << "--> FOAM FATAL IO ERROR:" << nl @@ -225,7 +226,7 @@ void Foam::IOerror::exiting(const int errNo, const bool isAbort) IOerror errorException(*this); // Reset the message buffer for the next error message - messageStreamPtr_->reset(); + error::clear(); throw errorException; return; @@ -297,7 +298,7 @@ void Foam::IOerror::write(Ostream& os, const bool withTitle) const const label lineNo = sourceFileLineNumber(); - if (IOerror::level >= 2 && lineNo && !functionName().empty()) + if (messageStream::level >= 2 && lineNo && !functionName().empty()) { os << nl << nl << " From " << functionName().c_str() << nl; diff --git a/src/OpenFOAM/db/error/error.C b/src/OpenFOAM/db/error/error.C index 120ac2427a2eee52158f14bdcd40928c6367343e..c4f327c95d42915ee2343902330f92ebd7a52ae4 100644 --- a/src/OpenFOAM/db/error/error.C +++ b/src/OpenFOAM/db/error/error.C @@ -123,7 +123,7 @@ bool Foam::error::useAbort() // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::error::error(const string& title) +Foam::error::error(const char* title) : std::exception(), messageStream(title, messageStream::FATAL), @@ -131,7 +131,7 @@ Foam::error::error(const string& title) sourceFileName_("unknown"), sourceFileLineNumber_(0), throwing_(false), - messageStreamPtr_(new OStringStream()) + messageStreamPtr_(nullptr) {} @@ -143,7 +143,7 @@ Foam::error::error(const dictionary& errDict) sourceFileName_(errDict.get<string>("sourceFileName")), sourceFileLineNumber_(errDict.get<label>("sourceFileLineNumber")), throwing_(false), - messageStreamPtr_(new OStringStream()) + messageStreamPtr_(nullptr) {} @@ -155,8 +155,13 @@ Foam::error::error(const error& err) sourceFileName_(err.sourceFileName_), sourceFileLineNumber_(err.sourceFileLineNumber_), throwing_(err.throwing_), - messageStreamPtr_(new OStringStream(*err.messageStreamPtr_)) -{} + messageStreamPtr_(nullptr) +{ + if (err.messageStreamPtr_ && (err.messageStreamPtr_->count() > 0)) + { + messageStreamPtr_.reset(new OStringStream(*err.messageStreamPtr_)); + } +} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // @@ -176,7 +181,7 @@ Foam::OSstream& Foam::error::operator() sourceFileName_.clear(); sourceFileLineNumber_ = -1; - return operator OSstream&(); + return this->stream(); } @@ -251,7 +256,7 @@ void Foam::error::exiting(const int errNo, const bool isAbort) error errorException(*this); // Reset the message buffer for the next error message - messageStreamPtr_->reset(); + error::clear(); throw errorException; return; @@ -322,8 +327,11 @@ void Foam::error::simpleExit(const int errNo, const bool isAbort) Foam::OSstream& Foam::error::stream() { - // Don't need (messageStreamPtr_) check - always allocated - if (!messageStreamPtr_->good()) + if (!messageStreamPtr_) + { + messageStreamPtr_ = std::make_unique<OStringStream>(); + } + else if (!messageStreamPtr_->good()) { Perr<< nl << "error::stream() : error stream has failed" @@ -337,13 +345,21 @@ Foam::OSstream& Foam::error::stream() Foam::string Foam::error::message() const { - return messageStreamPtr_->str(); + if (messageStreamPtr_) + { + return messageStreamPtr_->str(); + } + + return string(); } void Foam::error::clear() const { - return messageStreamPtr_->reset(); + if (messageStreamPtr_) + { + messageStreamPtr_->reset(); + } } @@ -384,7 +400,7 @@ void Foam::error::write(Ostream& os, const bool withTitle) const const label lineNo = sourceFileLineNumber(); - if (error::level >= 2 && lineNo && !functionName().empty()) + if (messageStream::level >= 2 && lineNo && !functionName().empty()) { os << nl << nl << " From " << functionName().c_str() << nl; diff --git a/src/OpenFOAM/db/error/error.H b/src/OpenFOAM/db/error/error.H index 21dfea45f1f6b5a882e28013b97d8bf75ebdde1d..22832dd8e4af951d156b0a293203f842515c509a 100644 --- a/src/OpenFOAM/db/error/error.H +++ b/src/OpenFOAM/db/error/error.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -120,7 +120,10 @@ public: // Constructors //- Construct from title string - explicit error(const string& title); + explicit error(const char* title); + + //- Construct from title string + explicit error(const std::string& title) : error(title.c_str()) {} //- Construct from dictionary explicit error(const dictionary& errDict); @@ -161,7 +164,7 @@ public: //- The accumulated error message string message() const; - //- Clear any messages + //- Clear any accumulated error messages void clear() const; //- The currently defined function name for output messages @@ -315,7 +318,10 @@ public: // Constructors //- Construct from title string - explicit IOerror(const string& title); + explicit IOerror(const char* title); + + //- Construct from title string + explicit IOerror(const std::string& title) : IOerror(title.c_str()) {} //- Construct from dictionary explicit IOerror(const dictionary& errDict); @@ -412,7 +418,7 @@ public: const char* sourceFileName, const int sourceFileLineNumber, const IOstream& ioStream, - const string& msg + const std::string& msg ); diff --git a/src/OpenFOAM/db/error/messageStream.C b/src/OpenFOAM/db/error/messageStream.C index 0953f53d75eb5a344aa7b36bf7c25d2791ab1ca0..04a3e907bdcda13cae30b1265ad1c14509387df1 100644 --- a/src/OpenFOAM/db/error/messageStream.C +++ b/src/OpenFOAM/db/error/messageStream.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,22 +49,32 @@ int Foam::infoDetailLevel(1); Foam::messageStream::messageStream ( - const string& title, - const errorSeverity severity, - const int maxErrors + const char* title, + errorSeverity severity, + int maxErrors, + bool use_stderr ) : - title_(title), + title_(), severity_(severity), maxErrors_(maxErrors), errorCount_(0) -{} +{ + if (title) + { + title_ = title; + } + if (use_stderr) + { + severity_ |= errorSeverity::USE_STDERR; + } +} Foam::messageStream::messageStream(const dictionary& dict) : title_(dict.get<string>("title")), - severity_(FATAL), + severity_(errorSeverity::FATAL), maxErrors_(0), errorCount_(0) {} @@ -72,54 +82,56 @@ Foam::messageStream::messageStream(const dictionary& dict) // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::OSstream& Foam::messageStream::stream(OSstream* alternative) +Foam::OSstream& Foam::messageStream::stream +( + OSstream* alternative +) { if (level) { // Serlal (master only) output? const bool serialOnly ( - ( - severity_ == INFO - || severity_ == INFO_STDERR - || severity_ == WARNING - ) - || !UPstream::parRun() + !UPstream::parRun() + || ((severity_ & ~errorSeverity::USE_STDERR) == errorSeverity::INFO) + || ((severity_ & ~errorSeverity::USE_STDERR) == errorSeverity::WARNING) ); if (serialOnly && (UPstream::parRun() && !UPstream::master())) { - return Snull; // Non-serial, non-master: exit early + return Snull; // Non-serial, non-master: exit early } // Use stderr instead of stdout: // - requested via static <redirect> variable - // - explicit: INFO_STDERR + // - explicit: with USE_STDERR mask // - inferred: WARNING -> stderr when infoDetailLevel == 0 - const bool useStderr = + const bool use_stderr = ( (redirect == 2) - || (severity_ == INFO_STDERR) - || (severity_ == WARNING && Foam::infoDetailLevel == 0) + || (severity_ & errorSeverity::USE_STDERR) + || (severity_ == errorSeverity::WARNING && Foam::infoDetailLevel == 0) ); + OSstream* osptr; if (serialOnly) { // Use supplied alternative? Valid for serial only - osptr = alternative; - if (!osptr) - { - osptr = (useStderr ? &Serr : &Sout); - } + osptr = + ( + alternative + ? alternative + : (use_stderr ? &Serr : &Sout) + ); } else { // Non-serial - osptr = (useStderr ? &Perr : &Pout); + osptr = (use_stderr ? &Perr : &Pout); } if (!title_.empty()) @@ -145,8 +157,8 @@ Foam::OSstream& Foam::messageStream::masterStream(const label communicator) { if (UPstream::warnComm >= 0 && communicator != UPstream::warnComm) { - Pout<< "** messageStream with comm:" << communicator << endl; - error::printStack(Pout); + Perr<< "** messageStream with comm:" << communicator << endl; + error::printStack(Perr); } if (communicator == UPstream::worldComm || UPstream::master(communicator)) @@ -220,13 +232,18 @@ Foam::OSstream& Foam::messageStream::deprecated } } - os << nl; + os << nl; if (functionName) // nullptr check { - os << " From " << functionName << nl - << " in file " << sourceFileName - << " at line " << sourceFileLineNumber << nl; + { + os << " From " << functionName << nl; + } + if (sourceFileName) + { + os << " in file " << sourceFileName + << " at line " << sourceFileLineNumber << nl; + } } os << " "; @@ -279,13 +296,14 @@ Foam::OSstream& Foam::messageStream::operator() const label ioEndLineNumber ) { - OSstream& os = this->stream(); + OSstream& os = operator() + ( + functionName, + sourceFileName, + sourceFileLineNumber + ); - os << nl - << " From " << functionName << nl - << " in file " << sourceFileName - << " at line " << sourceFileLineNumber << nl - << " Reading \"" << ioFileName.c_str() << '"'; + os << "Reading \"" << ioFileName.c_str() << '"'; if (ioStartLineNumber >= 0) { @@ -345,9 +363,19 @@ Foam::OSstream& Foam::messageStream::operator() // * * * * * * * * * * * * * * * Global Variables * * * * * * * * * * * * * // -Foam::messageStream Foam::Info("", Foam::messageStream::INFO); +Foam::messageStream Foam::Info +( + "", // No title + Foam::messageStream::INFO +); -Foam::messageStream Foam::InfoErr("", Foam::messageStream::INFO_STDERR); +Foam::messageStream Foam::InfoErr +( + "", // No title + Foam::messageStream::INFO, + 0, + true // use_stderr = true +); Foam::messageStream Foam::Warning ( diff --git a/src/OpenFOAM/db/error/messageStream.H b/src/OpenFOAM/db/error/messageStream.H index be382ec53636f58b22478c8bc24c1235bb980b4e..9cc61264f0dc6c3002c3377729e9c2cb7ca8bc7e 100644 --- a/src/OpenFOAM/db/error/messageStream.H +++ b/src/OpenFOAM/db/error/messageStream.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,16 +77,18 @@ class messageStream public: //- Message type, error severity flags - enum errorSeverity + enum errorSeverity : int { // Serial-only output: INFO = 1, //!< General information output (stdout) - INFO_STDERR, //!< General information output (stderr) WARNING, //!< Warning of possible problem. // Parallel-aware output: SERIOUS, //!< A serious problem - eg, data corruption. - FATAL //!< A fatal error. + FATAL, //!< A fatal error. + + //! Bitmask for stderr output (for the above enums) + USE_STDERR = 0x80 }; @@ -94,9 +96,16 @@ protected: // Protected Data + //- The title of this error type string title_; - errorSeverity severity_; + + //- The message type / error severity, possibly with USE_STDERR mask + int severity_; + + //- The maximum number of errors before program termination int maxErrors_; + + //- The current number of errors counted int errorCount_; @@ -124,12 +133,26 @@ public: //- Construct from components messageStream ( - const string& title, - const errorSeverity severity, - const int maxErrors = 0 + const char* title, + errorSeverity severity, + int maxErrors = 0, + bool use_stderr = false ); - //- Construct as Fatal from dictionary, extracting the 'title'. + //- Construct from components + messageStream + ( + const std::string& title, + errorSeverity severity, + int maxErrors = 0, + bool use_stderr = false + ) + : + messageStream(title.c_str(), severity, maxErrors, use_stderr) + {} + + + //- Construct from dictionary as Fatal, extracting 'title'. explicit messageStream(const dictionary& dict); @@ -160,9 +183,11 @@ public: // Output //- Return OSstream for output operations. - //- Use the \c alternative stream for serial-only output - //- if it is a valid pointer. - OSstream& stream(OSstream* alternative = nullptr); + OSstream& stream + ( + //! An alternative output stream (serial-only) + OSstream* alternative = nullptr + ); //- Return OSstream for output operations on the master process only, //- Snull on other processes. @@ -177,11 +202,12 @@ public: OSstream& deprecated ( const int afterVersion, - const char* functionName, - const char* sourceFileName, + const char* functionName = nullptr, + const char* sourceFileName = nullptr, const int sourceFileLineNumber = 0 ); + //- Implicit cast to OSstream for << operations operator OSstream&() { @@ -261,7 +287,7 @@ public: //- Global for selective suppression of Info output. // This is normally accessed implicitly via the DetailInfo macro and is often -// associated applications with suppressed banners. For example, +// associated with applications with suppressed banners. For example, // // \code // DetailInfo << "Hello, I'm running from program xyz" << nl; diff --git a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C index ae8aed9e057919cac8990696e0eb16b97c4763e8..806e9659b46ffdfec3f6cfca13ba1cbbfcec713d 100644 --- a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C +++ b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.C @@ -651,7 +651,7 @@ bool Foam::functionObjectList::execute(bool writeProperties) addProfiling ( fo, - "functionObject::" + objName + "::execute" + "functionObject::", objName, "::execute" ); ok = funcObj.execute() && ok; @@ -697,7 +697,7 @@ bool Foam::functionObjectList::execute(bool writeProperties) addProfiling ( fo, - "functionObject::" + objName + ":write" + "functionObject::", objName, ":write" ); ok = funcObj.write() && ok; @@ -753,7 +753,7 @@ bool Foam::functionObjectList::execute(bool writeProperties) addProfiling ( fo, - "functionObject::" + objName + "::execute" + "functionObject::", objName, "::execute" ); ok = funcObj.execute() && ok; @@ -764,7 +764,7 @@ bool Foam::functionObjectList::execute(bool writeProperties) addProfiling ( fo, - "functionObject::" + objName + ":write" + "functionObject::", objName, ":write" ); ok = funcObj.write() && ok; @@ -822,7 +822,7 @@ bool Foam::functionObjectList::execute { for (functionObject& funcObj : functions()) { - if (stringOps::match(functionNames, funcObj.name())) + if (wordRes::match(functionNames, funcObj.name())) { // Probably do not need try/catch... @@ -863,7 +863,7 @@ bool Foam::functionObjectList::end() try { - addProfiling(fo, "functionObject::" + objName + "::end"); + addProfiling(fo, "functionObject::", objName, "::end"); ok = funcObj.end() && ok; } catch (const Foam::error& err) @@ -925,7 +925,7 @@ bool Foam::functionObjectList::adjustTimeStep() addProfiling ( fo, - "functionObject::" + objName + "::adjustTimeStep" + "functionObject::", objName, "::adjustTimeStep" ); ok = funcObj.adjustTimeStep() && ok; @@ -1090,7 +1090,7 @@ bool Foam::functionObjectList::read() addProfiling ( fo, - "functionObject::" + objPtr->name() + "::read" + "functionObject::", objPtr->name(), "::read" ); enabled = objPtr->read(dict); @@ -1117,7 +1117,7 @@ bool Foam::functionObjectList::read() addProfiling ( fo, - "functionObject::" + key + "::new" + "functionObject::", key, "::new" ); if (needsTimeControl) { diff --git a/src/OpenFOAM/db/functionObjects/regionFunctionObject/regionFunctionObjectTemplates.C b/src/OpenFOAM/db/functionObjects/regionFunctionObject/regionFunctionObjectTemplates.C index c1c0f740b64a8f0d6f54633a2c7762c5dff97037..0c295eca2bff33cce1fd92b6b7e36a36f9a9f49e 100644 --- a/src/OpenFOAM/db/functionObjects/regionFunctionObject/regionFunctionObjectTemplates.C +++ b/src/OpenFOAM/db/functionObjects/regionFunctionObject/regionFunctionObjectTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -139,7 +139,7 @@ bool Foam::functionObjects::regionFunctionObject::store } else { - obr().objectRegistry::store(tfield.ptr()); + regIOobject::store(tfield.ptr()); } } else @@ -153,7 +153,7 @@ bool Foam::functionObjects::regionFunctionObject::store fieldName = tfield().name(); } - obr().objectRegistry::store(tfield.ptr()); + regIOobject::store(tfield.ptr()); } return true; @@ -179,8 +179,11 @@ bool Foam::functionObjects::regionFunctionObject::storeInDb } else { - tfield.ref().rename(fieldName); - obr.objectRegistry::store(tfield.ptr()); + if (fieldName.size() && fieldName != tfield().name()) + { + tfield.ref().rename(fieldName); + } + regIOobject::store(tfield.ptr()); } return true; diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.C b/src/OpenFOAM/db/objectRegistry/objectRegistry.C index 76b7bad5cb7f54fee93aedcda434f263c7ca1f26..2264011936b0a80830dbcb437b02178cb7ae79d8 100644 --- a/src/OpenFOAM/db/objectRegistry/objectRegistry.C +++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2019 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -151,6 +151,60 @@ Foam::HashTable<Foam::wordHashSet> Foam::objectRegistry::classes() const } +Foam::IOobject Foam::objectRegistry::newIOobject +( + const word& name, + IOobjectOption ioOpt +) const +{ + return IOobject + ( + name, + time().timeName(), // instance + *this, + ioOpt + ); +} + + +Foam::IOobject Foam::objectRegistry::newIOobject +( + const word& name, + IOobjectOption::readOption rOpt, + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption regOpt +) const +{ + return IOobject + ( + name, + time().timeName(), // instance + *this, + IOobjectOption(rOpt, wOpt, regOpt) + ); +} + + +// FUTURE? +// +// Foam::IOobject Foam::objectRegistry::newIOobject_constant +// ( +// const word& name, +// IOobjectOption::readOption rOpt, +// IOobjectOption::writeOption wOpt, +// IOobjectOption::registerOption regOpt +// ) const +// { +// return IOobject +// ( +// name, +// time().constant(), // instance +// *this, +// IOobjectOption(rOpt, wOpt, regOpt) +// ); +// } + + Foam::label Foam::objectRegistry::count(const char* clsName) const { // No nullptr check - only called with string literals diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.H b/src/OpenFOAM/db/objectRegistry/objectRegistry.H index 6110ab36ad08e31f89944c0d525a2ffdeed9adbf..9fed2b2c2c92e89af1e892c00fd14054d0dfdc74 100644 --- a/src/OpenFOAM/db/objectRegistry/objectRegistry.H +++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2019 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,11 +46,6 @@ SourceFiles #include "wordRes.H" #include "Pair.H" -// Historically included by objectRegistryTemplates (until NOV-2018), -// but not used by objectRegistry directly. -// Leave here for now to avoid a missing include in other bits of code. -#include "stringListOps.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -239,6 +234,31 @@ public: } + // Helper Functions + + //- Create an IOobject at the current time instance (timeName) + //- with the specified options + IOobject newIOobject + ( + const word& name, //!< The object name + IOobjectOption ioOpt //!< The IOobject options + ) const; + + //- Create an IOobject at the current time instance (timeName). + // By default the object is NO_READ/NO_WRITE/NO_REGISTER + IOobject newIOobject + ( + //! The object name + const word& name, + //! The read option (default: NO_READ) + IOobjectOption::readOption rOpt = IOobjectOption::NO_READ, + //! The write option (default: NO_WRITE) + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + //! The register option (default: NO_REGISTER) + IOobjectOption::registerOption regOpt = IOobjectOption::NO_REGISTER + ) const; + + // Summary of classes //- A summary hash of classes used and their associated object names. diff --git a/src/OpenFOAM/db/options/IOstreamOption.C b/src/OpenFOAM/db/options/IOstreamOption.C index 32e588aaa259cb2e31b99d72e394e1a201c1c852..ad60be85ddb861ac3a666ee9ef0c5da09c3ab7bc 100644 --- a/src/OpenFOAM/db/options/IOstreamOption.C +++ b/src/OpenFOAM/db/options/IOstreamOption.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -70,7 +70,7 @@ Foam::IOstreamOption::floatFormatEnum if (!fmtName.empty()) { - const auto iter = floatFormatNames.cfind(fmtName); + auto iter = floatFormatNames.cfind(fmtName); if (iter.good()) { @@ -79,10 +79,19 @@ Foam::IOstreamOption::floatFormatEnum // Fall-through to warning - WarningInFunction - << "Unknown float format specifier '" << fmtName - << "' using '" << floatFormatNames[deflt] - << "' from " << floatFormatNames << nl; + auto& err = WarningInFunction + << "Unknown float format '" << fmtName << "' using "; + + iter = floatFormatNames.cfind(deflt); + if (iter.good()) + { + err << '\'' << iter.key() << '\''; + } + else + { + err << "value=" << int(deflt); + } + err << " from " << floatFormatNames << nl; } return deflt; @@ -112,7 +121,7 @@ Foam::IOstreamOption::formatEnum if (!fmtName.empty()) { - const auto iter = formatNames.cfind(fmtName); + auto iter = formatNames.cfind(fmtName); if (iter.good()) { @@ -121,10 +130,19 @@ Foam::IOstreamOption::formatEnum // Fall-through to warning - WarningInFunction - << "Unknown stream format specifier '" << fmtName - << "' using '" << formatNames[deflt] - << "' from " << formatNames << nl; + auto& err = WarningInFunction + << "Unknown stream format '" << fmtName << "' using "; + + iter = formatNames.cfind(deflt); + if (iter.good()) + { + err << '\'' << iter.key() << '\''; + } + else + { + err << "value=" << int(deflt); + } + err << " from " << formatNames << nl; } return deflt; diff --git a/src/OpenFOAM/db/options/IOstreamOption.H b/src/OpenFOAM/db/options/IOstreamOption.H index 15f243eb245334cf7cef2b2f57098a35b9954a48..5c9f6ebb8cb7c74c20c318f2d063c6d7751183e0 100644 --- a/src/OpenFOAM/db/options/IOstreamOption.H +++ b/src/OpenFOAM/db/options/IOstreamOption.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,9 +36,6 @@ Description The compression (UNCOMPRESSED | COMPRESSED) is typically controlled by switch values (true/false, on/off, ...). - Additionally, some enumerations are defined (APPEND, NON_APPEND, ...) - that are useful, verbose alternatives to bool values. - SourceFiles IOstreamOption.C @@ -84,11 +81,14 @@ public: COMPRESSED //!< compression = true }; - //- File appending (NON_APPEND | APPEND) + //- File appending (NO_APPEND | APPEND_APP | APPEND_ATE) enum appendType : char { - NON_APPEND = 0, //!< append = false - APPEND //!< append = true + NO_APPEND = 0, //!< no append (truncates existing) + APPEND_APP, //!< append (seek end each write) + APPEND_ATE, //!< append (seek end after open) + NON_APPEND = NO_APPEND, //!< old name for NO_APPEND + APPEND = APPEND_APP //!< old name for APPEND_APP }; //- Atomic operations (output) diff --git a/src/OpenFOAM/db/regIOobject/regIOobject.H b/src/OpenFOAM/db/regIOobject/regIOobject.H index 9cce9137e7d714619578bc8fb73221d4c90ef8b9..76fbd3ea2ec3c8b7053f93fbf6bfe18f80d074b6 100644 --- a/src/OpenFOAM/db/regIOobject/regIOobject.H +++ b/src/OpenFOAM/db/regIOobject/regIOobject.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,8 +33,10 @@ Description SourceFiles regIOobject.C + regIOobjectI.H regIOobjectRead.C regIOobjectWrite.C + regIOobjectMetaData.C \*---------------------------------------------------------------------------*/ @@ -170,7 +172,7 @@ public: // or was newly registered bool checkIn(); - //- Remove all file watches and remove object from registry + //- Remove object from registry, and remove all file watches // \return true if object was registered and was removed bool checkOut(); @@ -195,6 +197,12 @@ public: template<class Type> inline static Type& store(Type* p); + //- Transfer pointer ownership to its registry. + // Resets (clears) the parameter. + // \return reference to the stored object + template<class Type> + inline static Type& store(std::unique_ptr<Type>&& ptr); + //- Transfer pointer ownership to its registry. // Resets (clears) the parameter. // \return reference to the stored object diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectI.H b/src/OpenFOAM/db/regIOobject/regIOobjectI.H index 1b4c632e87304d7426e7d70a4aa035e62ce11490..1f04bd68f0ce54fac79de743f114d4de8eb8cf85 100644 --- a/src/OpenFOAM/db/regIOobject/regIOobjectI.H +++ b/src/OpenFOAM/db/regIOobject/regIOobjectI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -80,6 +80,14 @@ inline Type& Foam::regIOobject::store(Type* p) } +template<class Type> +inline Type& Foam::regIOobject::store(std::unique_ptr<Type>&& ptr) +{ + // Pass management to objectRegistry + return store(ptr.release()); +} + + template<class Type> inline Type& Foam::regIOobject::store(autoPtr<Type>& ptr) { @@ -182,6 +190,7 @@ inline Type& Foam::regIOobject::store(tmp<Type>&& ptr) inline void Foam::regIOobject::release(const bool unregister) noexcept { + // Note: could also return the old ownedByRegistry_ value ownedByRegistry_ = false; if (unregister) { diff --git a/src/OpenFOAM/db/typeInfo/typeInfo.H b/src/OpenFOAM/db/typeInfo/typeInfo.H index c6897a20644209d4c6c86bf1f772e4f5c46c35b7..5d9157d7b00ef50014b469cb1432b0128a9ff8ff 100644 --- a/src/OpenFOAM/db/typeInfo/typeInfo.H +++ b/src/OpenFOAM/db/typeInfo/typeInfo.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -24,9 +24,6 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Typedef - Foam::typeInfo - Description Basic run-time type information using word as the type's name. Used to enhance the standard RTTI to cover I/O. @@ -36,18 +33,20 @@ Description type() \endcode - The reference type cast template function: + The isA functions: \code - refCast<Type>(r) + isA<Type>(obj) + isA_constCast<Type>(obj) \endcode - wraps dynamic_cast to handle failed casts and generate a FatalError. + which return const or non-const pointers to the cast object, + nullptr if cast is not possible (can be tested as a bool). - The isA function: + The reference type cast template function: \code - isA<Type>(obj) + refCast<Type>(obj) + refConstCast<Type>(obj) \endcode - returns const pointer to the cast object, nullptr if cast is not possible - (can be tested as a bool). + wraps dynamic_cast to handle failed casts and generate a FatalError. \*---------------------------------------------------------------------------*/ @@ -80,9 +79,9 @@ namespace Foam // * * * * * * * * * * * * * * * Global Functions * * * * * * * * * * * * * // -//- Check if dynamic_cast to \c Type is possible. -// The template types should \em not include any \c const qualifier. -// \returns const pointer to cast object, nullptr if cast is not possible +//- Attempt dynamic_cast to \c Type. +// \note The template types should \em not include any \c const qualifier. +// \return const pointer to cast object, nullptr if cast is not possible template<class Type, class U> inline const Type* isA(const U& obj) { @@ -91,6 +90,17 @@ inline const Type* isA(const U& obj) } +//- Attempt dynamic_cast to \c Type followed by a const_cast of the result. +// \note The template types should \em not include any \c const qualifier. +// \return non-const pointer to cast object, nullptr if cast is not possible +template<class Type, class U> +inline Type* isA_constCast(const U& obj) +{ + const U* p = &obj; + return const_cast<Type*>(dynamic_cast<const Type*>(p)); +} + + //- Check if typeid of the object and \c Type are identical template<class Type, class U> inline bool isType(const U& obj) @@ -139,10 +149,10 @@ inline Type& dynamicCast(U& obj, const dictionary& dict) } -//- A dynamic_cast (for references). -//- Generates a FatalError on failed casts and uses the virtual type() -//- method for error messages. -// Respects the constness of the template types. +//- A dynamic_cast (for references) to \c Type reference. +// \note Respects the constness of the template types. +// \return reference to cast object, or FatalError on failed casts +// and use the virtual type() method for error messages. template<class Type, class U> inline Type& refCast(U& obj) { @@ -161,6 +171,29 @@ inline Type& refCast(U& obj) } +//- A dynamic_cast (for const references) to \c Type reference, +//- followed by a const_cast of the result. +// \note The template types should \em not include any \c const qualifier. +// \return non-const reference to cast object, or FatalError on failed casts +// and use the virtual type() method for error messages. +template<class Type, class U> +inline Type& refConstCast(const U& obj) +{ + const U* p = &obj; + const Type* casted = dynamic_cast<const Type*>(p); + + if (!casted) + { + FatalErrorInFunction + << "Attempt to cast type " << obj.type() + << " to type " << Type::typeName + << abort(FatalError); + } + + return const_cast<Type&>(*casted); +} + + //- A dynamic_cast (for references) that generates FatalIOError on failed casts, //- uses the virtual type() method for error messages. // Respects the constness of the template types. @@ -205,6 +238,8 @@ inline Type& refCast(U& obj, const label index) } +// * * * * * * * * * * * * * * * * Functors * * * * * * * * * * * * * * * * // + //- Test if dynamic_cast to Type is possible, as a functor template<class Type> struct isAOp diff --git a/src/OpenFOAM/expressions/Function1/Function1Expression.C b/src/OpenFOAM/expressions/Function1/Function1Expression.C index dd45c913e74692d7642a1bf38c869107d909256a..532344efa8608200f893fb7dbcacc3a33ad7bcf4 100644 --- a/src/OpenFOAM/expressions/Function1/Function1Expression.C +++ b/src/OpenFOAM/expressions/Function1/Function1Expression.C @@ -115,7 +115,7 @@ Type Foam::Function1Types::Function1Expression<Type>::integrate ) const { NotImplemented; - return Zero; + return Type(); } diff --git a/src/OpenFOAM/expressions/Function1/Function1Expression.H b/src/OpenFOAM/expressions/Function1/Function1Expression.H index 69ecf324246bf27abe368a0dc3101cf5170fffef..25917790883dd91fb3fdc1ff84753d5d8375a899 100644 --- a/src/OpenFOAM/expressions/Function1/Function1Expression.H +++ b/src/OpenFOAM/expressions/Function1/Function1Expression.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -65,8 +65,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_expression_H -#define Function1Types_expression_H +#ifndef Foam_Function1Types_expression_H +#define Foam_Function1Types_expression_H #include "Function1.H" #include "fieldExprDriver.H" @@ -124,10 +124,10 @@ public: //- Copy construct explicit Function1Expression(const Function1Expression<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Function1Expression<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/expressions/exprDriver/exprDriverFunctions.C b/src/OpenFOAM/expressions/exprDriver/exprDriverFunctions.C index f1d0096a15ead3a38643bca4a8e4d3fdf3e475d2..9618e51bcdd4f9407bcd42b33cfc6981f8adf9a4 100644 --- a/src/OpenFOAM/expressions/exprDriver/exprDriverFunctions.C +++ b/src/OpenFOAM/expressions/exprDriver/exprDriverFunctions.C @@ -42,8 +42,8 @@ static wordHashSet getAcceptableFunctionKeys const bool report = false ) { - wordHashSet acceptKeys(0); - wordHashSet rejectKeys(0); + wordHashSet acceptKeys; + wordHashSet rejectKeys; if (!dictPtr) { diff --git a/src/OpenFOAM/expressions/exprResult/exprResult.H b/src/OpenFOAM/expressions/exprResult/exprResult.H index cd7f3d6177d09c7e0b516d497f55fdec29cbdbfd..e712e1c440ff804a864d4c800e5b5bbe09499fcd 100644 --- a/src/OpenFOAM/expressions/exprResult/exprResult.H +++ b/src/OpenFOAM/expressions/exprResult/exprResult.H @@ -146,11 +146,11 @@ class exprResult //- Type-checked determination of centre value (min/max) // \return True if the type check was satisfied template<class Type> - bool setAverageValueChecked(const bool parRun = Pstream::parRun()); + bool setAverageValueChecked(const bool parRun = UPstream::parRun()); //- Type-checked determination of average bool value // \return True if the type check was satisfied - bool setAverageValueCheckedBool(const bool parRun = Pstream::parRun()); + bool setAverageValueCheckedBool(const bool parRun = UPstream::parRun()); //- Type-checked copy of field // \return True if the type check was satisfied @@ -385,7 +385,7 @@ public: //- Test if field corresponds to a single-value and thus uniform. // Uses field min/max to establish uniformity. // Test afterwards with isUniform() - void testIfSingleValue(const bool parRun = Pstream::parRun()); + void testIfSingleValue(const bool parRun = UPstream::parRun()); // Set results @@ -437,7 +437,7 @@ public: ( const label size, const bool noWarn, - const bool parRun = Pstream::parRun() + const bool parRun = UPstream::parRun() ) const; //- Get a reduced result diff --git a/src/OpenFOAM/expressions/fields/fieldExprLemonParser.lyy-m4 b/src/OpenFOAM/expressions/fields/fieldExprLemonParser.lyy-m4 index ce845dda4ab64b90de9d43dd4c66125af7062ce9..678afef0c9f2be89f210484b424b65dd4fb7f962 100644 --- a/src/OpenFOAM/expressions/fields/fieldExprLemonParser.lyy-m4 +++ b/src/OpenFOAM/expressions/fields/fieldExprLemonParser.lyy-m4 @@ -7,7 +7,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -163,7 +163,7 @@ operator_precedence() svalue (lhs) ::= NUMBER (tok) . { lhs = (tok).scalarValue; } // scanToken -svalue (lhs) ::= ZERO . { lhs = Foam::Zero; } +svalue (lhs) ::= ZERO . { lhs = Foam::zero{}; } svalue (lhs) ::= PI LPAREN RPAREN . { lhs = Foam::constant::mathematical::pi; } svalue (lhs) ::= DEG_TO_RAD LPAREN RPAREN . { lhs = Foam::degToRad(); } svalue (lhs) ::= RAD_TO_DEG LPAREN RPAREN . { lhs = Foam::radToDeg(); } diff --git a/src/OpenFOAM/expressions/value/exprValue.C b/src/OpenFOAM/expressions/value/exprValue.C index bfddba1137ac806c98c7443c571bb67faf7e8366..7272979d2c647d1cc90c978b0655f9d0e7dd63a9 100644 --- a/src/OpenFOAM/expressions/value/exprValue.C +++ b/src/OpenFOAM/expressions/value/exprValue.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,24 +26,42 @@ License \*---------------------------------------------------------------------------*/ #include "exprValue.H" +#include "error.H" #include "ITstream.H" #include "Switch.H" #include <cstring> // For memcpy, memset +// * * * * * * * * * * * * * * * * Details * * * * * * * * * * * * * * * * // + +void Foam::expressions::Detail::exprValueUnion::notSpecialized +( + const std::string& msg +) noexcept +{ + FatalErrorInFunction + << "non-specialized: " << msg.c_str() << endl + << abort(FatalError); +} + + // * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // namespace Foam { +#if 0 +// General way to add tokens for VectorSpace types +// (caller excludes none/invalid) template<class Type> -static void fillTokens(const Type& val, tokenList& toks) +static void addTokens(tokenList& toks, const Type& val) { const direction nCmpt = pTraits<Type>::nComponents; const direction nParen = 2*(pTraits<Type>::rank || (nCmpt > 1) ? 1 : 0); - toks.resize_nocopy(nCmpt + nParen); + const label nOld = toks.size(); + toks.resize(nOld + label(nCmpt + nParen)); - auto iter = toks.begin(); + auto iter = toks.begin(nOld); if (nParen) { @@ -67,28 +85,57 @@ static void fillTokens(const Type& val, tokenList& toks) //- Specialized for bool template<> -void fillTokens<bool>(const bool& val, tokenList& toks) +void addTokens<bool>(tokenList& toks, const bool& val) { - toks.resize_nocopy(1); - toks.front() = token::boolean(val); + toks.emplace_back() = token::boolean(val); } //- Specialized for label template<> -void fillTokens<label>(const label& val, tokenList& toks) +void addTokens<label>(tokenList& toks, const label& val) { - toks.resize_nocopy(1); - toks.front() = val; + toks.emplace_back() = val; } //- Specialized for scalar template<> -void fillTokens<scalar>(const scalar& val, tokenList& toks) +void addTokens<scalar>(tokenList& toks, const scalar& val) +{ + toks.emplace_back() = val; +} + +#endif + + +// General output of type (caller excludes none/invalid) +template<class Type> +static void putType(Ostream& os, const Type& val) +{ + os << val; +} + + +//- Specialized for bool. +//- Write as (true/false) via Switch to avoid bool/label ambiguity +template<> +void putType<bool>(Ostream& os, const bool& val) +{ + // Note: prefer Switch() vs (std::ios::boolalpha) to avoid any + // potential locale issues. + os << Switch(val); +} + + +//- Specialized for scalar. +//- Write with '.' to avoid scalar/label ambiguity +template<> +void putType<scalar>(Ostream& os, const scalar& val) { - toks.resize_nocopy(1); - toks.front() = val; + const auto oldflags = os.setf(std::ios::showpoint); + os << val; + os.flags(oldflags); // Restore } } // End namespace Foam @@ -226,6 +273,7 @@ void Foam::expressions::exprValue::deepCopy(const exprValue& rhs) } +#if 0 Foam::tokenList Foam::expressions::exprValue::tokens(bool prune) const { // Handling for NONE, INVALID: @@ -237,24 +285,28 @@ Foam::tokenList Foam::expressions::exprValue::tokens(bool prune) const tokenList toks; - if (!prune) + switch (typeCode_) { - if (typeCode_ == expressions::valueTypeCode::NONE) + case expressions::valueTypeCode::NONE : { - toks.resize(2); - toks.front() = token::BEGIN_LIST; - toks.back() = token::END_LIST; - return toks; + if (!prune) + { + toks.resize(2); + toks.front() = token::BEGIN_LIST; + toks.back() = token::END_LIST; + } + break; } - else if (typeCode_ == expressions::valueTypeCode::INVALID) + + case expressions::valueTypeCode::INVALID : { - toks.emplace_back(word("bad")); - return toks; + if (!prune) + { + toks.emplace_back(word("bad")); + } + break; } - } - switch (typeCode_) - { #undef doLocalCode #define doLocalCode(Type, UnusedParam) \ \ @@ -263,7 +315,7 @@ Foam::tokenList Foam::expressions::exprValue::tokens(bool prune) const const Type* dataPtr = data_.get<Type>(); \ if (dataPtr) \ { \ - fillTokens<Type>(*dataPtr, toks); \ + addTokens<Type>(toks, *dataPtr); \ } \ break; \ } @@ -277,6 +329,7 @@ Foam::tokenList Foam::expressions::exprValue::tokens(bool prune) const return toks; } +#endif void Foam::expressions::exprValue::write(Ostream& os, bool prune) const @@ -288,22 +341,26 @@ void Foam::expressions::exprValue::write(Ostream& os, bool prune) const // With prune: // - no output for either - if (!prune) + switch (typeCode_) { - if (typeCode_ == expressions::valueTypeCode::NONE) + case expressions::valueTypeCode::NONE : { - os << token::BEGIN_LIST << token::END_LIST; - return; + if (!prune) + { + os << token::BEGIN_LIST << token::END_LIST; + } + break; } - else if (typeCode_ == expressions::valueTypeCode::INVALID) + + case expressions::valueTypeCode::INVALID : { - os << word("bad"); - return; + if (!prune) + { + os << word("bad"); + } + break; } - } - switch (typeCode_) - { #undef doLocalCode #define doLocalCode(Type, UnusedParam) \ \ @@ -312,7 +369,7 @@ void Foam::expressions::exprValue::write(Ostream& os, bool prune) const const Type* dataPtr = data_.get<Type>(); \ if (dataPtr) \ { \ - os << *dataPtr; \ + putType(os, *dataPtr); \ } \ break; \ } @@ -381,34 +438,27 @@ bool Foam::expressions::exprValue::readTokens(ITstream& is) const valueTypeCode whichCode(exprValue::peekType(is)); - if (whichCode == expressions::valueTypeCode::NONE) - { - typeCode_ = whichCode; - is.skip(2); // Skip tokens: '( )' - return true; - } - - // This one should be rare or even impossible - if (whichCode == expressions::valueTypeCode::INVALID) + switch (whichCode) { - typeCode_ = whichCode; - - if (is.bad()) + case expressions::valueTypeCode::NONE : { - return false; + typeCode_ = whichCode; + is.skip(2); // Skip tokens: '( )' + return true; } - const token& tok0 = is.peek(); - - if (tok0.isWord("bad")) + // This one should be rare or even impossible + case expressions::valueTypeCode::INVALID : { - is.skip(1); // Skip token: "bad" - return true; + typeCode_ = whichCode; + if (!is.bad() && is.peek().isWord("bad")) + { + is.skip(1); // Skip token: "bad" + return true; + } + return false; // Some type of failure.. } - } - switch (whichCode) - { #undef doLocalCode #define doLocalCode(Type, UnusedParam) \ \ @@ -430,6 +480,58 @@ bool Foam::expressions::exprValue::readTokens(ITstream& is) } +int Foam::expressions::exprValue::compare +( + const exprValue& rhs +) const +{ + if (typeCode_ != rhs.typeCode_) + { + // First compare by type + return (int(typeCode_) - int(rhs.typeCode_)); + } + else if ((this == &rhs) || !good()) + { + // Identical: same object or not good + // (ie, no further comparison possible) + return 0; + } + + // Types are identical (and good) + // - compare by value. + // This is even messier than usual, since can only rely on + // operator< being defined + + switch (typeCode_) + { + #undef doLocalCode + #define doLocalCode(Type, UnusedParam) \ + \ + case expressions::valueTypeCode::type_##Type : \ + { \ + const Type* a = data_.get<Type>(); \ + const Type* b = rhs.data_.get<Type>(); \ + return \ + ( \ + (a && b) \ + ? ((*a < *b) ? -1 : (*b < *a) ? 1 : 0) \ + : 0 \ + ); \ + break; \ + } + + FOR_ALL_EXPR_VALUE_TYPES(doLocalCode); + #undef doLocalCode + + // exprValue may only be a subset of valueTypeCode types + default: break; + } + + // Should not happen + return 0; +} + + // * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // bool Foam::expressions::exprValue::operator==(const exprValue& rhs) const @@ -470,8 +572,7 @@ bool Foam::expressions::exprValue::operator==(const exprValue& rhs) const bool Foam::expressions::exprValue::operator<(const exprValue& rhs) const { - // Not yet sortable - return false; + return (this->compare(rhs) < 0); } diff --git a/src/OpenFOAM/expressions/value/exprValue.H b/src/OpenFOAM/expressions/value/exprValue.H index 16cf5753c2310452b47a03c795fc50147da21cdf..97e057614dde8112ec700cf37e21310f953b29eb 100644 --- a/src/OpenFOAM/expressions/value/exprValue.H +++ b/src/OpenFOAM/expressions/value/exprValue.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,10 +42,8 @@ SourceFiles #ifndef Foam_expressions_exprValue_H #define Foam_expressions_exprValue_H -#include "exprTraits.H" -#include "error.H" +#include "exprTraits.H" // For valueTypeCode and label, scalar, vector etc. #include "contiguous.H" -#include "tokenList.H" #include "InfoProxy.H" #include <typeinfo> @@ -102,12 +100,7 @@ union exprValueUnion // This seems to be the best way to catch programming errors // since static_assert does not help here. // The 'noexcept' is slightly misleading (needed for the caller) - static void notSpecialized(const std::string& msg) noexcept - { - FatalErrorInFunction - << "non-specialized: " << msg.c_str() << endl - << abort(FatalError); - } + static void notSpecialized(const std::string& msg) noexcept; //- Return read pointer to typed union member, //- which is nullptr for unspecialized versions @@ -175,13 +168,8 @@ class exprValue //- Copy assignment void deepCopy(const exprValue& rhs); - public: - //- Runtime type information - ClassName("exprValue"); - - // Constructors //- Default construct (zero-initialized) as 'none' @@ -244,7 +232,7 @@ public: //- The value type code expressions::valueTypeCode typeCode() const noexcept { - return typeCode_; + return typeCode_; } //- True if the value type is not none/invalid @@ -277,6 +265,9 @@ public: // \return True on success bool readTokens(ITstream& is); + //- Compare (type,value) + int compare(const exprValue& rhs) const; + // Typed Access @@ -350,7 +341,7 @@ public: //- Compare (type,value) for inequality bool operator!=(const exprValue& rhs) const { return !(*this == rhs); } - //- Compare (type,value) - currently not implemented. + //- Compare (type,value) bool operator<(const exprValue& rhs) const; @@ -359,17 +350,12 @@ public: //- Return info proxy for printing information to a stream InfoProxy<exprValue> info() const { return *this; } - //- The exprValue as tokens. - // For none : emits pair of brackets. - // For invalid : emits "bad". - // - // \param prune suppress the output for none/invalid - tokenList tokens(bool prune = false) const; - //- Write the (type-specific) content. // For none : emits pair of brackets. // For invalid : emits "bad". // + // Use OTstream for the stream to recover as tokens. + // // \param prune suppress the output for none/invalid void write(Ostream& os, bool prune = false) const; }; diff --git a/src/OpenFOAM/expressions/value/exprValueFieldTag.C b/src/OpenFOAM/expressions/value/exprValueFieldTag.C new file mode 100644 index 0000000000000000000000000000000000000000..0e739b8a869e7db6fd82dfe4146fb9f14571ced2 --- /dev/null +++ b/src/OpenFOAM/expressions/value/exprValueFieldTag.C @@ -0,0 +1,307 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "exprValueFieldTag.H" +#include "PstreamReduceOps.H" + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::expressions::exprValueFieldTag::empty() const noexcept +{ + return + ( + uniformity_ == Foam::Detail::ListPolicy::uniformity::EMPTY + ); +} + + +bool Foam::expressions::exprValueFieldTag::is_uniform() const noexcept +{ + return + ( + uniformity_ == Foam::Detail::ListPolicy::uniformity::UNIFORM + ); +} + + +bool Foam::expressions::exprValueFieldTag::is_nonuniform() const noexcept +{ + return + ( + uniformity_ == Foam::Detail::ListPolicy::uniformity::NONUNIFORM + // Extra safety for direct reductions? + // || uniformity_ == Foam::Detail::ListPolicy::uniformity::MIXED + ); +} + + +const Foam::expressions::exprValue& +Foam::expressions::exprValueFieldTag::value() const noexcept +{ + return value_; +} + + +void Foam::expressions::exprValueFieldTag::set_empty() +{ + uniformity_ = Foam::Detail::ListPolicy::uniformity::EMPTY; + value_ = Foam::zero{}; +} + + +void Foam::expressions::exprValueFieldTag::set_nouniform() +{ + uniformity_ = Foam::Detail::ListPolicy::uniformity::NONUNIFORM; + value_ = Foam::zero{}; +} + + +int Foam::expressions::exprValueFieldTag::compare +( + const exprValueFieldTag& rhs +) const +{ + if (uniformity_ != rhs.uniformity_) + { + // First compare by uniformity + return (int(uniformity_) - int(rhs.uniformity_)); + } + if (this == &rhs) + { + // Identical objects + return 0; + } + + return value_.compare(rhs.value_); +} + + +bool Foam::expressions::exprValueFieldTag::equal +( + const exprValueFieldTag& rhs +) const +{ + return (value_ == rhs.value_); +} + + +void Foam::expressions::exprValueFieldTag::reduce() +{ + if (!UPstream::is_parallel()) + { + // Nothing to do + return; + } + + // Two-stage reduction + // ~~~~~~~~~~~~~~~~~~~ + // + // Fields will usually be non-uniform somewhere, so first check with + // the cheapest option (bit-wise Allreduce). + // Only if they are uniform (with/without empty) do we actually + // need to compare values. + + typedef unsigned char bitmask_type; + + bitmask_type shape = static_cast<bitmask_type>(uniformity_); + + // Step 1 + // ~~~~~~ + Foam::reduce + ( + shape, + bitOrOp<bitmask_type>{}, + UPstream::msgType(), // ignored + UPstream::worldComm + ); + + // Step 2 + // ~~~~~~ + if + ( + shape == static_cast<bitmask_type> + ( + Foam::Detail::ListPolicy::uniformity::EMPTY + ) + ) + { + // no-op (empty everywhere) + value_ = Foam::zero{}; + } + else if + ( + shape == static_cast<bitmask_type> + ( + Foam::Detail::ListPolicy::uniformity::UNIFORM + ) + ) + { + // Ranks are locally uniform (or empty), need to check values too + Foam::reduce + ( + *this, + exprValueFieldTag::combineOp{}, + UPstream::msgType(), + UPstream::worldComm + ); + } + else + { + // Field is global non-empty and not uniform + set_nouniform(); + } +} + + +Foam::expressions::exprValueFieldTag +Foam::expressions::exprValueFieldTag::returnReduce +( + const exprValueFieldTag& tag +) +{ + exprValueFieldTag work(tag); + work.reduce(); + return work; +} + + +void Foam::expressions::exprValueFieldTag::combine +( + const exprValueFieldTag& b +) +{ + exprValueFieldTag& a = *this; + + if (b.empty()) + { + // no-op + return; + } + else if (a.empty()) + { + a = b; + } + else if (a.is_uniform() && (!b.is_uniform() || !a.equal(b))) + { + // Handle two cases: + // 1. uniform / non-uniform + // 2. uniform / uniform, but with different values + a.set_nouniform(); + } + + // No meaningful value if it is not uniform. + // So use zero, but keep the type + if (!a.is_uniform()) + { + a.value_ = Foam::zero{}; + } +} + + +// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // + +bool Foam::expressions::exprValueFieldTag:: +operator==(const exprValueFieldTag& rhs) const +{ + if (uniformity_ != rhs.uniformity_) + { + // Uniformity must match + return false; + } + else if (this == &rhs) + { + return true; + } + + return (value_ == rhs.value_); +} + + +bool Foam::expressions::exprValueFieldTag:: +operator<(const exprValueFieldTag& rhs) const +{ + return (this->compare(rhs) < 0); +} + + +// * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // + +void Foam::expressions::exprValueFieldTag::read(Istream& is) +{ + label uniformTag; + + is.readBegin("fieldTag"); + + is >> uniformTag; + uniformity_ = int(uniformTag); + value_.read(is); + + is.readEnd("fieldTag"); +} + + +void Foam::expressions::exprValueFieldTag::write(Ostream& os) const +{ + os << token::BEGIN_LIST + << label(uniformity_) << token::SPACE; + value_.write(os, false); // No pruning + os << token::END_LIST; +} + + +void Foam::expressions::exprValueFieldTag::print(Ostream& os) const +{ + os << "{ uniform:" + << label(uniformity_) + << " type:" << label(value_.typeCode()) + << " value: " << value_ << " }"; +} + + +Foam::Istream& Foam::operator>> +( + Istream& is, + expressions::exprValueFieldTag& tag +) +{ + tag.read(is); + return is; +} + + +Foam::Ostream& Foam::operator<< +( + Ostream& os, + const expressions::exprValueFieldTag& tag +) +{ + tag.write(os); + return os; +} + + +// ************************************************************************* // diff --git a/applications/test/exprValue2/exprValueFieldTag.H b/src/OpenFOAM/expressions/value/exprValueFieldTag.H similarity index 58% rename from applications/test/exprValue2/exprValueFieldTag.H rename to src/OpenFOAM/expressions/value/exprValueFieldTag.H index cd92e3597cbf878d79f193514c66c893b3f5e9ff..25f9e29f67bb33e095f8d6e689d24ce40c7231b6 100644 --- a/applications/test/exprValue2/exprValueFieldTag.H +++ b/src/OpenFOAM/expressions/value/exprValueFieldTag.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,11 +27,11 @@ Class Foam::expressions::exprValueFieldTag Description - A polymorphic single-value container for tracking Field content - as uniform etc. + An expressions::exprValue (polymorphic typed union) with an additional + flag for tracking Field content as uniform etc. SourceFiles - exprValueFieldTag.cxx + exprValueFieldTag.C \*---------------------------------------------------------------------------*/ @@ -39,7 +39,7 @@ SourceFiles #define Foam_expressions_exprValueFieldTag_H #include "exprValue.H" -#include "List.H" // For ListPolicy +#include "UList.H" // For ListPolicy // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -54,21 +54,39 @@ namespace expressions class exprValueFieldTag { - // Private data + // Private Data - //- Uniformity of field + //- Uniformity of field (0: empty, 1: uniform, 2: non-uniform, ...) + // Values as per internal enum Foam::Detail::ListPolicy::uniformity int uniformity_{}; - //- Representative (uniform) value for the field + //- Representative (uniform) type/value for the field expressions::exprValue value_{}; + public: - // Constructors + // Generated Methods - //- Default construct + //- Default construct. Uniformity = empty, type = none exprValueFieldTag() = default; + //- Copy construct + exprValueFieldTag(const exprValueFieldTag&) = default; + + //- Copy assignment + exprValueFieldTag& operator=(const exprValueFieldTag&) = default; + + + // Constructors + + //- Construct as uniform with the specified type/value + template<class Type> + explicit exprValueFieldTag(const Type& val) + { + set_value(val); + } + //- Construct from a range of values template<class Type> explicit exprValueFieldTag(const Type* first, const Type* last) @@ -77,6 +95,18 @@ public: } + // Factory Methods + + //- Make an empty field tag with the specified type (zero-value) + template<class Type> + static exprValueFieldTag make_empty() + { + exprValueFieldTag tag; // construct empty, no type + tag.set_zero<Type>(); // set type and zero value + return tag; + } + + // Member Functions //- True if the uniformity is "empty" @@ -88,9 +118,18 @@ public: //- True if the uniformity is "non-uniform" bool is_nonuniform() const noexcept; + //- Representative (uniform) value for the field + const expressions::exprValue& value() const noexcept; + + //- Compare (uniformity, type, value) + int compare(const exprValueFieldTag& rhs) const; + //- Test for equality of the values bool equal(const exprValueFieldTag& rhs) const; + + // Setters + //- Set value and uniformity from range of data template<class Type> void set(const Type* first, const Type* last) @@ -104,29 +143,48 @@ public: } else { + // Is empty, set zero value value_.set<Type>(Foam::zero{}); } } - //- Set uniform type and value + //- Set as uniform, with specified value template<class Type> - void set_uniform(const Type& val) + void set_value(const Type& val) { uniformity_ = Foam::Detail::ListPolicy::uniformity::UNIFORM; value_.set<Type>(val); } - //- Set as non-uniform - void set_nouniform() noexcept; + //- Set type and zero value (does not affect uniformity) + template<class Type> + void set_zero() + { + value_.set<Type>(Foam::zero{}); + } + + //- Set as empty with zero value, leave type unchanged + void set_empty(); + + //- Set as non-uniform with zero value, leave type unchanged + void set_nouniform(); + + + // Parallel + + //- Inplace parallel reduction, uses worldComm + void reduce(); + + //- Perform a reduction on a copy and return the result + static exprValueFieldTag returnReduce(const exprValueFieldTag& tag); // Reduction operations - //- Combine - eg, for global uniformity + //- Inplace combine - eg, for global uniformity void combine(const exprValueFieldTag& b); - //- Binary operator to be used by reduce function for detecting - //- global uniformity + //- Binary combine operator, e.g. for global reduction struct combineOp { exprValueFieldTag operator() @@ -144,11 +202,32 @@ public: // IO Operations + //- Read uniformity label and the value as pair void read(Istream& is); + + //- Write uniformity label and the value as pair void write(Ostream& os) const; //- Print description to Ostream void print(Ostream& os) const; + + + // Member Operators + + //- Assign from zero. Changes value but not type + void operator=(const Foam::zero) { value_ = Foam::zero{}; } + + //- Compare (uniformity,value) for equality + bool operator==(const exprValueFieldTag&) const; + + //- Compare (uniformity,value) for inequality + bool operator!=(const exprValueFieldTag& rhs) const + { + return !(*this == rhs); + } + + //- Compare (uniformity,value) + bool operator<(const exprValueFieldTag&) const; }; } // End namespace expressions diff --git a/src/OpenFOAM/expressions/value/exprValueFwd.H b/src/OpenFOAM/expressions/value/exprValueFwd.H new file mode 100644 index 0000000000000000000000000000000000000000..f352103d99ddda776ec7d0fb18a868f2e0a3138c --- /dev/null +++ b/src/OpenFOAM/expressions/value/exprValueFwd.H @@ -0,0 +1,56 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::expressions::exprValue + +Description + Forward declarations for Foam::expressions::exprValue etc + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_expressions_exprValueFwd_H +#define Foam_expressions_exprValueFwd_H + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace expressions +{ + +// Forward Declarations +class exprValue; +class exprValueFieldTag; + +} // End namespace expressions +} // End namespace Foam + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedField.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedField.H index e6dad2a01162150a45603f4f103bfa7f97ded198..d37b651781dfd0aad851079901e4f1378d472397 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedField.H +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -115,8 +115,12 @@ private: //- Assert that non-zero field size == mesh size void checkFieldSize() const; + //- Read from file if it is present. Checks the readOption flag void readIfPresent(const word& fieldDictEntry = "value"); + //- Read the field - create the field dictionary on-the-fly + void readField(const word& fieldDictEntry = "value"); + //- Implementation for 'New' with specified registerObject preference. // For LEGACY_REGISTER, registration is determined by // objectRegistry::is_cacheTemporaryObject(). @@ -137,8 +141,11 @@ public: // Static Member Functions - //- Return a NullObjectRef DimensionedField - inline static const DimensionedField<Type, GeoMesh>& null(); + //- Return a null DimensionedField (reference to a nullObject). + static const DimensionedField<Type, GeoMesh>& null() noexcept + { + return NullObjectRef<DimensionedField<Type, GeoMesh>>(); + } // Constructors @@ -440,8 +447,19 @@ public: const dimensioned<Type>& dt ); - //- Return renamed tmp field (NO_READ, NO_WRITE). - //- [Takes current timeName from the mesh registry]. + //- Return renamed tmp field (NO_READ, NO_WRITE) + //- retaining its instance/local. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<DimensionedField<Type, GeoMesh>> New + ( + const word& newName, + IOobjectOption::registerOption regOpt, + const tmp<DimensionedField<Type, GeoMesh>>& tfld + ); + + //- Return renamed tmp field (NO_READ, NO_WRITE) + //- retaining its instance/local. // Registration/persistence determined by // objectRegistry::is_cacheTemporaryObject(). static tmp<DimensionedField<Type, GeoMesh>> New @@ -566,8 +584,8 @@ public: bool writeData(Ostream& os, const word& fieldDictEntry) const; //- The writeData function (required by regIOobject), - //- call writeData with dictionary entry name = "value" - bool writeData(Ostream& os) const; + //- calls writeData with dictionary entry name = "value" + bool writeData(Ostream& os) const { return writeData(os, "value"); } // Member Operators @@ -599,12 +617,14 @@ public: // Ostream Operators + //- Calls DimensionedField::writeData() friend Ostream& operator<< <Type, GeoMesh> ( Ostream& os, const DimensionedField<Type, GeoMesh>& df ); + //- Calls DimensionedField::writeData() friend Ostream& operator<< <Type, GeoMesh> ( Ostream& os, diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldI.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldI.H index 5f898c1e6b1157cde8ec6287485146bb03904c6e..3391dc32f4607b5bf245ae8cb733bb0afe462d9d 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldI.H +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldI.H @@ -28,14 +28,6 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class Type, class GeoMesh> -inline const Foam::DimensionedField<Type, GeoMesh>& -Foam::DimensionedField<Type, GeoMesh>::null() -{ - return NullObjectRef<DimensionedField<Type, GeoMesh>>(); -} - - template<class Type, class GeoMesh> inline const typename GeoMesh::Mesh& Foam::DimensionedField<Type, GeoMesh>::mesh() const noexcept diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldIO.C b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldIO.C index 57a0da9e6649de7dd7d3b07d129933b5cda375a5..7ad8544616f189d840088cb894cdf0a39fe628ac 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldIO.C +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldIO.C @@ -28,6 +28,7 @@ License #include "DimensionedField.H" #include "IOstreams.H" +#include "localIOdictionary.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -58,15 +59,49 @@ void Foam::DimensionedField<Type, GeoMesh>::readField } +template<class Type, class GeoMesh> +void Foam::DimensionedField<Type, GeoMesh>::readField +( + const word& fieldDictEntry +) +{ + dictionary dict + ( + localIOdictionary::readContents + ( + IOobject + ( + this->name(), + this->instance(), + this->local(), + this->db(), + IOobjectOption::MUST_READ, + IOobjectOption::NO_WRITE, + IOobjectOption::NO_REGISTER + ), + typeName + ) + ); + + this->close(); + + readField(dict, fieldDictEntry); +} + + template<class Type, class GeoMesh> void Foam::DimensionedField<Type, GeoMesh>::readIfPresent ( const word& fieldDictEntry ) { - if (this->isReadRequired() || (this->isReadOptional() && this->headerOk())) + if + ( + this->isReadRequired() + || (this->isReadOptional() && this->headerOk()) + ) { - readField(dictionary(readStream(typeName)), fieldDictEntry); + readField(fieldDictEntry); } } @@ -87,7 +122,7 @@ Foam::DimensionedField<Type, GeoMesh>::DimensionedField dimensions_(dimless), oriented_() { - readField(dictionary(readStream(typeName)), fieldDictEntry); + readField(fieldDictEntry); } @@ -134,23 +169,16 @@ bool Foam::DimensionedField<Type, GeoMesh>::writeData } -template<class Type, class GeoMesh> -bool Foam::DimensionedField<Type, GeoMesh>::writeData(Ostream& os) const -{ - return writeData(os, "value"); -} - - // * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // template<class Type, class GeoMesh> Foam::Ostream& Foam::operator<< ( Ostream& os, - const DimensionedField<Type, GeoMesh>& df + const DimensionedField<Type, GeoMesh>& fld ) { - df.writeData(os); + fld.writeData(os); return os; } @@ -160,11 +188,11 @@ template<class Type, class GeoMesh> Foam::Ostream& Foam::operator<< ( Ostream& os, - const tmp<DimensionedField<Type, GeoMesh>>& tdf + const tmp<DimensionedField<Type, GeoMesh>>& tfld ) { - tdf().writeData(os); - tdf.clear(); + tfld().writeData(os); + tfld.clear(); return os; } diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldNew.C b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldNew.C index ba8f11430c7f73c7fe1adb025e6c92161e1e3333..c8f2e12f1d0c71494e984a44f09fb954382ac296 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldNew.C +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/DimensionedFieldNew.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,6 +40,7 @@ Foam::DimensionedField<Type, GeoMesh>::New_impl { auto ptr = tmp<DimensionedField<Type, GeoMesh>>::New ( + // == mesh.thisDb().newIOobject(name) IOobject ( name, @@ -53,19 +54,22 @@ Foam::DimensionedField<Type, GeoMesh>::New_impl std::forward<Args>(args)... ); - if (IOobjectOption::REGISTER == regOpt) + // Registration { - ptr->checkIn(); - } - else if - ( - // LEGACY_REGISTER: detect if caching is desired - (IOobjectOption::LEGACY_REGISTER == regOpt) - && ptr->db().is_cacheTemporaryObject(ptr.get()) - ) - { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -290,6 +294,7 @@ Foam::tmp<Foam::DimensionedField<Type, GeoMesh>> Foam::DimensionedField<Type, GeoMesh>::New ( const word& name, + IOobjectOption::registerOption regOpt, const tmp<DimensionedField<Type, GeoMesh>>& tfld ) { @@ -308,18 +313,44 @@ Foam::DimensionedField<Type, GeoMesh>::New tfld ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } +template<class Type, class GeoMesh> +Foam::tmp<Foam::DimensionedField<Type, GeoMesh>> +Foam::DimensionedField<Type, GeoMesh>::New +( + const word& name, + const tmp<DimensionedField<Type, GeoMesh>>& tfld +) +{ + return DimensionedField<Type, GeoMesh>::New + ( + name, + IOobjectOption::LEGACY_REGISTER, + tfld + ); +} + + template<class Type, class GeoMesh> template<class AnyType> Foam::tmp<Foam::DimensionedField<Type, GeoMesh>> @@ -345,13 +376,16 @@ Foam::DimensionedField<Type, GeoMesh>::New dims ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if + ( + ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -383,13 +417,16 @@ Foam::DimensionedField<Type, GeoMesh>::New dt.dimensions() ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if + ( + ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/SlicedDimensionedField.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/SlicedDimensionedField.H index 9f6df361ac978b54bbdc4ab14a83ae6afe1c2d55..de0eb8a6ccb7bc8ec04938273eac27d1098c7aa9 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/SlicedDimensionedField.H +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/SlicedDimensionedField.H @@ -85,7 +85,7 @@ public: ~SlicedDimensionedField() { // Set internalField to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + UList<Type>::shallowCopy(nullptr); } }; diff --git a/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H b/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H index 7debed435bad87ee05a61a8a2654080ea7562159..602e6f1cce085e36ec46ddfacfa798342a4aa9b4 100644 --- a/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H +++ b/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H @@ -97,8 +97,8 @@ public: // Static Member Functions - //- Return a null field - inline static const DynamicField<T, SizeMin>& null() + //- Return a null DynamicField (reference to a nullObject). + static const DynamicField<T, SizeMin>& null() noexcept { return NullObjectRef<DynamicField<T, SizeMin>>(); } diff --git a/src/OpenFOAM/fields/Fields/Field/Field.H b/src/OpenFOAM/fields/Fields/Field/Field.H index 9a2d17c7a44120b2086057c9f14bf51082471ad1..fb7851edc6dfc78953a95c81c413dd79d35b44fa 100644 --- a/src/OpenFOAM/fields/Fields/Field/Field.H +++ b/src/OpenFOAM/fields/Fields/Field/Field.H @@ -122,8 +122,12 @@ public: // Static Member Functions - //- Return nullObject reference Field - inline static const Field<Type>& null(); + //- Return a null Field (reference to a nullObject). + //- Behaves like an empty Field. + static const Field<Type>& null() noexcept + { + return NullObjectRef<Field<Type>>(); + } // Constructors diff --git a/src/OpenFOAM/fields/Fields/Field/FieldI.H b/src/OpenFOAM/fields/Fields/Field/FieldI.H index a5c37b841b03a8fe829500a931d6e750c3d0e57b..4c34df88b14066e42446c1107f78a9df31cb342e 100644 --- a/src/OpenFOAM/fields/Fields/Field/FieldI.H +++ b/src/OpenFOAM/fields/Fields/Field/FieldI.H @@ -25,15 +25,6 @@ License \*---------------------------------------------------------------------------*/ -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // - -template<class Type> -inline const Foam::Field<Type>& Foam::Field<Type>::null() -{ - return NullObjectRef<Field<Type>>(); -} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class Type> diff --git a/src/OpenFOAM/fields/Fields/Field/SubField.H b/src/OpenFOAM/fields/Fields/Field/SubField.H index 48cc8530ffa1a3d5023cfcbc7c579d3e179ab94d..15e09522a716b967a844219611f0c80bb27d3702 100644 --- a/src/OpenFOAM/fields/Fields/Field/SubField.H +++ b/src/OpenFOAM/fields/Fields/Field/SubField.H @@ -69,8 +69,12 @@ public: // Static Member Functions - //- Return nullObject reference SubField - inline static const SubField<Type>& null(); + //- Return a null SubField (reference to a nullObject). + //- Behaves like an empty SubField. + static const SubField<Type>& null() noexcept + { + return NullObjectRef<SubField<Type>>(); + } // Constructors diff --git a/src/OpenFOAM/fields/Fields/Field/SubFieldI.H b/src/OpenFOAM/fields/Fields/Field/SubFieldI.H index 738096e0396f6e2726c5a3c3c2d113191ad71c1f..235f981da7eedd6b7d1a921440bd2936f2fbc0da 100644 --- a/src/OpenFOAM/fields/Fields/Field/SubFieldI.H +++ b/src/OpenFOAM/fields/Fields/Field/SubFieldI.H @@ -26,15 +26,6 @@ License \*---------------------------------------------------------------------------*/ -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // - -template<class Type> -inline const Foam::SubField<Type>& Foam::SubField<Type>::null() -{ - return NullObjectRef<SubField<Type>>(); -} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class Type> diff --git a/src/OpenFOAM/fields/Fields/fieldTypes.C b/src/OpenFOAM/fields/Fields/fieldTypes.C index 943ecdd46feb73abc30d4f6964678369bd76d89e..79ff2e60d934f3d234d193b4456914edbbf2a692 100644 --- a/src/OpenFOAM/fields/Fields/fieldTypes.C +++ b/src/OpenFOAM/fields/Fields/fieldTypes.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,6 +59,11 @@ const Foam::word Foam::fieldTypes::extrapolatedCalculatedType Foam::fieldTypes::extrapolatedCalculatedTypeName_() ); +const Foam::word Foam::fieldTypes::processorType +( + Foam::fieldTypes::processorTypeName_() +); + const Foam::word Foam::fieldTypes::zeroGradientType ( Foam::fieldTypes::zeroGradientTypeName_() diff --git a/src/OpenFOAM/fields/Fields/fieldTypes.H b/src/OpenFOAM/fields/Fields/fieldTypes.H index 9f279730a142ed717855c84a8d0b328b80ca01ed..55d8e62942268bc7823c313e003b2b92b8dbbd50 100644 --- a/src/OpenFOAM/fields/Fields/fieldTypes.H +++ b/src/OpenFOAM/fields/Fields/fieldTypes.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -105,6 +105,12 @@ inline const char* extrapolatedCalculatedTypeName_() noexcept //- A combined \c zero-gradient and \c calculated patch field type extern const word extrapolatedCalculatedType; +//- A \c processor patch field type +inline const char* processorTypeName_() noexcept { return "processor"; } + +//- A \c processor patch field type +extern const word processorType; + //- A \c zeroGradient patch field type inline const char* zeroGradientTypeName_() noexcept { return "zeroGradient"; } diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.C index cbf79e5818cb65a625b19b08fcd4d11ddec5533d..aff9204eefe4ae764c2de34454293b1841182d52 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.C +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017,2022 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -91,7 +91,7 @@ bool Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::checkConsistency } } - // Wait for outstanding requests + // Wait for outstanding requests (non-blocking) UPstream::waitRequests(startOfRequests); for (auto& pfld : bfld) @@ -189,14 +189,11 @@ bool Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::checkConsistency template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField ( - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const dictionary& dict ) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; // Clear the boundary field if already initialised this->clear(); @@ -210,7 +207,9 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField for (const entry& dEntry : dict) { - if (dEntry.isDict() && dEntry.keyword().isLiteral()) + const auto* subdict = dEntry.dictPtr(); + + if (subdict && dEntry.keyword().isLiteral()) { const label patchi = bmesh_.findPatchID(dEntry.keyword()); @@ -222,11 +221,11 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField PatchField<Type>::New ( bmesh_[patchi], - field, - dEntry.dict() + iField, + *subdict ) ); - nUnset--; + --nUnset; } } } @@ -245,8 +244,9 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField for (auto iter = dict.crbegin(); iter != dict.crend(); ++iter) { const entry& dEntry = *iter; + const auto* subdict = dEntry.dictPtr(); - if (dEntry.isDict() && dEntry.keyword().isLiteral()) + if (subdict && dEntry.keyword().isLiteral()) { const labelList patchIds = bmesh_.indices(dEntry.keyword(), true); // use patchGroups @@ -261,8 +261,8 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField PatchField<Type>::New ( bmesh_[patchi], - field, - dEntry.dict() + iField, + *subdict ) ); } @@ -285,15 +285,15 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField ( emptyPolyPatch::typeName, bmesh_[patchi], - field + iField ) ); } else { - bool found = dict.found(bmesh_[patchi].name()); + const auto* subdict = dict.findDict(bmesh_[patchi].name()); - if (found) + if (subdict) { this->set ( @@ -301,8 +301,8 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField PatchField<Type>::New ( bmesh_[patchi], - field, - dict.subDict(bmesh_[patchi].name()) + iField, + *subdict ) ); } @@ -353,17 +353,14 @@ template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const word& patchFieldType ) : FieldField<PatchField, Type>(bmesh.size()), bmesh_(bmesh) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; forAll(bmesh_, patchi) { @@ -374,7 +371,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( patchFieldType, bmesh_[patchi], - field + iField ) ); } @@ -385,7 +382,7 @@ template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const wordList& patchFieldTypes, const wordList& constraintTypes ) @@ -393,10 +390,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField FieldField<PatchField, Type>(bmesh.size()), bmesh_(bmesh) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; if ( @@ -424,7 +418,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField patchFieldTypes[patchi], constraintTypes[patchi], bmesh_[patchi], - field + iField ) ); } @@ -440,7 +434,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( patchFieldTypes[patchi], bmesh_[patchi], - field + iField ) ); } @@ -452,21 +446,18 @@ template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const PtrList<PatchField<Type>>& ptfl ) : FieldField<PatchField, Type>(bmesh.size()), bmesh_(bmesh) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; forAll(bmesh_, patchi) { - this->set(patchi, ptfl[patchi].clone(field)); + this->set(patchi, ptfl[patchi].clone(iField)); } } @@ -474,21 +465,18 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const GeometricBoundaryField<Type, PatchField, GeoMesh>& btf ) : FieldField<PatchField, Type>(btf.size()), bmesh_(btf.bmesh_) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; forAll(bmesh_, patchi) { - this->set(patchi, btf[patchi].clone(field)); + this->set(patchi, btf[patchi].clone(iField)); } } @@ -496,7 +484,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const GeometricBoundaryField<Type, PatchField, GeoMesh>& btf, const labelList& patchIDs, const word& patchFieldType @@ -505,10 +493,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField FieldField<PatchField, Type>(btf.size()), bmesh_(btf.bmesh_) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; for (const label patchi : patchIDs) { @@ -519,7 +504,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( patchFieldType, bmesh_[patchi], - field + iField ) ); } @@ -528,7 +513,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField { if (!this->set(patchi)) { - this->set(patchi, btf[patchi].clone(field)); + this->set(patchi, btf[patchi].clone(iField)); } } } @@ -542,26 +527,21 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField : FieldField<PatchField, Type>(btf), bmesh_(btf.bmesh_) -{ - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} -} +{} template<class Type, template<class> class PatchField, class GeoMesh> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const dictionary& dict ) : FieldField<PatchField, Type>(bmesh.size()), bmesh_(bmesh) { - readField(field, dict); + readField(iField, dict); } @@ -570,10 +550,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::GeometricBoundaryField template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::updateCoeffs() { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; for (auto& pfld : *this) { @@ -583,32 +560,26 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::updateCoeffs() template<class Type, template<class> class PatchField, class GeoMesh> -void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluate() +void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluate +( + const UPstream::commsTypes commsType +) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} - - const UPstream::commsTypes commsType = UPstream::defaultCommsType; - const label startOfRequests = UPstream::nRequests(); - if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { + const label startOfRequests = UPstream::nRequests(); + for (auto& pfld : *this) { pfld.initEvaluate(commsType); } - // Wait for outstanding requests - if (commsType == Pstream::commsTypes::nonBlocking) - { - UPstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); for (auto& pfld : *this) { @@ -638,8 +609,74 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluate() else { FatalErrorInFunction - << "Unsupported communications type " - << UPstream::commsTypeNames[commsType] + << "Unsupported communications type " << int(commsType) << nl + << exit(FatalError); + } +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +template<class UnaryPredicate> +void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluate_if +( + const UnaryPredicate& pred, + const UPstream::commsTypes commsType +) +{ + if + ( + commsType == UPstream::commsTypes::buffered + || commsType == UPstream::commsTypes::nonBlocking + ) + { + const label startOfRequests = UPstream::nRequests(); + + for (auto& pfld : *this) + { + if (pred(pfld)) + { + pfld.initEvaluate(commsType); + } + } + + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); + + for (auto& pfld : *this) + { + if (pred(pfld)) + { + pfld.evaluate(commsType); + } + } + } + else if (commsType == UPstream::commsTypes::scheduled) + { + const lduSchedule& patchSchedule = + bmesh_.mesh().globalData().patchSchedule(); + + for (const auto& schedEval : patchSchedule) + { + const label patchi = schedEval.patch; + auto& pfld = (*this)[patchi]; + + if (pred(pfld)) + { + if (schedEval.init) + { + pfld.initEvaluate(commsType); + } + else + { + pfld.evaluate(commsType); + } + } + } + } + else + { + FatalErrorInFunction + << "Unsupported communications type " << int(commsType) << nl << exit(FatalError); } } @@ -648,58 +685,60 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluate() template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateSelected ( - const UList<label>& patchIDs + const labelUList& patchIDs ) { + const label startOfRequests = UPstream::nRequests(); + for (const label patchi : patchIDs) { - auto& pf = (*this)[patchi]; + auto& pfld = (*this)[patchi]; - DebugInfo<< "Updating " << pf.patch().name() << endl; + DebugInfo<< "Updating " << pfld.patch().name() << endl; - const label startOfRequests = UPstream::nRequests(); + pfld.initEvaluate(UPstream::commsTypes::nonBlocking); + } - pf.initEvaluate(UPstream::commsTypes::nonBlocking); + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - UPstream::waitRequests(startOfRequests); + for (const label patchi : patchIDs) + { + auto& pfld = (*this)[patchi]; - pf.evaluate(UPstream::commsTypes::nonBlocking); + pfld.evaluate(UPstream::commsTypes::nonBlocking); } } template<class Type, template<class> class PatchField, class GeoMesh> -void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateLocal() +void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateLocal +( + const UPstream::commsTypes commsType +) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} + // DebugInFunction << nl; if (!localConsistency) { return; } - const UPstream::commsTypes commsType = UPstream::defaultCommsType; - const label startOfRequests = UPstream::nRequests(); - if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { + const label startOfRequests = UPstream::nRequests(); + for (auto& pfld : *this) { pfld.initEvaluateLocal(commsType); } - // Wait for outstanding requests - if (commsType == Pstream::commsTypes::nonBlocking) - { - UPstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); for (auto& pfld : *this) { @@ -729,8 +768,7 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateLocal() else { FatalErrorInFunction - << "Unsupported communications type " - << UPstream::commsTypeNames[commsType] + << "Unsupported communications type " << int(commsType) << nl << exit(FatalError); } } @@ -738,24 +776,33 @@ void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateLocal() template<class Type, template<class> class PatchField, class GeoMesh> template<class CoupledPatchType> -void -Foam::GeometricBoundaryField<Type, PatchField, GeoMesh> -::evaluateCoupled() +void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::evaluateCoupled +( + const UPstream::commsTypes commsType +) { - ///if (GeometricField<Type, PatchField, GeoMesh::debug) - ///{ - /// InfoInFunction << nl; - ///} - - const UPstream::commsTypes commsType = UPstream::defaultCommsType; - const label startOfRequests = UPstream::nRequests(); + // Alternative (C++14) + // + // this->evaluate_if + // ( + // [](const auto& pfld) -> bool + // { + // const auto* cpp = isA<CoupledPatchType>(pfld.patch()); + // return (cpp && cpp->coupled()); + // }, + // commsType + // ); + + // DebugInFunction << nl; if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { + const label startOfRequests = UPstream::nRequests(); + for (auto& pfld : *this) { const auto* cpp = isA<CoupledPatchType>(pfld.patch()); @@ -766,11 +813,8 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh> } } - // Wait for outstanding requests - if (commsType == UPstream::commsTypes::nonBlocking) - { - UPstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); for (auto& pfld : *this) { @@ -810,8 +854,7 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh> else { FatalErrorInFunction - << "Unsupported communications type " - << UPstream::commsTypeNames[commsType] + << "Unsupported communications type " << int(commsType) << nl << exit(FatalError); } } @@ -835,18 +878,24 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::types() const template<class Type, template<class> class PatchField, class GeoMesh> -Foam::GeometricBoundaryField<Type, PatchField, GeoMesh> +Foam::tmp<Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>> Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>:: boundaryInternalField() const { - GeometricBoundaryField<Type, PatchField, GeoMesh> result(*this); + auto tresult = tmp<GeometricBoundaryField<Type, PatchField, GeoMesh>>::New + ( + DimensionedField<Type, GeoMesh>::null(), + *this + ); + + auto& result = tresult; forAll(result, patchi) { result[patchi] == this->operator[](patchi).patchInternalField(); } - return result; + return tresult; } @@ -858,13 +907,11 @@ Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::interfaces() const forAll(list, patchi) { - const auto* lduPtr = - isA<LduInterfaceField<Type>>(this->operator[](patchi)); - - if (lduPtr) - { - list.set(patchi, lduPtr); - } + list.set + ( + patchi, + isA<LduInterfaceField<Type>>(this->operator[](patchi)) + ); } return list; @@ -880,13 +927,11 @@ scalarInterfaces() const forAll(list, patchi) { - const auto* lduPtr = - isA<lduInterfaceField>(this->operator[](patchi)); - - if (lduPtr) - { - list.set(patchi, lduPtr); - } + list.set + ( + patchi, + isA<lduInterfaceField>(this->operator[](patchi)) + ); } return list; diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.H b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.H index 218214ec91116513b48dc063a112e35a0dea42c7..28834c39ced55b7317e30824cca3e1c41c80a404 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.H +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricBoundaryField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017,2022 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,12 +49,6 @@ SourceFiles namespace Foam { -// Forward Declarations -class dictionary; - -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - /*---------------------------------------------------------------------------*\ Class GeometricBoundaryField Declaration \*---------------------------------------------------------------------------*/ @@ -74,6 +68,9 @@ public: //- The internal field type associated with the boundary fields typedef DimensionedField<Type, GeoMesh> Internal; + //- This boundary field type + typedef GeometricBoundaryField<Type, PatchField, GeoMesh> Boundary; + //- The patch field type for the boundary fields typedef PatchField<Type> Patch; @@ -117,7 +114,7 @@ public: GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const word& patchFieldType = PatchField<Type>::calculatedType() ); @@ -127,7 +124,7 @@ public: GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const wordList& wantedPatchTypes, const wordList& actualPatchTypes = wordList() ); @@ -137,14 +134,14 @@ public: GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const PtrList<PatchField<Type>>& ptfl ); //- Construct as copy, setting the reference to the internal field GeometricBoundaryField ( - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const GeometricBoundaryField<Type, PatchField, GeoMesh>& btf ); @@ -152,7 +149,7 @@ public: //- and resetting type of field for given patch IDs GeometricBoundaryField ( - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const GeometricBoundaryField<Type, PatchField, GeoMesh>& btf, const labelList& patchIDs, const word& patchFieldName @@ -169,7 +166,7 @@ public: GeometricBoundaryField ( const BoundaryMesh& bmesh, - const DimensionedField<Type, GeoMesh>& field, + const Internal& iField, const dictionary& dict ); @@ -177,33 +174,51 @@ public: // Member Functions //- Read the boundary field - void readField - ( - const DimensionedField<Type, GeoMesh>& field, - const dictionary& dict - ); + void readField(const Internal& iField, const dictionary& dict); //- Update the boundary condition coefficients void updateCoeffs(); - //- Evaluate boundary conditions - void evaluate(); + //- Evaluate boundary conditions for each patch field. + //- Uses specified or default comms. + void evaluate + ( + const UPstream::commsTypes commsType = UPstream::defaultCommsType + ); + + //- Evaluate boundary conditions for patch fields matching the + //- given predicate. Uses specified or default comms. + template<class UnaryPredicate> + void evaluate_if + ( + const UnaryPredicate& pred, + const UPstream::commsTypes commsType = UPstream::defaultCommsType + ); - //- Evaluate boundary conditions after change in local values - void evaluateLocal(); + //- Evaluate boundary conditions after change in local values. + //- Uses specified or default comms. + void evaluateLocal + ( + const UPstream::commsTypes commsType = UPstream::defaultCommsType + ); - //- Evaluate boundary conditions on a subset of coupled patches + //- Evaluate boundary conditions on coupled patches of given type. + //- Uses specified or default comms. template<class CoupledPatchType> - void evaluateCoupled(); + void evaluateCoupled + ( + const UPstream::commsTypes commsType = UPstream::defaultCommsType + ); - //- Evaluate boundary conditions for selected patches - void evaluateSelected(const UList<label>& patchIDs); + //- Evaluate boundary conditions for selected patches. + //- Uses non-blocking comms. + void evaluateSelected(const labelUList& patchIDs); //- Return a list of the patch types wordList types() const; //- Return boundary field of values neighbouring the boundary - GeometricBoundaryField boundaryInternalField() const; + tmp<GeometricBoundaryField> boundaryInternalField() const; //- Return a list of pointers for each patch field with only those //- pointing to interfaces being set @@ -213,15 +228,18 @@ public: //- pointing to interfaces being set lduInterfaceFieldPtrsList scalarInterfaces() const; + //- Helper: check if field has been evaluated. See instantiations. + bool check() const; + + + // Write + //- Write boundary field as dictionary entry void writeEntry(const word& keyword, Ostream& os) const; //- Write dictionary entries of the individual boundary fields. void writeEntries(Ostream& os) const; - //- Helper: check if field has been evaluated. See instantiations. - bool check() const; - // Member Operators diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C index 12603e72ef574c80369496e50065e453a082974f..2ec59ff2d74d319d99e8c85d94afd55cd79e48d0 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,6 @@ License #include "GeometricField.H" #include "Time.H" -#include "demandDrivenData.H" #include "dictionary.H" #include "localIOdictionary.H" #include "meshState.H" @@ -77,19 +76,22 @@ void Foam::GeometricField<Type, PatchField, GeoMesh>::readFields template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricField<Type, PatchField, GeoMesh>::readFields() { - const localIOdictionary dict + dictionary dict ( - IOobject + localIOdictionary::readContents ( - this->name(), - this->instance(), - this->local(), - this->db(), - IOobjectOption::MUST_READ, - IOobjectOption::NO_WRITE, - IOobjectOption::NO_REGISTER - ), - typeName + IOobject + ( + this->name(), + this->instance(), + this->local(), + this->db(), + IOobjectOption::MUST_READ, + IOobjectOption::NO_WRITE, + IOobjectOption::NO_REGISTER + ), + typeName + ) ); this->close(); @@ -111,10 +113,7 @@ bool Foam::GeometricField<Type, PatchField, GeoMesh>::readIfPresent() else if ( this->isReadOptional() - && this->template typeHeaderOk<GeometricField<Type, PatchField, GeoMesh>> - ( - true - ) + && this->template typeHeaderOk<this_type>(true) // checkType = true ) { readFields(); @@ -143,20 +142,13 @@ bool Foam::GeometricField<Type, PatchField, GeoMesh>::readOldTimeIfPresent() if ( - field0.template typeHeaderOk<GeometricField<Type, PatchField, GeoMesh>> - ( - true - ) + field0.template typeHeaderOk<this_type>(true) // checkType = true ) { DebugInFunction << "Reading old time level for field" << nl << this->info() << endl; - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> - ( - field0, - this->mesh() - ); + field0Ptr_ = std::make_unique<this_type>(field0, this->mesh()); // Ensure the old time field oriented flag is set to the parent's state // Note: required for backwards compatibility in case of restarting from @@ -190,8 +182,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldType) { DebugInFunction @@ -213,8 +203,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldTypes, actualPatchTypes) { DebugInFunction @@ -236,8 +224,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, value, dims, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldType) { DebugInFunction @@ -262,8 +248,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, value, dims, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldTypes, actualPatchTypes) { DebugInFunction @@ -327,8 +311,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, diField), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, ptfl) { DebugInFunction @@ -348,8 +330,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, std::move(diField)), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, ptfl) { DebugInFunction @@ -369,8 +349,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, tfield), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, ptfl) { DebugInFunction @@ -389,8 +367,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(diField), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, ptfl) { DebugInFunction @@ -409,8 +385,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(std::move(diField)), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, ptfl) { DebugInFunction @@ -432,8 +406,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, iField), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldType) { DebugInFunction @@ -455,8 +427,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, std::move(iField)), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, patchFieldType) { DebugInFunction @@ -478,8 +448,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, iField), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, ptfl) { DebugInFunction @@ -501,8 +469,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, std::move(iField)), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, ptfl) { DebugInFunction @@ -524,8 +490,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dims, tfield), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary(), *this, ptfl) { DebugInFunction @@ -545,8 +509,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dimless, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary()) { DebugInFunction @@ -584,8 +546,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, mesh, dimless, false), timeIndex_(this->time().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(mesh.boundary()) { readFields(dict); @@ -603,8 +563,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, gf.boundaryField_) { DebugInFunction @@ -612,10 +570,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> - ( - *gf.field0Ptr_ - ); + field0Ptr_ = std::make_unique<this_type>(*gf.field0Ptr_); } this->writeOpt(IOobjectOption::NO_WRITE); @@ -630,8 +585,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(tgf.constCast(), tgf.movable()), timeIndex_(tgf().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, tgf().boundaryField_) { DebugInFunction @@ -652,8 +605,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, gf.boundaryField_) { DebugInFunction @@ -662,7 +613,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (!readIfPresent() && gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( io.name() + "_0", *gf.field0Ptr_ @@ -680,8 +631,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, tgf.constCast(), tgf.movable()), timeIndex_(tgf().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, tgf().boundaryField_) { DebugInFunction @@ -703,8 +652,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(newName, gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, gf.boundaryField_) { DebugInFunction @@ -713,7 +660,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (!readIfPresent() && gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( newName + "_0", *gf.field0Ptr_ @@ -731,8 +678,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(newName, tgf.constCast(), tgf.movable()), timeIndex_(tgf().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, tgf().boundaryField_) { DebugInFunction @@ -753,8 +698,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(this->mesh().boundary(), *this, patchFieldType) { DebugInFunction @@ -765,7 +708,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (!readIfPresent() && gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( io.name() + "_0", *gf.field0Ptr_ @@ -785,8 +728,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_ ( this->mesh().boundary(), @@ -803,7 +744,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (!readIfPresent() && gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( io.name() + "_0", *gf.field0Ptr_ @@ -823,8 +764,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, gf), timeIndex_(gf.timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_(*this, gf.boundaryField_, patchIDs, patchFieldType) { DebugInFunction @@ -834,7 +773,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField if (!readIfPresent() && gf.field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( io.name() + "_0", *gf.field0Ptr_ @@ -854,8 +793,6 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::GeometricField : Internal(io, tgf.constCast(), tgf.movable()), timeIndex_(tgf().timeIndex()), - field0Ptr_(nullptr), - fieldPrevIterPtr_(nullptr), boundaryField_ ( this->mesh().boundary(), @@ -897,13 +834,8 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::~GeometricField() } */ - deleteDemandDrivenData(field0Ptr_); - deleteDemandDrivenData(fieldPrevIterPtr_); - // FUTURE: register cache field info // // this->db().cacheTemporaryObject(*this); - - clearOldTimes(); } @@ -1014,7 +946,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::oldTime() const { if (!field0Ptr_) { - field0Ptr_ = new GeometricField<Type, PatchField, GeoMesh> + field0Ptr_ = std::make_unique<this_type> ( IOobject ( @@ -1068,7 +1000,7 @@ void Foam::GeometricField<Type, PatchField, GeoMesh>::storePrevIter() const << "Allocating previous iteration field" << nl << this->info() << endl; - fieldPrevIterPtr_ = new GeometricField<Type, PatchField, GeoMesh> + fieldPrevIterPtr_ = std::make_unique<this_type> ( this->name() + "PrevIter", *this @@ -1101,8 +1033,8 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::prevIter() const template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricField<Type, PatchField, GeoMesh>::clearOldTimes() { - deleteDemandDrivenData(field0Ptr_); - deleteDemandDrivenData(fieldPrevIterPtr_); + field0Ptr_.reset(nullptr); + fieldPrevIterPtr_.reset(nullptr); } @@ -1110,8 +1042,11 @@ template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricField<Type, PatchField, GeoMesh>:: correctBoundaryConditions() { - this->setUpToDate(); - storeOldTimes(); + // updateAccessTime + { + this->setUpToDate(); + storeOldTimes(); + } boundaryField_.evaluate(); } @@ -1120,8 +1055,11 @@ template<class Type, template<class> class PatchField, class GeoMesh> void Foam::GeometricField<Type, PatchField, GeoMesh>:: correctLocalBoundaryConditions() { - this->setUpToDate(); - storeOldTimes(); + // updateAccessTime + { + this->setUpToDate(); + storeOldTimes(); + } boundaryField_.evaluateLocal(); } @@ -1208,7 +1146,11 @@ template<class Type, template<class> class PatchField, class GeoMesh> bool Foam::GeometricField<Type, PatchField, GeoMesh>:: writeData(Ostream& os) const { - os << *this; + this->internalField().writeData(os, "internalField"); + os << nl; + this->boundaryField().writeEntry("boundaryField", os); + + os.check(FUNCTION_NAME); return os.good(); } @@ -1540,14 +1482,10 @@ template<class Type, template<class> class PatchField, class GeoMesh> Foam::Ostream& Foam::operator<< ( Ostream& os, - const GeometricField<Type, PatchField, GeoMesh>& gf + const GeometricField<Type, PatchField, GeoMesh>& fld ) { - gf.internalField().writeData(os, "internalField"); - os << nl; - gf.boundaryField().writeEntry("boundaryField", os); - - os.check(FUNCTION_NAME); + fld.writeData(os); return os; } @@ -1556,11 +1494,12 @@ template<class Type, template<class> class PatchField, class GeoMesh> Foam::Ostream& Foam::operator<< ( Ostream& os, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld ) { - os << tgf(); - tgf.clear(); + tfld().writeData(os); + tfld.clear(); + return os; } diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.H b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.H index d299f7c1a51a6726bb649456e9e55177f959fda8..8cb500f580c66c083ae5201e21e4cb0f533f9a21 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.H +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,7 +41,6 @@ SourceFiles #ifndef Foam_GeometricField_H #define Foam_GeometricField_H -#include "regIOobject.H" #include "GeometricBoundaryField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -50,7 +49,6 @@ namespace Foam { // Forward Declarations -class dictionary; template<class Type, template<class> class PatchField, class GeoMesh> class GeometricField; @@ -104,6 +102,12 @@ public: private: + // Private Typedefs + + //- The GeometricField type + typedef GeometricField<Type, PatchField, GeoMesh> this_type; + + // Private Data //- Current time index. @@ -111,10 +115,10 @@ private: mutable label timeIndex_; //- Pointer to old time field - mutable GeometricField<Type, PatchField, GeoMesh>* field0Ptr_; + mutable std::unique_ptr<this_type> field0Ptr_; //- Pointer to previous iteration (used for under-relaxation) - mutable GeometricField<Type, PatchField, GeoMesh>* fieldPrevIterPtr_; + mutable std::unique_ptr<this_type> fieldPrevIterPtr_; //- Boundary field containing boundary field values Boundary boundaryField_; @@ -154,8 +158,11 @@ public: // Static Member Functions - //- Return a null geometric field - inline static const GeometricField<Type, PatchField, GeoMesh>& null(); + //- Return a null GeometricField (reference to a nullObject). + static const GeometricField<Type, PatchField, GeoMesh>& null() noexcept + { + return NullObjectRef<GeometricField<Type, PatchField, GeoMesh>>(); + } // Constructors @@ -504,6 +511,68 @@ public: const word& patchFieldType = PatchField<Type>::calculatedType() ); + //- Return tmp field (NO_READ, NO_WRITE) + //- from name, mesh, dimensions, copy of internal field contents + //- and patch list to clone. + //- [Takes current timeName from the mesh registry]. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& name, + IOobjectOption::registerOption regOpt, + const Mesh& mesh, + const dimensionSet& dims, + const Field<Type>& iField, + const PtrList<PatchField<Type>>& pflds + ); + + //- Return tmp field (NO_READ, NO_WRITE) + //- from name, mesh, dimensions, copy of internal field contents + //- and patch list to clone. + //- [Takes current timeName from the mesh registry]. + // Registration/persistence determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& name, + const Mesh& mesh, + const dimensionSet& dims, + const Field<Type>& iField, + const PtrList<PatchField<Type>>& pflds + ); + + //- Return tmp field (NO_READ, NO_WRITE) + //- from name, mesh, dimensions, moved internal field contents + //- and patch list to clone. + //- [Takes current timeName from the mesh registry]. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& name, + IOobjectOption::registerOption regOpt, + const Mesh& mesh, + const dimensionSet& dims, + Field<Type>&& iField, + const PtrList<PatchField<Type>>& pflds + ); + + //- Return tmp field (NO_READ, NO_WRITE) + //- from name, mesh, dimensions, moved internal field contents + //- and patch list to clone. + //- [Takes current timeName from the mesh registry]. + // Registration/persistence determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& name, + const Mesh& mesh, + const dimensionSet& dims, + Field<Type>&& iField, + const PtrList<PatchField<Type>>& pflds + ); + //- Return tmp field (NO_READ, NO_WRITE) //- from name, mesh, field value, dimensions and patch type. //- [Takes current timeName from the mesh registry]. @@ -621,36 +690,70 @@ public: ); //- Return renamed tmp field (NO_READ, NO_WRITE) - //- [Takes current timeName from the mesh registry]. + //- retaining its instance/local. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& newName, + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld + ); + + //- Return renamed tmp field (NO_READ, NO_WRITE) + //- retaining its instance/local. // Registration/persistence determined by // objectRegistry::is_cacheTemporaryObject(). static tmp<GeometricField<Type, PatchField, GeoMesh>> New ( const word& newName, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld ); //- Return renamed tmp field (NO_READ, NO_WRITE) - //- with reset patch field type. - //- [Takes current timeName from the mesh registry]. + //- with reset patch field type, retaining its instance/local. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& newName, + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, + const word& patchFieldType + ); + + //- Return renamed tmp field (NO_READ, NO_WRITE) + //- with reset patch field type, retaining its instance/local. // Registration/persistence determined by // objectRegistry::is_cacheTemporaryObject(). static tmp<GeometricField<Type, PatchField, GeoMesh>> New ( const word& newName, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, const word& patchFieldType ); //- Return renamed tmp field (NO_READ, NO_WRITE) - //- with reset patch field types. - //- [Takes instance from the field]. + //- with reset patch field types, retaining its instance/local. + // For LEGACY_REGISTER, registration is determined by + // objectRegistry::is_cacheTemporaryObject(). + static tmp<GeometricField<Type, PatchField, GeoMesh>> New + ( + const word& newName, + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, + const wordList& patchFieldTypes, + const wordList& actualPatchTypes = wordList() + ); + + //- Return renamed tmp field (NO_READ, NO_WRITE) + //- with reset patch field types, retaining its instance/local. // Registration/persistence determined by // objectRegistry::is_cacheTemporaryObject(). static tmp<GeometricField<Type, PatchField, GeoMesh>> New ( const word& newName, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, const wordList& patchFieldTypes, const wordList& actualPatchTypes = wordList() ); @@ -772,8 +875,8 @@ public: //- Correct boundary field void correctBoundaryConditions(); - //- Correct boundary conditions after a purely local operation. Is - // dummy for e.g. processor boundary conditions + //- Correct boundary conditions after a purely local operation. + // Is dummy for processor boundary conditions etc void correctLocalBoundaryConditions(); //- Does the field need a reference level for solution @@ -866,7 +969,6 @@ public: // Member Operators - //- Return a const-reference to the dimensioned internal field. //- Same as internalField(). // Useful in the formulation of source-terms for FV equations const Internal& operator()() const { return *this; } @@ -910,19 +1012,20 @@ public: // Write - //- The writeData function (required by regIOobject), - //- calls operator<< + //- The writeData function (required by regIOobject) bool writeData(Ostream& os) const; // Ostream Operators + //- Calls GeometricField::writeData() friend Ostream& operator<< <Type, PatchField, GeoMesh> ( Ostream&, const GeometricField<Type, PatchField, GeoMesh>& ); + //- Calls GeometricField::writeData() friend Ostream& operator<< <Type, PatchField, GeoMesh> ( Ostream&, diff --git a/applications/test/router/Gather/GatherBase.txx b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldFwd.H similarity index 52% rename from applications/test/router/Gather/GatherBase.txx rename to src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldFwd.H index 917a4308b15711be5bdc13ffebaf08ddfd7f60ce..b62f469d4ec7f205503a1123ae5a9e2bf9bf17f8 100644 --- a/applications/test/router/Gather/GatherBase.txx +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldFwd.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -23,93 +23,42 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. +Description + Forward declarations related to GeometricField etc. + \*---------------------------------------------------------------------------*/ -#include "GatherBase.H" +#ifndef Foam_GeometricFieldFwd_H +#define Foam_GeometricFieldFwd_H // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -template<class Type> -Type GatherBase::flatten(const List<Type> lst) -{ - label sum = 0; - - forAll(lst, lstI) - { - sum += lst[lstI].size(); - } - - Type result(sum); - - label index = 0; - - forAll(lst, lstI) - { - const Type& sub = lst[lstI]; - - forAll(sub, subI) - { - result[index++] = sub[subI]; - } - } - - return result; -} - - -template<class DataType, class IndexType, class AddOp> -IndexType GatherBase::offset -( - const List<DataType>& values, - const List<IndexType>& indices, - AddOp aop -) -{ - if (values.size() != indices.size()) - { - FatalErrorInFunction - << "Input data and indices lists not equal size." << endl - << "data size:" << values.size() - << " indices:" << indices.size() - << abort(FatalError); - } - - - label sum = 0; - - forAll(indices, lstI) - { - sum += indices[lstI].size(); - } +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// Forward Declarations - IndexType result(sum); - label index = 0; +// Geometric internal field +template<class Type, class GeoMesh> +class DimensionedField; - label offset = 0; +// Geometric boundary field +template<class Type, template<class> class PatchField, class GeoMesh> +class GeometricBoundaryField; - forAll(indices, lstI) - { - const IndexType& sub = indices[lstI]; +// Geometric field (internal + boundary) +template<class Type, template<class> class PatchField, class GeoMesh> +class GeometricField; - forAll(sub, subI) - { - result[index++] = aop(sub[subI], offset); - } - offset += values[lstI].size(); - } - return result; -} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +} // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace Foam +#endif // ************************************************************************* // diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldI.H b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldI.H index 90b57d17a4aeb853f9378f733b0ca99e5414e7a9..0f3083ae48b49a81ea10a7f49ebde385b0c142a2 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldI.H +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldI.H @@ -28,14 +28,6 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class Type, template<class> class PatchField, class GeoMesh> -inline const Foam::GeometricField<Type, PatchField, GeoMesh>& -Foam::GeometricField<Type, PatchField, GeoMesh>::null() -{ - return NullObjectRef<GeometricField<Type, PatchField, GeoMesh>>(); -} - - template<class Type, template<class> class PatchField, class GeoMesh> inline const typename Foam::GeometricField<Type, PatchField, GeoMesh>::Internal& diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldNew.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldNew.C index 29f69802c49964398c68e50e5f3cf45e0b167fff..138d14d3b078d6da69da2187f8fd30ed4c22892b 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldNew.C +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricFieldNew.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,6 +41,7 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New_impl { auto ptr = tmp<GeometricField<Type, PatchField, GeoMesh>>::New ( + // == mesh.thisDb().newIOobject(name) IOobject ( name, @@ -54,19 +55,22 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New_impl std::forward<Args>(args)... ); - if (IOobjectOption::REGISTER == regOpt) + // Registration { - ptr->checkIn(); - } - else if - ( - // LEGACY_REGISTER: detect if caching is desired - (IOobjectOption::LEGACY_REGISTER == regOpt) - && ptr->db().is_cacheTemporaryObject(ptr.get()) - ) - { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -211,6 +215,100 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New } +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + IOobjectOption::registerOption regOpt, + const Mesh& mesh, + const dimensionSet& dims, + const Field<Type>& iField, + const PtrList<PatchField<Type>>& pflds +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New_impl + ( + regOpt, + name, + mesh, + dims, + iField, + pflds + ); +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + const Mesh& mesh, + const dimensionSet& dims, + const Field<Type>& iField, + const PtrList<PatchField<Type>>& pflds +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New_impl + ( + IOobjectOption::LEGACY_REGISTER, + name, + mesh, + dims, + iField, + pflds + ); +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + IOobjectOption::registerOption regOpt, + const Mesh& mesh, + const dimensionSet& dims, + Field<Type>&& iField, + const PtrList<PatchField<Type>>& pflds +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New_impl + ( + regOpt, + name, + mesh, + dims, + std::move(iField), + pflds + ); +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + const Mesh& mesh, + const dimensionSet& dims, + Field<Type>&& iField, + const PtrList<PatchField<Type>>& pflds +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New_impl + ( + IOobjectOption::LEGACY_REGISTER, + name, + mesh, + dims, + std::move(iField), + pflds + ); +} + + template<class Type, template<class> class PatchField, class GeoMesh> Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> Foam::GeometricField<Type, PatchField, GeoMesh>::New @@ -406,8 +504,8 @@ Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> Foam::GeometricField<Type, PatchField, GeoMesh>::New ( const word& name, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf, - const word& patchFieldType + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld ) { auto ptr = tmp<GeometricField<Type, PatchField, GeoMesh>>::New @@ -415,24 +513,32 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New IOobject ( name, - tgf().instance(), - tgf().local(), - tgf().db(), + tfld().instance(), + tfld().local(), + tfld().db(), IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::NO_REGISTER ), - tgf, - patchFieldType + tfld ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -443,7 +549,26 @@ Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> Foam::GeometricField<Type, PatchField, GeoMesh>::New ( const word& name, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New + ( + name, + IOobjectOption::LEGACY_REGISTER, + tfld + ); +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, + const word& patchFieldType ) { auto ptr = tmp<GeometricField<Type, PatchField, GeoMesh>>::New @@ -451,23 +576,33 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New IOobject ( name, - tgf().instance(), - tgf().local(), - tgf().db(), + tfld().instance(), + tfld().local(), + tfld().db(), IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::NO_REGISTER ), - tgf + tfld, + patchFieldType ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -478,7 +613,27 @@ Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> Foam::GeometricField<Type, PatchField, GeoMesh>::New ( const word& name, - const tmp<GeometricField<Type, PatchField, GeoMesh>>& tgf, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, + const word& patchFieldType +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New + ( + name, + IOobjectOption::LEGACY_REGISTER, + tfld, + patchFieldType + ); +} + + +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + IOobjectOption::registerOption regOpt, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, const wordList& patchFieldTypes, const wordList& actualPatchTypes ) @@ -488,30 +643,60 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New IOobject ( name, - tgf().instance(), - tgf().local(), - tgf().db(), + tfld().instance(), + tfld().local(), + tfld().db(), IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::NO_REGISTER ), - tgf, + tfld, patchFieldTypes, actualPatchTypes ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if (IOobjectOption::REGISTER == regOpt) + { + ptr->checkIn(); + } + else if + ( + // LEGACY_REGISTER: detect if caching is desired + (IOobjectOption::LEGACY_REGISTER == regOpt) + && ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } +template<class Type, template<class> class PatchField, class GeoMesh> +Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> +Foam::GeometricField<Type, PatchField, GeoMesh>::New +( + const word& name, + const tmp<GeometricField<Type, PatchField, GeoMesh>>& tfld, + const wordList& patchFieldTypes, + const wordList& actualPatchTypes +) +{ + return GeometricField<Type, PatchField, GeoMesh>::New + ( + name, + IOobjectOption::LEGACY_REGISTER, + tfld, + patchFieldTypes, + actualPatchTypes + ); +} + + template<class Type, template<class> class PatchField, class GeoMesh> template<class AnyType> Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh>> @@ -539,13 +724,17 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New patchFieldType ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if + ( + // LEGACY_REGISTER: detect if caching is desired + ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } @@ -579,13 +768,17 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::New patchFieldType ); - if - ( - ptr->db().is_cacheTemporaryObject(ptr.get()) - ) + // Registration { - ptr.protect(true); - ptr->checkIn(); + if + ( + // LEGACY_REGISTER: detect if caching is desired + ptr->db().is_cacheTemporaryObject(ptr.get()) + ) + { + ptr.protect(true); + ptr->checkIn(); + } } return ptr; } diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/uniformInterpolate.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/uniformInterpolate.C index 6476a59d354cac553e60cbd333b469628aaa29a8..559f7fe26ff5288b36970fbb224e307b21a189a5 100644 --- a/src/OpenFOAM/fields/GeometricFields/GeometricField/uniformInterpolate.C +++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/uniformInterpolate.C @@ -46,7 +46,8 @@ Foam::tmp<GeoField> Foam::uniformInterpolate field0.time().timeName(), field0.db(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), weights[0]*(*fields[indices[0]]) ); diff --git a/src/OpenFOAM/fields/GeometricFields/SlicedGeometricField/SlicedGeometricField.C b/src/OpenFOAM/fields/GeometricFields/SlicedGeometricField/SlicedGeometricField.C index 066cbe86e634a07f75a86b13e053610c04945dfa..185136b9e917eb003058f4531d227a5b477278a3 100644 --- a/src/OpenFOAM/fields/GeometricFields/SlicedGeometricField/SlicedGeometricField.C +++ b/src/OpenFOAM/fields/GeometricFields/SlicedGeometricField/SlicedGeometricField.C @@ -369,7 +369,7 @@ Foam::SlicedGeometricField<Type, PatchField, SlicedPatchField, GeoMesh>:: ~SlicedGeometricField() { // Set internalField to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + UList<Type>::shallowCopy(nullptr); } diff --git a/src/OpenFOAM/fields/GeometricFields/pointFields/pointFieldsFwd.H b/src/OpenFOAM/fields/GeometricFields/pointFields/pointFieldsFwd.H index 7384c3c5407a1deba2f891dd0c0f9e1112650747..5cfb8513863a7b5d7d9aed94fcc017579bf367ec 100644 --- a/src/OpenFOAM/fields/GeometricFields/pointFields/pointFieldsFwd.H +++ b/src/OpenFOAM/fields/GeometricFields/pointFields/pointFieldsFwd.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,24 +39,13 @@ SourceFiles #define Foam_pointFieldsFwd_H #include "fieldTypes.H" +#include "GeometricFieldFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Geometric internal field -template<class Type, class GeoMesh> class DimensionedField; - -// Geometric boundary field -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricBoundaryField; - -// Geometric field (internal + boundary) -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Forward Declarations @@ -80,13 +69,25 @@ using PointInternalField = DimensionedField<Type, pointMesh>; // Typedefs -typedef GeometricField<scalar, pointPatchField, pointMesh> pointScalarField; -typedef GeometricField<vector, pointPatchField, pointMesh> pointVectorField; -typedef GeometricField<sphericalTensor, pointPatchField, pointMesh> +typedef + GeometricField<scalar, pointPatchField, pointMesh> + pointScalarField; + +typedef + GeometricField<vector, pointPatchField, pointMesh> + pointVectorField; + +typedef + GeometricField<sphericalTensor, pointPatchField, pointMesh> pointSphericalTensorField; -typedef GeometricField<symmTensor, pointPatchField, pointMesh> + +typedef + GeometricField<symmTensor, pointPatchField, pointMesh> pointSymmTensorField; -typedef GeometricField<tensor, pointPatchField, pointMesh> pointTensorField; + +typedef + GeometricField<tensor, pointPatchField, pointMesh> + pointTensorField; /*---------------------------------------------------------------------------*\ diff --git a/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.H b/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.H index c970ca0c413770b1c4afb1f2f855cdf01b6cbd7c..58c9dbee75003bae62faa18ad18944ef590a0c54 100644 --- a/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.H +++ b/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.H @@ -100,8 +100,8 @@ public: //- Construct as copy UniformDimensionedField(const UniformDimensionedField<Type>&); - //- Construct from Istream - UniformDimensionedField(const IOobject& io); + //- Construct from IOobject. Either reads or sets dimensionless zero + explicit UniformDimensionedField(const IOobject& io); //- Destructor @@ -129,7 +129,7 @@ public: } //- Return complete path + object name if the file exists - // either in the case/processor or case otherwise null + //- either in the case/processor or case otherwise null virtual fileName filePath() const { return globalFilePath(type()); diff --git a/src/OpenFOAM/fields/cloud/cloud.H b/src/OpenFOAM/fields/cloud/cloud.H index ed1109cdeac300345642ed2cc85d7daaece766bf..e0256fd6dccb6cee599bf673e6e4b1f863b2df4e 100644 --- a/src/OpenFOAM/fields/cloud/cloud.H +++ b/src/OpenFOAM/fields/cloud/cloud.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -172,6 +172,21 @@ public: { return obr.lookupObject<IOField<Type>>(fieldName); } + + //- Lookup an IOField within object registry + // Fatal if not found or wrong type + // + // Note: const char signature to avoid spurious + // -Wdangling-reference with gcc-13 + template<class Type> + static const IOField<Type>& lookupIOField + ( + const char* fieldName, + const objectRegistry& obr + ) + { + return obr.lookupObject<IOField<Type>>(word(fieldName)); + } }; diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/basicSymmetry/basicSymmetryPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/basicSymmetry/basicSymmetryPointPatchField.H index 9377eb2e070da712cc1e44a7f5e29163ffe8bb35..d132cc222bd608328fb09ea2811577bb98428d59 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/basicSymmetry/basicSymmetryPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/basicSymmetry/basicSymmetryPointPatchField.H @@ -83,18 +83,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new basicSymmetryPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference basicSymmetryPointPatchField ( @@ -102,33 +90,35 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new basicSymmetryPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions + + //- Update the patch field + virtual void evaluate + ( + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered + ); + - // Evaluation functions + // Member Operators - //- Update the patch field - virtual void evaluate - ( - const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking - ); + //- Inherit assignment operators + using pointPatchField<Type>::operator=; }; diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.C b/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.C index 44c460d5c6b8689e3655d23d86b84c56c1ce9283..220be3b830cedd3a1f86b255bd13473d5edd66e5 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.C +++ b/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.C @@ -78,14 +78,13 @@ Foam::calculatedPointPatchField<Type>::calculatedPointPatchField template<class Type> -template<class Type2> Foam::autoPtr<Foam::pointPatchField<Type>> Foam::pointPatchField<Type>::NewCalculatedType ( - const pointPatchField<Type2>& pf + const pointPatch& p ) { - auto* patchTypeCtor = patchConstructorTable(pf.patch().type()); + auto* patchTypeCtor = patchConstructorTable(p.type()); if (patchTypeCtor) { @@ -93,8 +92,8 @@ Foam::pointPatchField<Type>::NewCalculatedType ( patchTypeCtor ( - pf.patch(), - Field<Type>::null() + p, + DimensionedField<Type, pointMesh>::null() ) ); } @@ -104,12 +103,24 @@ Foam::pointPatchField<Type>::NewCalculatedType ( new calculatedPointPatchField<Type> ( - pf.patch(), - Field<Type>::null() + p, + DimensionedField<Type, pointMesh>::null() ) ); } } +template<class Type> +template<class AnyType> +Foam::autoPtr<Foam::pointPatchField<Type>> +Foam::pointPatchField<Type>::NewCalculatedType +( + const pointPatchField<AnyType>& pf +) +{ + return NewCalculatedType(pf.patch()); +} + + // ************************************************************************* // diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.H index 42189f5a278306ff1cf77b06d7803c6f8382f2cf..a3f040c7fac63a3d8091e15e9925c40a9e8945fc 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/calculated/calculatedPointPatchField.H @@ -85,18 +85,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new calculatedPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference calculatedPointPatchField ( @@ -104,18 +92,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference - virtual autoPtr<pointPatchField<Type>> - clone(const DimensionedField<Type, pointMesh>& iF) const + virtual autoPtr<pointPatchField<Type>> clone + ( + const DimensionedField<Type, pointMesh>& iF + ) const { - return autoPtr<pointPatchField<Type>> - ( - new calculatedPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/coupled/coupledPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/coupled/coupledPointPatchField.H index 616743df38a6336ef95818e698e78010884c0b27..68d71f61ef0d29f3ed25d054be2ab3a0e4e96845 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/coupled/coupledPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/coupled/coupledPointPatchField.H @@ -87,9 +87,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference coupledPointPatchField ( @@ -97,6 +94,9 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const = 0; + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( @@ -119,7 +119,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) = 0; //- Initialise swap of patch point values diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/fixedValue/fixedValuePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/fixedValue/fixedValuePointPatchField.H index 06203b7ad85e2a52e628aa0ca035afc32ae152bf..e8f269edbba41ccdc1fcc5859f773707a2dd2d56 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/fixedValue/fixedValuePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/fixedValue/fixedValuePointPatchField.H @@ -30,6 +30,8 @@ Class Description A FixedValue boundary condition for pointField. + The "value" entry is normally MUST_READ. + SourceFiles fixedValuePointPatchField.C @@ -92,13 +94,13 @@ public: const pointPatch& p, const DimensionedField<Type, pointMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : fixedValuePointPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -111,18 +113,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new fixedValuePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference fixedValuePointPatchField ( @@ -130,20 +120,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new fixedValuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.C b/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.C index 9718da72b3a8acf4f8121ebbb0cb90f58c9535f3..d623500b8736d7f2ecdccead3924b57ee6437b43 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.C +++ b/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.C @@ -237,7 +237,8 @@ void Foam::valuePointPatchField<Type>::operator= const pointPatchField<Type>& ptf ) { - Field<Type>::operator=(this->patchInternalField()); + // pointPatchField has no values to copy, assign internal values + this->extrapolateInternal(); } @@ -277,7 +278,8 @@ void Foam::valuePointPatchField<Type>::operator== const pointPatchField<Type>& ptf ) { - Field<Type>::operator=(this->patchInternalField()); + // pointPatchField has no values to copy, assign internal values + this->extrapolateInternal(); } diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.H index 2bd1a9e993c8bfdd6c8ca570a9a915318a9e1301..4a71dd3766559a0e08458d18b273f6587a257037 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/value/valuePointPatchField.H @@ -123,13 +123,13 @@ public: const pointPatch& p, const DimensionedField<Type, pointMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : valuePointPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -142,18 +142,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new valuePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference valuePointPatchField ( @@ -161,20 +149,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new valuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -215,7 +202,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); diff --git a/src/OpenFOAM/fields/pointPatchFields/basic/zeroGradient/zeroGradientPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/basic/zeroGradient/zeroGradientPointPatchField.H index ca91d23cff70e5a9703119d37b3b4e552b7330d6..14ac2777e1839c3b7e06b0cafadf1097961ae4d8 100644 --- a/src/OpenFOAM/fields/pointPatchFields/basic/zeroGradient/zeroGradientPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/basic/zeroGradient/zeroGradientPointPatchField.H @@ -85,18 +85,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new zeroGradientPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference zeroGradientPointPatchField ( @@ -104,20 +92,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new zeroGradientPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/cyclic/cyclicPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/cyclic/cyclicPointPatchField.H index f8cccfa7b0139e3a81322fd3c9df710052473f95..d28e88460543cff7aba674f5bb42f792bf225223 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/cyclic/cyclicPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/cyclic/cyclicPointPatchField.H @@ -92,18 +92,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new cyclicPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference cyclicPointPatchField ( @@ -111,19 +99,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new cyclicPointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -164,7 +152,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/cyclicSlip/cyclicSlipPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/cyclicSlip/cyclicSlipPointPatchField.H index 600fc2080be3caec74474549d31a3ac6a9c57b45..08479d9bf50392c88888843a1e639b996d1b7ca5 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/cyclicSlip/cyclicSlipPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/cyclicSlip/cyclicSlipPointPatchField.H @@ -87,18 +87,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new cyclicSlipPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference cyclicSlipPointPatchField ( @@ -106,19 +94,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new cyclicSlipPointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -127,7 +115,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/empty/emptyPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/empty/emptyPointPatchField.H index dc2c9fc903f788f8a90fb20384841477d8d2d373..a865ee9ee7748eb4ca7a29f76f590dcbb564f450 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/empty/emptyPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/empty/emptyPointPatchField.H @@ -86,18 +86,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new emptyPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference emptyPointPatchField ( @@ -105,22 +93,22 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new emptyPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } + // Member functions //- Constraint handling diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicPointPatchField.H index 982884b84a3c8f978c3746d2949d0280003ca1e2..67d90a5366dd77a87f74d9dcfffbf1d1c657ad1b 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicPointPatchField.H @@ -87,18 +87,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new nonuniformTransformCyclicPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference nonuniformTransformCyclicPointPatchField ( @@ -106,19 +94,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new nonuniformTransformCyclicPointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -127,7 +115,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/processor/processorPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/processor/processorPointPatchField.H index ed9f82d6692b449a56e9f277e2c0bbe0baca4a8e..6fa9bf6cac3c9696242aa48e73d3738532247f4e 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/processor/processorPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/processor/processorPointPatchField.H @@ -91,18 +91,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new processorPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference processorPointPatchField ( @@ -110,20 +98,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new processorPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -167,7 +154,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.C b/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.C index 0554b28a9c218f3f57af7f52a51c4c6869cb3945..2d0e1bd140ef529c32056a2236fa3e1707bb5518 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.C +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.C @@ -93,15 +93,16 @@ void Foam::processorCyclicPointPatchField<Type>::initSwapAddSeparated Field<Type>& pField ) const { - if (Pstream::parRun()) + if (UPstream::parRun()) { // Get internal field into correct order for opposite side. Note use // of member data buffer since using non-blocking. Could be optimised // out if not using non-blocking... - sendBuf_ = this->patchInternalField + this->patchInternalField ( pField, - procPatch_.reverseMeshPoints() + procPatch_.reverseMeshPoints(), + sendBuf_ ); if (commsType == Pstream::commsTypes::nonBlocking) @@ -138,7 +139,7 @@ void Foam::processorCyclicPointPatchField<Type>::swapAddSeparated Field<Type>& pField ) const { - if (Pstream::parRun()) + if (UPstream::parRun()) { // If nonblocking, data is already in receive buffer diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.H index 7dd46e4f74dcac65e1021da30908e95fb8b51a9b..147fd58cf9b38de217f1e3c250d052fedb05c76c 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/processorCyclic/processorCyclicPointPatchField.H @@ -99,18 +99,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new processorCyclicPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference processorCyclicPointPatchField ( @@ -118,20 +106,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new processorCyclicPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -166,7 +153,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/symmetry/symmetryPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/symmetry/symmetryPointPatchField.H index 7be7b6ff01eb45dda1c967c166a5c6ff4ac4b38b..8a9192bd16b33d1f3aca5671ca2850b2868f3d66 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/symmetry/symmetryPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/symmetry/symmetryPointPatchField.H @@ -87,18 +87,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new symmetryPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference symmetryPointPatchField ( @@ -106,20 +94,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new symmetryPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/symmetryPlane/symmetryPlanePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/symmetryPlane/symmetryPlanePointPatchField.H index 1422a6132058cc28150aba0d010b6ef3747dc6aa..b3b62e8c69e01e274452508665b8c88ca5a8b2a2 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/symmetryPlane/symmetryPlanePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/symmetryPlane/symmetryPlanePointPatchField.H @@ -92,18 +92,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new symmetryPlanePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference symmetryPlanePointPatchField ( @@ -111,20 +99,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new symmetryPlanePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -139,7 +126,7 @@ public: //- Update the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/OpenFOAM/fields/pointPatchFields/constraint/wedge/wedgePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/constraint/wedge/wedgePointPatchField.H index 7b2ebc85869f34f100829ed3eda19d5c6494bc64..31f2bd75d9701f4d4510ac09e7afac4db4ab5c3c 100644 --- a/src/OpenFOAM/fields/pointPatchFields/constraint/wedge/wedgePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/constraint/wedge/wedgePointPatchField.H @@ -87,18 +87,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new wedgePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference wedgePointPatchField ( @@ -106,19 +94,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new wedgePointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -133,7 +121,7 @@ public: //- Update the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.C b/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.C index b289adb034604b84b08d59c888c2baa6fbefe7d4..c5f75450c6822dec7d9feaa808655a268b010007 100644 --- a/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.C +++ b/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.C @@ -192,7 +192,7 @@ Foam::codedFixedValuePointPatchField<Type>::codedFixedValuePointPatchField this->extrapolateInternal(); // Evaluate to assign a value - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } @@ -237,9 +237,9 @@ Foam::codedFixedValuePointPatchField<Type>::redirectPatchField() const // Construct a patch // Make sure to construct the patchfield with up-to-date value - OStringStream os; + OCharStream os; this->writeValueEntry(os); - IStringStream is(os.str()); + ISpanStream is(os.view()); dictionary constructDict(is); constructDict.set("type", name_); diff --git a/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.H index 438acf74ce304932e93cfaf058a8a9663629b4d7..af76e7d9747aaf98ebdb302086267b203cce0af1 100644 --- a/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/derived/codedFixedValue/codedFixedValuePointPatchField.H @@ -209,15 +209,6 @@ public: const codedFixedValuePointPatchField<Type>& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new codedFixedValuePointPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference codedFixedValuePointPatchField ( @@ -225,20 +216,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new codedFixedValuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -253,7 +243,7 @@ public: //- Evaluate the patch field, sets updated() to false virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/OpenFOAM/fields/pointPatchFields/derived/fixedNormalSlip/fixedNormalSlipPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/derived/fixedNormalSlip/fixedNormalSlipPointPatchField.H index d4c031350ed67fae5bd2456d0cd8fc479fdd9d9a..8cbb45142dba20f249bf50e15be3deccd6ce0d64 100644 --- a/src/OpenFOAM/fields/pointPatchFields/derived/fixedNormalSlip/fixedNormalSlipPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/derived/fixedNormalSlip/fixedNormalSlipPointPatchField.H @@ -104,18 +104,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new fixedNormalSlipPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference fixedNormalSlipPointPatchField ( @@ -123,28 +111,28 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new fixedNormalSlipPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } + // Member functions //- Update the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/OpenFOAM/fields/pointPatchFields/derived/slip/slipPointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/derived/slip/slipPointPatchField.H index 027cc956ad2769b7e8f9defe56a92939d88aecb7..cae5ae25506b6f4dc680975e79f3f752c2151c3c 100644 --- a/src/OpenFOAM/fields/pointPatchFields/derived/slip/slipPointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/derived/slip/slipPointPatchField.H @@ -86,18 +86,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new slipPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference slipPointPatchField ( @@ -105,20 +93,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new slipPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/OpenFOAM/fields/pointPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValuePointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValuePointPatchField.H index 2fe588648acdafa6ed384339aa93775d6060b65b..88de0d0d09e88784cc573044804c973e3b9a1c7a 100644 --- a/src/OpenFOAM/fields/pointPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValuePointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValuePointPatchField.H @@ -101,15 +101,6 @@ public: const timeVaryingUniformFixedValuePointPatchField<Type>& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new timeVaryingUniformFixedValuePointPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingUniformFixedValuePointPatchField ( @@ -117,16 +108,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new timeVaryingUniformFixedValuePointPatchField<Type>(*this, iF) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.C b/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.C index f2f775ccc4bdbbb20f19e125e0c6648a17041ba0..cf5fc3fbcdec678d12b42503bab43f6b775d0ff3 100644 --- a/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.C +++ b/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -109,10 +109,31 @@ void Foam::pointPatchField<Type>::write(Ostream& os) const template<class Type> -Foam::tmp<Foam::Field<Type>> -Foam::pointPatchField<Type>::patchInternalField() const +template<class Type1> +void Foam::pointPatchField<Type>::patchInternalField +( + const UList<Type1>& internalData, + const labelUList& addressing, + Field<Type1>& pfld +) const { - return patchInternalField(primitiveField()); + // Check size + if (internalData.size() != primitiveField().size()) + { + FatalErrorInFunction + << "Internal field size: " << internalData.size() + << " != mesh size: " << primitiveField().size() << nl + << abort(FatalError); + } + + const label len = this->size(); + + pfld.resize_nocopy(len); + + for (label i = 0; i < len; ++i) + { + pfld[i] = internalData[addressing[i]]; + } } @@ -121,21 +142,13 @@ template<class Type1> Foam::tmp<Foam::Field<Type1>> Foam::pointPatchField<Type>::patchInternalField ( - const Field<Type1>& iF, - const labelUList& meshPoints + const UList<Type1>& internalData, + const labelUList& addressing ) const { - // Check size - if (iF.size() != primitiveField().size()) - { - FatalErrorInFunction - << "given internal field does not correspond to the mesh. " - << "Field size: " << iF.size() - << " mesh size: " << primitiveField().size() - << abort(FatalError); - } - - return tmp<Field<Type1>>::New(iF, meshPoints); + auto tpfld = tmp<Field<Type1>>::New(); + this->patchInternalField(internalData, addressing, tpfld.ref()); + return tpfld; } @@ -144,10 +157,20 @@ template<class Type1> Foam::tmp<Foam::Field<Type1>> Foam::pointPatchField<Type>::patchInternalField ( - const Field<Type1>& iF + const UList<Type1>& internalData ) const { - return patchInternalField(iF, patch().meshPoints()); + auto tpfld = tmp<Field<Type1>>::New(); + this->patchInternalField(internalData, patch().meshPoints(), tpfld.ref()); + return tpfld; +} + + +template<class Type> +Foam::tmp<Foam::Field<Type>> +Foam::pointPatchField<Type>::patchInternalField() const +{ + return patchInternalField(primitiveField()); } @@ -163,18 +186,16 @@ void Foam::pointPatchField<Type>::addToInternalField if (iF.size() != primitiveField().size()) { FatalErrorInFunction - << "given internal field does not correspond to the mesh. " - << "Field size: " << iF.size() - << " mesh size: " << primitiveField().size() + << "Internal field size: " << iF.size() + << " != mesh size: " << primitiveField().size() << nl << abort(FatalError); } if (pF.size() != size()) { FatalErrorInFunction - << "given patch field does not correspond to the mesh. " - << "Field size: " << pF.size() - << " mesh size: " << size() + << "Patch field size: " << pF.size() + << " != patch size: " << size() << nl << abort(FatalError); } @@ -201,18 +222,16 @@ void Foam::pointPatchField<Type>::addToInternalField if (iF.size() != primitiveField().size()) { FatalErrorInFunction - << "given internal field does not correspond to the mesh. " - << "Field size: " << iF.size() - << " mesh size: " << primitiveField().size() + << "Internal field size: " << iF.size() + << " != mesh size: " << primitiveField().size() << nl << abort(FatalError); } if (pF.size() != size()) { FatalErrorInFunction - << "given patch field does not correspond to the mesh. " - << "Field size: " << pF.size() - << " mesh size: " << size() + << "Patch field size: " << pF.size() + << " != patch size: " << size() << nl << abort(FatalError); } @@ -240,18 +259,16 @@ void Foam::pointPatchField<Type>::setInInternalField if (iF.size() != primitiveField().size()) { FatalErrorInFunction - << "given internal field does not correspond to the mesh. " - << "Field size: " << iF.size() - << " mesh size: " << primitiveField().size() + << "Internal field size: " << iF.size() + << " != mesh size: " << primitiveField().size() << nl << abort(FatalError); } if (pF.size() != meshPoints.size()) { FatalErrorInFunction - << "given patch field does not correspond to the meshPoints. " - << "Field size: " << pF.size() - << " meshPoints size: " << size() + << "Patch field size: " << pF.size() + << " != meshPoints size: " << meshPoints.size() << nl << abort(FatalError); } diff --git a/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.H b/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.H index b6b7210d8b34f933125e6289e11171f501fe866b..c2a47ce4125a60a539b0ff2a271cc38d706863a5 100644 --- a/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.H +++ b/src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -240,26 +240,32 @@ class pointPatchField : public pointPatchFieldBase { - // Private Data +public: - //- Reference to internal field - const DimensionedField<Type, pointMesh>& internalField_; + // Public Data Types + //- The patch type for the patch field + typedef pointPatch Patch; -public: + //- The value_type for the patch field + typedef Type value_type; - //- The Field value_type - typedef Type value_type; + //- The internal field type associated with the patch field + typedef DimensionedField<Type, pointMesh> Internal; - //- The internal field type associated with the patch field - typedef DimensionedField<Type, pointMesh> Internal; + //- Type for a \em calculated patch + typedef calculatedPointPatchField<Type> Calculated; - //- The patch type for the patch field - typedef pointPatch Patch; - //- Type for a \em calculated patch - typedef calculatedPointPatchField<Type> Calculated; +private: + + // Private Data + + //- Reference to internal field + const DimensionedField<Type, pointMesh>& internalField_; + +public: // Declare run-time constructor selection tables @@ -339,17 +345,31 @@ public: const DimensionedField<Type, pointMesh>& ); - //- Construct and return a clone + //- Clone patch field with its own internal field reference virtual autoPtr<pointPatchField<Type>> clone() const = 0; - //- Construct and return a clone setting internal field reference + //- Clone patch field with an internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const = 0; - // Selectors + // Factory Methods + + //- Clone a patch field, optionally with internal field reference etc. + template<class DerivedPatchField, class... Args> + static autoPtr<pointPatchField<Type>> Clone + ( + const DerivedPatchField& pf, + Args&&... args + ) + { + return autoPtr<pointPatchField<Type>> + ( + new DerivedPatchField(pf, std::forward<Args>(args)...) + ); + } //- Return a pointer to a new patchField created on freestore given // patch and internal field @@ -394,11 +414,19 @@ public: //- Return a pointer to a new calculatedPointPatchField created on // freestore without setting patchField values - template<class Type2> static autoPtr<pointPatchField<Type>> NewCalculatedType ( - const pointPatchField<Type2>& + const pointPatch& p + ); + + //- Return a pointer to a new calculatedPointPatchField created on + // freestore without setting patchField values + template<class AnyType> + static autoPtr<pointPatchField<Type>> + NewCalculatedType + ( + const pointPatchField<AnyType>& pf ); @@ -431,26 +459,43 @@ public: // Evaluation Functions - //- Return field created from appropriate internal field values - tmp<Field<Type>> patchInternalField() const; + //- Extract field using specified addressing + // \param internalData The internal field to extract from + // \param addressing Addressing (mesh-points) into internal field + // \param [out] pfld The extracted patch field. + // It is always resized according to the patch size(), + // which can be smaller than the addressing size + template<class Type1> + void patchInternalField + ( + const UList<Type1>& internalData, + const labelUList& addressing, + Field<Type1>& pfld + ) const; - //- Return field created from appropriate internal field values + //- Return field created from selected internal field values //- given internal field reference + // \param internalData The internal field to extract from + // \param addressing Addressing (mesh-points) into internal field template<class Type1> tmp<Field<Type1>> patchInternalField ( - const Field<Type1>& iF + const UList<Type1>& internalData, + const labelUList& addressing ) const; - //- Return field created from selected internal field values + //- Return field created from appropriate internal field values //- given internal field reference template<class Type1> tmp<Field<Type1>> patchInternalField ( - const Field<Type1>& iF, - const labelUList& meshPoints + const UList<Type1>& internalData ) const; + //- Return field created from appropriate internal field values + tmp<Field<Type>> patchInternalField() const; + + //- Given the internal field and a patch field, //- add the patch field to the internal field template<class Type1> @@ -517,14 +562,14 @@ public: //- Initialise evaluation of the patch field (do nothing) virtual void initEvaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ) {} //- Evaluate the patch field, sets updated() to false virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ); //- Initialise the evaluation of the patch field after a local @@ -532,7 +577,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -540,7 +585,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/OpenFOAM/global/argList/argList.C b/src/OpenFOAM/global/argList/argList.C index a94437514a6d3ffbd3c4c3a83baa21afcf5dcaeb..557d4614a5a95730c48deb845ad6a32dbb5b937e 100644 --- a/src/OpenFOAM/global/argList/argList.C +++ b/src/OpenFOAM/global/argList/argList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -271,8 +271,8 @@ static bool printRootsSubscription if (index == -1) { - sortedProcs.append(host); - sortedRoots.append(i); + sortedProcs.push_back(host); + sortedRoots.push_back(i); } else if (roots[sortedRoots[index]] != root) { @@ -360,9 +360,9 @@ void Foam::argList::addArgument const string& usage ) { - validArgs.append(argName); + validArgs.push_back(argName); - // The first program argument starts at 1 - obtain index after the append + // The first program argument starts at 1 - obtain index after push_back() const label index = validArgs.size(); @@ -470,7 +470,7 @@ void Foam::argList::addNote(const string& note) { if (!note.empty()) { - notes.append(note); + notes.push_back(note); } } @@ -1016,6 +1016,7 @@ Foam::argList::argList runControl_.runPar(argc, argv); } + // addProfiling(argList, "argList"); // ------------------------------------------------------------------------ @@ -1095,8 +1096,8 @@ Foam::argList::argList if (strcmp(optName, "lib") == 0) { // The '-lib' option: - // Append name(s) to libs for later opening - libs().append(this->getList<fileName>(argi)); + // Add name(s) to libs for later opening + libs().push_back(this->getList<fileName>(argi)); } else if (strcmp(optName, "debug-switch") == 0) { @@ -1261,7 +1262,7 @@ void Foam::argList::parse const string timeString = clock::clockTime(); // Print the banner once only for parallel runs - if (Pstream::master() && bannerEnabled()) + if (UPstream::master() && bannerEnabled()) { IOobject::writeBanner(Info, true) << "Build : "; @@ -1352,16 +1353,16 @@ void Foam::argList::parse // Collect machine/pid, and check that the build is identical if (runControl_.parRun()) { - if (Pstream::master()) + if (UPstream::master()) { - hostMachine.resize(Pstream::nProcs()-1); - hostProcs.resize(Pstream::nProcs()-1); + hostMachine.resize(UPstream::nProcs()-1); + hostProcs.resize(UPstream::nProcs()-1); string procBuild; label procPid; int proci = 0; - for (const int subproci : Pstream::subProcs()) + for (const int subproci : UPstream::subProcs()) { - IPstream fromSubproc(Pstream::commsTypes::scheduled, subproci); + IPstream fromSubproc(UPstream::commsTypes::scheduled, subproci); fromSubproc >> procBuild >> hostMachine[proci] >> procPid; @@ -1383,8 +1384,8 @@ void Foam::argList::parse { OPstream toMaster ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); toMaster << foamVersion::build << Foam::hostName() << Foam::pid(); } @@ -1394,14 +1395,34 @@ void Foam::argList::parse // Case is a single processor run unless it is running parallel int nProcs = 1; - // Roots if running distributed + // Roots if running distributed. Only sized on the master fileNameList roots; + enum distributedCodes + { + NON_DISTRIBUTED = 0, + DISTRIBUTED = 1, + DISTRIBUTED_SINGLE_ROOT = 2, + DISTRIBUTED_MULTIPLE_ROOTS = 3 + }; + + // Track which type of distributed roots etc are being used + label distributedType + ( + runControl_.distributed() + ? distributedCodes::DISTRIBUTED + : distributedCodes::NON_DISTRIBUTED + ); + + // Some cases where knowing the writeFormat can be useful... + // label writeFormat(-1); + + // If this actually is a parallel run if (runControl_.parRun()) { // For the master - if (Pstream::master()) + if (UPstream::master()) { // Establish rootPath_/globalCase_/case_ for master setCasePaths(); @@ -1413,7 +1434,7 @@ void Foam::argList::parse { bool adjustOpt = false; - if (isDir(source)) + if (Foam::isDir(source)) { source /= "decomposeParDict"; adjustOpt = true; @@ -1440,6 +1461,7 @@ void Foam::argList::parse { source = "-roots"; runControl_.distributed(true); + distributedType = distributedCodes::DISTRIBUTED; if (roots.empty()) { @@ -1456,6 +1478,7 @@ void Foam::argList::parse { source = "-hostRoots"; runControl_.distributed(true); + distributedType = distributedCodes::DISTRIBUTED; ITstream is(this->lookup("hostRoots")); @@ -1470,12 +1493,12 @@ void Foam::argList::parse } // Match machine names to roots - roots.resize(Pstream::nProcs()-1, fileName::null); + roots.resize(UPstream::nProcs()-1, fileName::null); for (const auto& hostRoot : hostRoots) { labelList matched ( - findMatchingStrings(hostRoot.first(), hostMachine) + wordRes::matching(hostRoot.first(), hostMachine) ); for (const label matchi : matched) { @@ -1510,7 +1533,7 @@ void Foam::argList::parse dictNProcs = roots.size()+1; } } - else if (checkProcessorDirectories_ && Pstream::nProcs() > 1) + else if (checkProcessorDirectories_ && UPstream::nProcs() > 1) { // Check values from decomposeParDict @@ -1525,7 +1548,7 @@ void Foam::argList::parse // the masterUncollated/collated handler. Note that we // also have to protect the actual dictionary parsing since // it might trigger file access (e.g. #include, #codeStream) - const bool oldParRun = Pstream::parRun(false); + const bool oldParRun = UPstream::parRun(false); // Note: non-parallel running might update // fileOperation::nProcs() so store & restore below const label nOldProcs = fileHandler().nProcs(); @@ -1549,6 +1572,8 @@ void Foam::argList::parse { nDomainsReadOpt = IOobjectOption::MUST_READ; runControl_.distributed(true); + distributedType = distributedCodes::DISTRIBUTED; + decompDict.readEntry("roots", roots); if (roots.empty()) @@ -1586,10 +1611,10 @@ void Foam::argList::parse } } - Pstream::parRun(oldParRun); // Restore parallel state + UPstream::parRun(oldParRun); // Restore parallel state const_cast<fileOperation&>(fileHandler()).nProcs(nOldProcs); - if (Pstream::nProcs() == 1) + if (UPstream::nProcs() == 1) { Warning << "Running parallel on single processor. This only" @@ -1598,22 +1623,55 @@ void Foam::argList::parse } } - // Convenience: - // when a single root is specified, use it for all processes - if (roots.size() == 1) + + // Distributed roots + if (!roots.empty()) { - const fileName rootName(roots[0]); - roots.resize(Pstream::nProcs()-1, rootName); + for (fileName& dir : roots) + { + dir.expand(); + } - // Adjust dictNProcs for command-line '-roots' option - if (dictNProcs <= 0) + // Identical root specified everywhere? + // - use optimized single-root variant + if (roots.size() > 1 && roots.uniform()) { - dictNProcs = roots.size()+1; + roots.resize(1); + } + + if (roots.size() == 1) + { + // Single root specified, use it for all processes + distributedType = + distributedCodes::DISTRIBUTED_SINGLE_ROOT; + + // Adjust dictNProcs for command-line '-roots' option + if (dictNProcs <= 0) + { + dictNProcs = UPstream::nProcs(); + } + } + else if (roots.size() > 1) + { + distributedType = + distributedCodes::DISTRIBUTED_MULTIPLE_ROOTS; + + if (roots.size() != UPstream::nProcs()-1) + { + FatalError + << "Number of roots " << roots.size() + << " != number of sub-ranks " + << UPstream::nProcs()-1 + << exit(FatalError); + } } } + // // Check number of processors. + // + // nProcs => number of actual procs // dictNProcs => number of procs specified in decompositionDict // nProcDirs => number of processor directories @@ -1625,73 +1683,33 @@ void Foam::argList::parse if ( checkProcessorDirectories_ - && Pstream::nProcs() > 1 - && dictNProcs > Pstream::nProcs() + && UPstream::nProcs() > 1 ) { - FatalError - << this->relativePath(source) - << " specifies " << dictNProcs - << " processors but job was started with " - << Pstream::nProcs() << " processors." - << exit(FatalError); - } - - // Distributed data - if (roots.size()) - { - if (roots.size() != Pstream::nProcs()-1) + if (dictNProcs > UPstream::nProcs()) { FatalError - << "number of entries in roots " - << roots.size() - << " is not equal to the number of sub-processes " - << Pstream::nProcs()-1 + << this->relativePath(source) + << " specifies " << dictNProcs + << " processors but job was started with " + << UPstream::nProcs() << " ranks." << exit(FatalError); } - for (fileName& dir : roots) - { - dir.expand(); - } - - // Distribute the master's argument list (with new root) - const bool hadCaseOpt = options_.contains("case"); - for (const int subproci : Pstream::subProcs()) - { - options_.set("case", roots[subproci-1]/globalCase_); - - OPstream toProc(Pstream::commsTypes::scheduled, subproci); - - toProc - << args_ << options_ - << runControl_.distributed() - << label(runControl_.dryRun()) - << label(runControl_.verbose()); - } - options_.erase("case"); - - // Restore [-case dir] - if (hadCaseOpt) - { - options_.set("case", rootPath_/globalCase_); - } - } - else - { // Possibly going to fewer processors. // Check if all procDirs are there. + // NOTE: Only works when not using distributed roots! if ( - checkProcessorDirectories_ - && Pstream::nProcs() > 1 + // Can only rely on directory scanning *without* distributed roots! + roots.empty() && dictNProcs >= 1 - && dictNProcs < Pstream::nProcs() + && dictNProcs < UPstream::nProcs() ) { label nProcDirs = 0; { - const bool oldParRun(UPstream::parRun(false)); + const bool oldParRun = UPstream::parRun(false); // Don't cache processor directories (probably not // needed since master-only const int oldCacheLevel(fileOperation::cacheLevel(0)); @@ -1710,60 +1728,110 @@ void Foam::argList::parse UPstream::parRun(oldParRun); } - if (nProcDirs < UPstream::nProcs()) { FatalError - << "number of processor directories = " - << nProcDirs - << " is not equal to the number of processors = " + << "Number of processor directories = " << nProcDirs + << " is not equal to the number of ranks = " << UPstream::nProcs() << exit(FatalError); } } + } - // Distribute the master's argument list (unaltered) - for (const int proci : UPstream::subProcs()) - { - OPstream toProc(UPstream::commsTypes::scheduled, proci); - toProc - << args_ << options_ - << runControl_.distributed() - << label(runControl_.dryRun()) - << label(runControl_.verbose()); - } + // Broadcast the master's argument list (unaltered) + { + OPBstream toProcs(UPstream::worldComm); + + toProcs + << args_ << options_ + << distributedType + << label(runControl_.dryRun()) + << label(runControl_.verbose()); } } else { - // Collect the master's argument list - bool isDistributed; + // Receive the broadcasted master's argument list label numDryRun, numVerbose; - IPstream fromMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); + IPBstream fromMaster(UPstream::worldComm); fromMaster >> args_ >> options_ - >> isDistributed + >> distributedType >> numDryRun >> numVerbose; - runControl_.distributed(isDistributed); + runControl_.distributed(distributedType); runControl_.dryRun(numDryRun); runControl_.verbose(numVerbose); + } + + + // Final handling of distributed roots (if any) + if + ( + distributedType == distributedCodes::DISTRIBUTED_SINGLE_ROOT + ) + { + // The same root for all sub-ranks + // - use broadcast to transmit value + + fileName newCasePath; + + if (UPstream::master()) + { + newCasePath = roots[0]/globalCase_; + OPBstream::send(newCasePath); // worldComm + } + else + { + IPBstream::recv(newCasePath); // worldComm + options_.set("case", newCasePath); + } + } + else if + ( + distributedType == distributedCodes::DISTRIBUTED_MULTIPLE_ROOTS + ) + { + // Different roots for each sub-rank + // - use point-to-point communication to transmit values - // Establish rootPath_/globalCase_/case_ for sub-process + fileName newCasePath; + + if (UPstream::master()) + { + for (const int subproci : UPstream::subProcs()) + { + newCasePath = roots[subproci-1]/globalCase_; + OPstream::send(newCasePath, subproci); // worldComm + } + } + else + { + IPstream::recv(newCasePath, UPstream::masterNo()); // worldComm + options_.set("case", newCasePath); + } + } + + + // Establish rootPath_/globalCase_/case_ for sub-process + if (!UPstream::master()) + { setCasePaths(); } - nProcs = Pstream::nProcs(); - if (Pstream::nProcs() > 1) + + nProcs = UPstream::nProcs(); + if (UPstream::nProcs() > 1) { - case_ = globalCase_/("processor" + Foam::name(Pstream::myProcNo())); + case_ = + ( + globalCase_ + / ("processor" + Foam::name(UPstream::myProcNo())) + ); } else { @@ -1777,6 +1845,7 @@ void Foam::argList::parse case_ = globalCase_; // Redundant, but extra safety? } + // If needed, adjust fileHandler for distributed roots if (runControl_.distributed() && fileOperation::fileHandlerPtr_) { @@ -1833,7 +1902,7 @@ void Foam::argList::parse List<fileNameList> rankToDirs(UPstream::nProcs()); if (UPstream::master()) { - const bool oldParRun = Pstream::parRun(false); + const bool oldParRun = UPstream::parRun(false); // Note: non-parallel running might update // fileOperation::nProcs() so store & restore below const label nOldProcs = fileHandler().nProcs(); @@ -1980,6 +2049,8 @@ void Foam::argList::parse Info<< "Pstream initialized with:" << nl << " floatTransfer : " << Switch::name(UPstream::floatTransfer) << nl + << " maxCommsSize : " + << UPstream::maxCommsSize << nl << " nProcsSimpleSum : " << UPstream::nProcsSimpleSum << nl << " nonBlockingExchange: " @@ -2024,7 +2095,7 @@ void Foam::argList::parse sigQuit::set(bannerEnabled()); sigSegv::set(bannerEnabled()); - if (Pstream::master() && bannerEnabled()) + if (UPstream::master() && bannerEnabled()) { Info<< "fileModificationChecking : " << "Monitoring run-time modified files using " @@ -2273,7 +2344,7 @@ bool Foam::argList::check(bool checkArgs, bool checkOpts) const { bool ok = true; - if (Pstream::master()) + if (UPstream::master()) { const label nargs = args_.size()-1; if (checkArgs && nargs != validArgs.size()) @@ -2331,7 +2402,7 @@ bool Foam::argList::checkRootCase() const const fileName pathDir(fileHandler().filePath(path(), false)); - if (checkProcessorDirectories_ && pathDir.empty() && Pstream::master()) + if (checkProcessorDirectories_ && pathDir.empty() && UPstream::master()) { // Allow non-existent processor directories on sub-processes, // to be created later (e.g. redistributePar) diff --git a/src/OpenFOAM/global/clockTime/clockTime.H b/src/OpenFOAM/global/clockTime/clockTime.H index 5a82387dc61b4bea654f65f7e41bbf6fc4d993b0..e3e1a15518690f43ad097211b35508cade59c3c3 100644 --- a/src/OpenFOAM/global/clockTime/clockTime.H +++ b/src/OpenFOAM/global/clockTime/clockTime.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,8 +46,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef clockTime_H -#define clockTime_H +#ifndef Foam_clockTime_H +#define Foam_clockTime_H #include "clockValue.H" @@ -67,7 +67,8 @@ class clockTime //- Time point at start, or after resetTime clockValue start_; - //- Time point when elapsedTime or timeIncrement was called + //- Time point when elapsedTime or timeIncrement was called. + //- Also updated by resetTime and resetTimeIncrement. mutable clockValue last_; @@ -84,13 +85,18 @@ public: // Member Functions - //- Reset to use the current clock value for the start point + //- Reset to use the current clock value for the start + //- and increment points inline void resetTime(); + //- Reset to use the current clock value for the increment point + inline void resetTimeIncrement() const; + //- The time [seconds] since the start point inline double elapsedTime() const; - //- The time [seconds] since the last call to timeIncrement() + //- The time [seconds] since the last call to elapsedTime(), + //- timeIncrement() or resetTime(), resetTimeIncrement() inline double timeIncrement() const; }; diff --git a/src/OpenFOAM/global/clockTime/clockTimeI.H b/src/OpenFOAM/global/clockTime/clockTimeI.H index 6ec10f4d25e7fc5af8ac6090e96ef076d34103e0..92d86af60cca6d28ba5e8961f74aa6d374aca502 100644 --- a/src/OpenFOAM/global/clockTime/clockTimeI.H +++ b/src/OpenFOAM/global/clockTime/clockTimeI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,6 +50,12 @@ inline void Foam::clockTime::resetTime() } +inline void Foam::clockTime::resetTimeIncrement() const +{ + last_.update(); +} + + inline double Foam::clockTime::elapsedTime() const { last_.update(); diff --git a/src/OpenFOAM/global/clockValue/clockValue.H b/src/OpenFOAM/global/clockValue/clockValue.H index 6d402abd8c1c20b860783e9a527f72ac086835f9..5dfe3303c7d4593f0e4f84dce2bdd30baf7b6c5d 100644 --- a/src/OpenFOAM/global/clockValue/clockValue.H +++ b/src/OpenFOAM/global/clockValue/clockValue.H @@ -36,8 +36,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef clockValue_H -#define clockValue_H +#ifndef Foam_clockValue_H +#define Foam_clockValue_H #include <chrono> #include <string> @@ -93,10 +93,7 @@ public: // Member Functions //- The time duration - inline const value_type& value() const - { - return value_; - } + const value_type& value() const noexcept { return value_; } //- Reset to zero inline void clear(); diff --git a/src/OpenFOAM/global/cpuTime/cpuTimeCxx.C b/src/OpenFOAM/global/cpuTime/cpuTimeCxx.C index fbb8277975df7833dac5dc1bb249fe17b13369c0..d762851bf8175a28668eb0e58d559a9425b6a031 100644 --- a/src/OpenFOAM/global/cpuTime/cpuTimeCxx.C +++ b/src/OpenFOAM/global/cpuTime/cpuTimeCxx.C @@ -65,6 +65,12 @@ void Foam::cpuTimeCxx::resetCpuTime() } +void Foam::cpuTimeCxx::resetCpuTimeIncrement() const +{ + last_.update(); +} + + double Foam::cpuTimeCxx::elapsedCpuTime() const { last_.update(); diff --git a/src/OpenFOAM/global/cpuTime/cpuTimeCxx.H b/src/OpenFOAM/global/cpuTime/cpuTimeCxx.H index 91e5c939c04513237f60ac8f1841a41e7de52d7b..4f0476fa30511de963ae5d1764523aec314ddf14 100644 --- a/src/OpenFOAM/global/cpuTime/cpuTimeCxx.H +++ b/src/OpenFOAM/global/cpuTime/cpuTimeCxx.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2019 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cpuTimeCxx_H -#define cpuTimeCxx_H +#ifndef Foam_cpuTimeCxx_H +#define Foam_cpuTimeCxx_H #include <ctime> @@ -71,7 +71,8 @@ class cpuTimeCxx //- Start time, at the time of construction value_type start_; - //- Last time when elapsedTime or timeIncrement was called + //- Last time when elapsedCpuTime or cpuTimeIncrement was called. + //- Also affected by resetCpuTime and resetCpuTimeIncrement. mutable value_type last_; @@ -91,13 +92,17 @@ public: // Member Functions - //- Reset to use the current time for the start time + //- Reset to use the current time for the start and increment points void resetCpuTime(); + //- Reset to use the current time for the increment point + void resetCpuTimeIncrement() const; + //- Return CPU time (in seconds) from the start double elapsedCpuTime() const; - //- Return CPU time (in seconds) since last call to cpuTimeIncrement() + //- Return CPU time [seconds] since last call to cpuTimeIncrement(), + //- resetCpuTimeIncrement(). double cpuTimeIncrement() const; }; diff --git a/src/OpenFOAM/global/debug/simpleObjectRegistry.C b/src/OpenFOAM/global/debug/simpleObjectRegistry.C index 5636a7bca5bf6f925a29476cc3c711b3c2d0ca5b..4b032b357089e120608bdb58f64418f757dab00d 100644 --- a/src/OpenFOAM/global/debug/simpleObjectRegistry.C +++ b/src/OpenFOAM/global/debug/simpleObjectRegistry.C @@ -28,6 +28,7 @@ License #include "simpleObjectRegistry.H" #include "dictionary.H" #include "ITstream.H" +#include "SpanStream.H" #include "StringStream.H" #include "int.H" #include "floatScalar.H" @@ -57,11 +58,15 @@ void Foam::simpleObjectRegistry::setValues const List<simpleRegIOobject*>& objects = *objPtr; + OCharStream os; + ISpanStream is; + if (dEntry.isDict()) { - OStringStream os; - os << dEntry.dict(); - IStringStream is(os.str()); + os.rewind(); + os << dEntry.dict(); + + is.reset(os.view()); // Or alternatively? // ITstream is(dEntry.dict().tokens()); @@ -72,7 +77,7 @@ void Foam::simpleObjectRegistry::setValues obj->readData(is); } } - else + else // dEntry.isStream() { for (simpleRegIOobject* obj : objects) { diff --git a/src/OpenFOAM/global/fileOperations/collatedFileOperation/OFstreamCollator.C b/src/OpenFOAM/global/fileOperations/collatedFileOperation/OFstreamCollator.C index 6ee4bb36a872942f4f0c03b1688b300e7b59603b..5aa41da120035e07c6a4a852f5dd0e11201209e6 100644 --- a/src/OpenFOAM/global/fileOperations/collatedFileOperation/OFstreamCollator.C +++ b/src/OpenFOAM/global/fileOperations/collatedFileOperation/OFstreamCollator.C @@ -80,7 +80,7 @@ bool Foam::OFstreamCollator::writeFile osPtr.reset(new OFstream(atomic, fName, streamOpt, append)); auto& os = *osPtr; - if (append == IOstreamOption::NON_APPEND) + if (append == IOstreamOption::NO_APPEND) { // No IOobject so cannot use IOobject::writeHeader diff --git a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C index 5bfe78a1f4ad0762b6c12f5dfe7dd766012ebc33..71303704958c4428571b01f809bb1857744eb9a2 100644 --- a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C +++ b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C @@ -59,7 +59,7 @@ namespace fileOperations float collatedFileOperation::maxThreadFileBufferSize ( - debug::floatOptimisationSwitch("maxThreadFileBufferSize", 1e9) + debug::floatOptimisationSwitch("maxThreadFileBufferSize", 0) ); registerOptSwitch ( @@ -90,26 +90,41 @@ void Foam::fileOperations::collatedFileOperation::printBanner DetailInfo << "I/O : " << this->type(); - if (maxThreadFileBufferSize == 0) - { - DetailInfo - << " [unthreaded] (maxThreadFileBufferSize = 0)." << nl - << " Writing may be slow for large file sizes." - << endl; - } - else + if (mag(maxThreadFileBufferSize) > 1) { + // FUTURE: deprecate or remove threading? DetailInfo << " [threaded] (maxThreadFileBufferSize = " << maxThreadFileBufferSize << ")." << nl << " Requires buffer large enough to collect all data" - " or thread support" << nl - << " enabled in MPI. If MPI thread support cannot be" - " enabled, deactivate" << nl - << " threading by setting maxThreadFileBufferSize" - " to 0 in" << nl + " or MPI thread support." << nl + << " To avoid MPI threading [slow], set" + " (maxThreadFileBufferSize = 0) in" << nl << " OpenFOAM etc/controlDict" << endl; } + else + { + DetailInfo + << " [unthreaded] (maxThreadFileBufferSize = 0)." << nl; + + if (mag(maxMasterFileBufferSize) < 1) + { + DetailInfo + << " With scheduled transfer" << nl; + } + else if (maxMasterFileBufferSize >= 1) + { + DetailInfo + << " With non-blocking transfer," + " buffer-size = " << maxMasterFileBufferSize << nl; + } + else + { + DetailInfo + << " With non-blocking transfer," + " minimal buffer size" << nl; + } + } if (withRanks) { @@ -175,7 +190,7 @@ bool Foam::fileOperations::collatedFileOperation::appendObject // UNCOMPRESSED (binary only) IOstreamOption(IOstreamOption::BINARY, streamOpt.version()), // Append on sub-ranks - (isIOmaster ? IOstreamOption::NON_APPEND : IOstreamOption::APPEND) + (isIOmaster ? IOstreamOption::NO_APPEND : IOstreamOption::APPEND_APP) ); if (!os.good()) @@ -369,7 +384,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject comm_, pathName, streamOpt, - IOstreamOption::NON_APPEND, + IOstreamOption::NO_APPEND, writeOnProc ); @@ -416,7 +431,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject comm_, pathName, streamOpt, - IOstreamOption::NON_APPEND, + IOstreamOption::NO_APPEND, writeOnProc ); @@ -455,7 +470,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject { // Re-check static maxThreadFileBufferSize variable to see // if needs to use threading - const bool useThread = (maxThreadFileBufferSize != 0); + const bool useThread = (mag(maxThreadFileBufferSize) > 1); if (debug) { diff --git a/src/OpenFOAM/global/fileOperations/collatedFileOperation/threadedCollatedOFstream.C b/src/OpenFOAM/global/fileOperations/collatedFileOperation/threadedCollatedOFstream.C index 57af56c2682439d6842f169dee2107b44df8d358..d9b0ddc0bb8d5ecc760ba52b5b750abe6a5691d0 100644 --- a/src/OpenFOAM/global/fileOperations/collatedFileOperation/threadedCollatedOFstream.C +++ b/src/OpenFOAM/global/fileOperations/collatedFileOperation/threadedCollatedOFstream.C @@ -81,7 +81,7 @@ Foam::threadedCollatedOFstream::~threadedCollatedOFstream() str(), IOstreamOption(IOstreamOption::BINARY, version(), compression_), atomic_, - IOstreamOption::NON_APPEND, + IOstreamOption::NO_APPEND, useThread_, headerEntries_ ); diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C index 8addedf1d5b5700dc945b3ea539a5f0e07b95f0b..8193f845adbfc9ea574a761c662f75f815cf598d 100644 --- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C +++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017-2018 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1078,7 +1078,8 @@ Foam::IOobject Foam::fileOperation::findInstance ( const IOobject& startIO, const scalar startValue, - const word& stopInstance + const word& stopInstance, + const bool constant_fallback ) const { const Time& time = startIO.time(); @@ -1158,6 +1159,7 @@ Foam::IOobject Foam::fileOperation::findInstance } else { + // At the stopInstance return io; } break; @@ -1198,11 +1200,23 @@ Foam::IOobject Foam::fileOperation::findInstance } - if (!failed && exitIfMissing) + if (!failed) { - failed = failureCodes::FAILED_CONSTINST; + if (exitIfMissing) + { + failed = failureCodes::FAILED_CONSTINST; + } + else if (constant_fallback) + { + io.instance() = time.constant(); + } + else + { + io.instance().clear(); + } } + // Handle failures // ~~~~~~~~~~~~~~~ @@ -1225,7 +1239,7 @@ Foam::IOobject Foam::fileOperation::findInstance { FatalError << stopInstance; } - else + else // FAILED_CONSTINST { FatalError << "constant"; } @@ -1413,7 +1427,7 @@ Foam::fileName Foam::fileOperation::processorsCasePath const word& procsDir ) const { - return io.rootPath()/io.time().globalCaseName()/procsDir; + return io.rootPath()/io.globalCaseName()/procsDir; } diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H index 8053d6dfa8eb70db47d77eca1b949d1975a71e0f..852e0b02d6f82f890c845f1b0b27246d480870c7 100644 --- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H +++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -870,15 +870,24 @@ public: //- Get sorted list of times virtual instantList findTimes(const fileName&, const word&) const; - //- Find instance where IOobject is. - // FatalError if it cannot be found and readOpt is - // (MUST_READ or MUST_READ_IF_MODIFIED). - // Otherwise it returns the stopInstance. + //- Find time instance where IOobject is located. + //- The name of the IOobject can be empty, in which case only the + //- IOobject::local() is checked. + //- Does not search beyond \c stopInstance (if set) or \c constant. + // If the instance cannot be found: + // - FatalError when readOpt is (MUST_READ or READ_MODIFIED) + // - returns the \c stopInstance (if set and reached) + // - return \c constant if constant_fallback is true. + // - return an empty word if constant_fallback is false. + // . virtual IOobject findInstance ( const IOobject& io, const scalar startValue, - const word& stopInstance + //! The search stop instance + const word& stopInstance, + //! Return \c "constant" instead of \c "" if the search failed + const bool constant_fallback = true ) const; //- Callback for time change diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationBroadcast.C b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationBroadcast.C index f45eedbbd03871b62198312ddb30039b4e5fe165..454df5ffd2f8724996cb063b0615577adb1c4981 100644 --- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationBroadcast.C +++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationBroadcast.C @@ -146,15 +146,17 @@ static void broadcastFile_single const uint64_t maxChunkSize = ( - UPstream::maxCommsSize > 0 + (UPstream::maxCommsSize > 0) ? uint64_t(UPstream::maxCommsSize) - : uint64_t(pTraits<int>::max) + : (UPstream::maxCommsSize < 0) // (numBytes fewer than INT_MAX) + ? uint64_t(INT_MAX + UPstream::maxCommsSize) + : uint64_t(INT_MAX) // MPI limit is <int> ); while (fileLength > 0) { - const uint64_t sendSize = min(fileLength, maxChunkSize); + const uint64_t sendSize = std::min(fileLength, maxChunkSize); fileLength -= sendSize; // Read file contents into a character buffer diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationRanks.C b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationRanks.C index c500571412a10ba84b406656d3bd67b6cd4fc191..cfedf5313061c62a320b313252227fcdf0799f9b 100644 --- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationRanks.C +++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperationRanks.C @@ -42,7 +42,7 @@ namespace Foam template<class PrimitiveType> static List<PrimitiveType> splitStringToList(const std::string& str) { - const SubStrings<std::string> items = stringOps::splitAny(str, " ,;"); + const auto items = stringOps::splitAny(str, " ,;"); DynamicList<PrimitiveType> values(items.size()); diff --git a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C index 182b5267061a19cc6ed17da1e90dbef2da419714..1d610096901dbc69c6f19935f3a0b4bbe701cf51 100644 --- a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C +++ b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017-2018 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,128 +83,8 @@ namespace fileOperations } -// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // - -namespace Foam -{ - -// Get file contents (compressed or uncompressed) -static DynamicList<char> slurpFile(IFstream& ifs) -{ - DynamicList<char> buffer; - - auto& iss = ifs.stdStream(); - - const auto inputSize = ifs.fileSize(); - - if (IOstreamOption::COMPRESSED == ifs.compression()) - { - // For compressed files, no idea how large the result will be. - // So read chunk-wise. - // Using the compressed size for the chunk size: - // 50% compression = 2 iterations - // 66% compression = 3 iterations - // ... - - const uint64_t chunkSize = - ( - (inputSize <= 1024) - ? uint64_t(4096) - : uint64_t(2*inputSize) - ); - - uint64_t beg = 0; - - for (int iter = 1; iter < 100000; ++iter) - { - // Manual resizing to use incremental vs doubling - buffer.setCapacity(label(iter * chunkSize)); - buffer.resize(buffer.capacity()); - - ifs.readRaw(buffer.data() + beg, chunkSize); - const std::streamsize nread = iss.gcount(); - - if - ( - nread < 0 - || nread == std::numeric_limits<std::streamsize>::max() - ) - { - // Failed, but treat as normal 'done' - buffer.resize(label(beg)); - break; - } - else - { - beg += uint64_t(nread); - if (nread >= 0 && uint64_t(nread) < chunkSize) - { - // normalExit = true; - buffer.resize(label(beg)); - break; - } - } - } - } - else - { - if (inputSize >= 0) - { - buffer.setCapacity(label(inputSize)); - buffer.resize(buffer.capacity()); - - ifs.readRaw(buffer.data(), buffer.size_bytes()); - const std::streamsize nread = iss.gcount(); - - if - ( - nread < 0 - || nread == std::numeric_limits<std::streamsize>::max() - ) - { - // Failed, but treat as normal 'done' - buffer.clear(); - } - else - { - buffer.resize(label(nread)); // Safety - } - } - } - - return buffer; -} - -} // End namespace Foam - - // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::word -Foam::fileOperations::masterUncollatedFileOperation::findInstancePath -( - const instantList& timeDirs, - const instant& t -) -{ - // Note: - // - times will include constant (with value 0) as first element. - // For backwards compatibility make sure to find 0 in preference - // to constant. - // - list is sorted so could use binary search - - forAllReverse(timeDirs, i) - { - if (t.equal(timeDirs[i].value())) - { - return timeDirs[i].name(); - } - } - - return word(); -} - - Foam::fileName Foam::fileOperations::masterUncollatedFileOperation::filePathInfo ( @@ -293,8 +173,10 @@ Foam::fileOperations::masterUncollatedFileOperation::filePathInfo ) { fileName parentPath = - io.rootPath()/io.time().globalCaseName() - /io.instance()/io.db().dbDir()/io.local()/io.name(); + ( + io.rootPath()/io.globalCaseName() + /io.instance()/io.db().dbDir()/io.local()/io.name() + ); if (isFileOrDir(isFile, parentPath)) { @@ -309,11 +191,12 @@ Foam::fileOperations::masterUncollatedFileOperation::filePathInfo if (search && pathFnd.good()) { - newInstancePath = findInstancePath - ( - *pathFnd(), - instant(io.instance()) - ); + newInstancePath = + Time::findInstancePath + ( + *pathFnd(), + instant(io.instance()) + ); if (newInstancePath.size() && newInstancePath != io.instance()) { @@ -451,7 +334,7 @@ Foam::fileOperations::masterUncollatedFileOperation::localObjectPath case fileOperation::PARENTOBJECT: { return - io.rootPath()/io.time().globalCaseName() + io.rootPath()/io.globalCaseName() /io.instance()/io.db().dbDir()/io.local()/io.name(); } break; @@ -535,33 +418,25 @@ void Foam::fileOperations::masterUncollatedFileOperation::readAndSend { FatalIOErrorInFunction(filePath) << "Cannot open file " << filePath - //<< " using communicator " << pBufs.comm() - //<< " ioRanks:" << UPstream::procID(pBufs.comm()) << exit(FatalIOError); } + // Read file contents (compressed or uncompressed) into a character buffer + DynamicList<char> buf(IFstream::readContents(ifs)); + if (debug) { Info<< "masterUncollatedFileOperation::readAndSend :" - << " compressed:" << bool(ifs.compression()) << " " - << filePath << endl; + << filePath + << " (compressed:" << bool(ifs.compression()) + << ") : " << " bytes" << endl; } - // Read file contents (compressed or uncompressed) into a character buffer - DynamicList<char> buf(slurpFile(ifs)); - for (const label proci : recvProcs) { UOPstream os(proci, pBufs); os.write(buf.cdata_bytes(), buf.size_bytes()); } - - if (debug) - { - Info<< "masterUncollatedFileOperation::readStream :" - << " From " << filePath << " sent " << buf.size() - << " bytes" << endl; - } } @@ -577,7 +452,7 @@ Foam::fileOperations::masterUncollatedFileOperation::read { autoPtr<ISstream> isPtr; - PstreamBuffers pBufs(comm, UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm); if (UPstream::master(comm)) { @@ -875,11 +750,11 @@ bool Foam::fileOperations::masterUncollatedFileOperation::mkDir mode_t mode ) const { - return masterOp<mode_t> + return masterOp<bool> ( dir, mkDirOp(mode), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -891,11 +766,11 @@ bool Foam::fileOperations::masterUncollatedFileOperation::chMod mode_t mode ) const { - return masterOp<mode_t> + return masterOp<bool> ( fName, chModOp(mode), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -911,7 +786,7 @@ mode_t Foam::fileOperations::masterUncollatedFileOperation::mode ( fName, modeOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -925,11 +800,11 @@ Foam::fileName::Type Foam::fileOperations::masterUncollatedFileOperation::type { return fileName::Type ( - masterOp<label> + masterOp<int> ( fName, typeOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ) ); @@ -947,7 +822,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::exists ( fName, existsOp(checkGzip, followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -963,7 +838,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::isDir ( fName, isDirOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -980,7 +855,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::isFile ( fName, isFileOp(checkGzip, followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -996,7 +871,7 @@ off_t Foam::fileOperations::masterUncollatedFileOperation::fileSize ( fName, fileSizeOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1012,7 +887,7 @@ time_t Foam::fileOperations::masterUncollatedFileOperation::lastModified ( fName, lastModifiedOp(followLink), - Pstream::msgType(), + UPstream::msgType(), UPstream::worldComm ); } @@ -1028,7 +903,7 @@ double Foam::fileOperations::masterUncollatedFileOperation::highResLastModified ( fName, highResLastModifiedOp(followLink), - Pstream::msgType(), + UPstream::msgType(), UPstream::worldComm ); } @@ -1044,7 +919,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::mvBak ( fName, mvBakOp(ext), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1059,7 +934,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::rm ( fName, rmOp(), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1076,7 +951,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::rmDir ( dir, rmDirOp(silent, emptyOnly), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1094,7 +969,7 @@ Foam::fileNameList Foam::fileOperations::masterUncollatedFileOperation::readDir ( dir, readDirOp(type, filtergz, followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1112,7 +987,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::cp src, dst, cpOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1129,7 +1004,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::ln src, dst, lnOp(), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1147,7 +1022,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::mv src, dst, mvOp(followLink), - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1293,7 +1168,7 @@ Foam::fileName Foam::fileOperations::masterUncollatedFileOperation::filePath ( io.objectPath(), fileOrNullOp(true), // isFile=true - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1451,7 +1326,7 @@ Foam::fileName Foam::fileOperations::masterUncollatedFileOperation::dirPath ( io.objectPath(), fileOrNullOp(false), // isFile=false - Pstream::msgType(), + UPstream::msgType(), comm_ ); } @@ -1524,7 +1399,8 @@ Foam::fileOperations::masterUncollatedFileOperation::findInstance ( const IOobject& startIO, const scalar startValue, - const word& stopInstance + const word& stopInstance, + const bool constant_fallback ) const { if (debug) @@ -1650,6 +1526,7 @@ Foam::fileOperations::masterUncollatedFileOperation::findInstance } else { + // At the stopInstance foundInstance = io.instance(); } break; @@ -1701,10 +1578,14 @@ Foam::fileOperations::masterUncollatedFileOperation::findInstance { failed = failureCodes::FAILED_CONSTINST; } - else + else if (constant_fallback) { foundInstance = time.constant(); } + else + { + foundInstance.clear(); + } } const_cast<masterUncollatedFileOperation&>(*this).nProcs(oldNProcs); @@ -1738,7 +1619,7 @@ Foam::fileOperations::masterUncollatedFileOperation::findInstance { FatalError << stopInstance; } - else + else // FAILED_CONSTINST { FatalError << "constant"; } @@ -1799,8 +1680,7 @@ Foam::fileOperations::masterUncollatedFileOperation::readObjects // Find similar time // Copy of Time::findInstancePath. We want to avoid the - // parallel call to findTimes. Alternative is to have - // version of findInstancePath that takes instantList ... + // parallel call to findTimes. const instantList timeDirs ( fileOperation::findTimes @@ -1810,20 +1690,20 @@ Foam::fileOperations::masterUncollatedFileOperation::readObjects ) ); - const instant t(instance); - forAllReverse(timeDirs, i) + fileName foundInst + ( + Time::findInstancePath(timeDirs, instant(instance)) + ); + + if (!foundInst.empty()) { - if (t.equal(timeDirs[i].value())) - { - objectNames = fileOperation::readObjects - ( - db, - timeDirs[i].name(), // newly found time - local, - newInstance - ); - break; - } + objectNames = fileOperation::readObjects + ( + db, + foundInst, // newly found time + local, + newInstance + ); } } @@ -1954,7 +1834,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::readHeader } // Is a more efficient scatter possible? - PstreamBuffers pBufs(comm_, UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm_); if (Pstream::master(comm_)) { @@ -2270,8 +2150,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::read << endl; } - bool ok = false; - if (Pstream::master(UPstream::worldComm)) + if (UPstream::master(UPstream::worldComm)) { // Do master-only reading always. const bool oldParRun = UPstream::parRun(false); @@ -2287,37 +2166,23 @@ bool Foam::fileOperations::masterUncollatedFileOperation::read UPstream::parRun(oldParRun); // Restore parallel state } - // Broadcast regIOobjects content - if (Pstream::parRun()) + // Broadcast regIOobject content, with writeData/readData handling + if (UPstream::parRun()) { - Pstream::broadcasts - ( - UPstream::worldComm, - ok, - io.headerClassName(), - io.note() - ); - - if (Pstream::master(UPstream::worldComm)) + if (UPstream::master(UPstream::worldComm)) { - OPBstream toAll - ( - UPstream::masterNo(), - UPstream::worldComm, - format - ); - bool okWrite = io.writeData(toAll); + OPBstream os(UPstream::worldComm, format); + + os << io.headerClassName() << io.note(); + bool okWrite = io.writeData(os); ok = ok && okWrite; } else { - IPBstream fromMaster - ( - UPstream::masterNo(), - UPstream::worldComm, - format - ); - ok = io.readData(fromMaster); + IPBstream is(UPstream::worldComm, format); + + is >> io.headerClassName() >> io.note(); + ok = io.readData(is); } } } @@ -2531,7 +2396,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewIFstream filePaths[Pstream::myProcNo(comm_)] = filePath; Pstream::gatherList(filePaths, Pstream::msgType(), comm_); - PstreamBuffers pBufs(comm_, Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs(comm_); if (Pstream::master(comm_)) { @@ -2640,7 +2505,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream comm_, pathName, streamOpt, - IOstreamOption::NON_APPEND, + IOstreamOption::NO_APPEND, writeOnProc ) ); @@ -2664,7 +2529,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream comm_, pathName, streamOpt, - IOstreamOption::NON_APPEND, + IOstreamOption::NO_APPEND, writeOnProc ) ); diff --git a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H index b705312b4f0b01524d1a1c54d1dfa131e8bce15e..e3a8886394ffd6e3bf4f4232daaba2be1499a3d2 100644 --- a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H +++ b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -162,8 +162,8 @@ protected: followLink_(followLink) {} - // Returns label not fileName::Type for reductions - label operator()(const fileName& f) const + // Returns int (for reductions) instead of fileName::Type + int operator()(const fileName& f) const { return Foam::type(f, followLink_); } @@ -390,9 +390,6 @@ protected: // Private Member Functions - template<class Type> - Type scatterList(const UList<Type>&, const int, const label comm) const; - template<class Type, class FileOp> Type masterOp ( @@ -412,13 +409,6 @@ protected: const label comm ) const; - //- Equivalent of Time::findInstance - static word findInstancePath - ( - const instantList& timeDirs, - const instant& t - ); - //- Search (locally!) for object; return info on how it was found. // Does not do any parallel communication. // checkGlobal : also check undecomposed case @@ -757,15 +747,24 @@ public: //- Get sorted list of times virtual instantList findTimes(const fileName&, const word&) const; - //- Find instance where IOobject is. - // FatalError if it cannot be found and readOpt is - // (MUST_READ or MUST_READ_IF_MODIFIED). - // Otherwise it returns the stopInstance. + //- Find time instance where IOobject is located. + //- The name of the IOobject can be empty, in which case only the + //- IOobject::local() is checked. + //- Does not search beyond \c stopInstance (if set) or \c constant. + // If the instance cannot be found: + // - FatalError when readOpt is (MUST_READ or READ_MODIFIED) + // - returns the \c stopInstance (if set and reached) + // - return \c constant if constant_fallback is true. + // - return an empty word if constant_fallback is false. + // . virtual IOobject findInstance ( const IOobject& io, const scalar startValue, - const word& stopInstance + //! The search stop instance + const word& stopInstance, + //! Return \c "constant" instead of \c "" if the search failed + const bool constant_fallback = true ) const; //- Callback for time change diff --git a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperationTemplates.C b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperationTemplates.C index 7ff45acacaa9464b911784d224d2a9c3ed0926c6..949676b0f3930c40916cd5671ffcd694c82aeb15 100644 --- a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperationTemplates.C +++ b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperationTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017-2018 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,41 +31,6 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class Type> -Type Foam::fileOperations::masterUncollatedFileOperation::scatterList -( - const UList<Type>& allValues, - const int tag, - const label comm -) const -{ - // TBD: more efficient scatter - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking, tag, comm); - if (Pstream::master(comm)) - { - for (const int proci : Pstream::subProcs(comm)) - { - UOPstream os(proci, pBufs); - os << allValues[proci]; - } - } - pBufs.finishedScatters(); - - Type value; - - if (Pstream::master(comm)) - { - value = allValues[0]; - } - else - { - UIPstream is(Pstream::masterNo(), pBufs); - is >> value; - } - return value; -} - - template<class Type, class FileOp> Type Foam::fileOperations::masterUncollatedFileOperation::masterOp ( @@ -81,17 +46,24 @@ Type Foam::fileOperations::masterUncollatedFileOperation::masterOp << typeid(FileOp).name() << " on " << fName << endl; } - if (Pstream::parRun()) + + if (UPstream::is_parallel(comm)) { - List<fileName> filePaths(Pstream::nProcs(comm)); - filePaths[Pstream::myProcNo(comm)] = fName; + const label myProci = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); + + List<fileName> filePaths(numProc); + filePaths[myProci] = fName; Pstream::gatherList(filePaths, tag, comm); + // OR filePaths = Pstream::listGatherValues(fName, comm, tag) - List<Type> result(filePaths.size()); - if (Pstream::master(comm)) + List<Type> result; + if (UPstream::master(comm)) { + result.resize(numProc); result = fop(filePaths[0]); - for (label i = 1; i < filePaths.size(); i++) + + for (label i = 1; i < numProc; ++i) { if (filePaths[i] != filePaths[0]) { @@ -100,12 +72,10 @@ Type Foam::fileOperations::masterUncollatedFileOperation::masterOp } } - return scatterList(result, tag, comm); - } - else - { - return fop(fName); + return Pstream::listScatterValues(result, comm, tag); } + + return fop(fName); } @@ -124,35 +94,41 @@ Type Foam::fileOperations::masterUncollatedFileOperation::masterOp Pout<< "masterUncollatedFileOperation : Operation on src:" << src << " dest:" << dest << endl; } - if (Pstream::parRun()) + + if (UPstream::is_parallel(comm)) { - List<fileName> srcs(Pstream::nProcs(comm)); - srcs[Pstream::myProcNo(comm)] = src; - Pstream::gatherList(srcs, tag, comm); + const label myProci = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); - List<fileName> dests(srcs.size()); - dests[Pstream::myProcNo(comm)] = dest; - Pstream::gatherList(dests, tag, comm); + List<Pair<fileName>> filePaths(numProc); + filePaths[myProci].first() = src; + filePaths[myProci].second() = dest; + Pstream::gatherList(filePaths, tag, comm); + // OR + // Pair<fileName> tup(src, dest); + // filePaths = Pstream::listGatherValues(tup, comm, tag) - List<Type> result(Pstream::nProcs(comm)); - if (Pstream::master(comm)) + List<Type> result; + if (UPstream::master(comm)) { - result = fop(srcs[0], dests[0]); - for (label i = 1; i < srcs.size(); i++) + result.resize(numProc); + result = fop(filePaths[0].first(), filePaths[0].second()); + + for (label i = 1; i < numProc; ++i) { - if (srcs[i] != srcs[0]) + // TBD: also check second() ? + if (filePaths[i].first() != filePaths[0].first()) { - result[i] = fop(srcs[i], dests[i]); + result[i] = + fop(filePaths[i].first(), filePaths[i].second()); } } } - return scatterList(result, tag, comm); - } - else - { - return fop(src, dest); + return Pstream::listScatterValues(result, comm, tag); } + + return fop(src, dest); } diff --git a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C index 35fb161016f84414576ca3974718811db7cb36c7..180783d578cae562504578e00b51cae6a7663e82 100644 --- a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C +++ b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -108,13 +108,15 @@ Foam::fileName Foam::fileOperations::uncollatedFileOperation::filePathInfo { // Constant & system can come from global case - fileName parentObjectPath = - io.rootPath()/io.time().globalCaseName() - /io.instance()/io.db().dbDir()/io.local()/io.name(); + fileName parentPath = + ( + io.rootPath()/io.globalCaseName() + /io.instance()/io.db().dbDir()/io.local()/io.name() + ); - if (isFileOrDir(isFile, parentObjectPath)) + if (isFileOrDir(isFile, parentPath)) { - return parentObjectPath; + return parentPath; } } @@ -535,7 +537,8 @@ Foam::fileNameList Foam::fileOperations::uncollatedFileOperation::readObjects if (newInstance.empty()) { // Find similar time - fileName newInst = db.time().findInstancePath(instant(instance)); + word newInst = db.time().findInstancePath(instant(instance)); + if (!newInst.empty() && newInst != instance) { // Try with new time @@ -699,7 +702,7 @@ bool Foam::fileOperations::uncollatedFileOperation::read { bool ok = false; - if (!masterOnly || Pstream::master(UPstream::worldComm)) + if (!masterOnly || UPstream::master(UPstream::worldComm)) { if (debug) { @@ -716,6 +719,14 @@ bool Foam::fileOperations::uncollatedFileOperation::read const bool oldMasterOnly = regIOobject::masterOnlyReading; regIOobject::masterOnlyReading = masterOnly; + const bool oldParRun = UPstream::parRun(); + if (masterOnly) + { + // Reading on master only. + // Avoid side effects from io.readStream below. + UPstream::parRun(false); + } + // Read file ok = io.readData(io.readStream(typeName)); io.close(); @@ -723,6 +734,7 @@ bool Foam::fileOperations::uncollatedFileOperation::read // Restore flags io.globalObject(oldGlobal); regIOobject::masterOnlyReading = oldMasterOnly; + UPstream::parRun(oldParRun); if (debug) { @@ -732,35 +744,23 @@ bool Foam::fileOperations::uncollatedFileOperation::read } } - if (masterOnly && Pstream::parRun()) + if (masterOnly && UPstream::parRun()) { - Pstream::broadcasts - ( - UPstream::worldComm, - io.headerClassName(), - io.note() - ); - + // Broadcast regIOobject content, with writeData/readData handling if (UPstream::master(UPstream::worldComm)) { - OPBstream toAll - ( - UPstream::masterNo(), - UPstream::worldComm, - format - ); - bool okWrite = io.writeData(toAll); + OPBstream os(UPstream::worldComm, format); + + os << io.headerClassName() << io.note(); + bool okWrite = io.writeData(os); ok = ok && okWrite; } else { - IPBstream fromMaster - ( - UPstream::masterNo(), - UPstream::worldComm, - format - ); - ok = io.readData(fromMaster); + IPBstream is(UPstream::worldComm, format); + + is >> io.headerClassName() >> io.note(); + ok = io.readData(is); } } diff --git a/src/OpenFOAM/global/profiling/profilingPstream.H b/src/OpenFOAM/global/profiling/profilingPstream.H index 8256fb1418cdcac89e0fae62f6075b27d908f917..37284223afe5e4f05ef7515fd82ffb4b9134ae1b 100644 --- a/src/OpenFOAM/global/profiling/profilingPstream.H +++ b/src/OpenFOAM/global/profiling/profilingPstream.H @@ -158,7 +158,7 @@ public: { if (!suspend_ && timer_) { - (void) timer_->cpuTimeIncrement(); + timer_->resetCpuTimeIncrement(); } } diff --git a/src/OpenFOAM/global/profiling/profilingTrigger.C b/src/OpenFOAM/global/profiling/profilingTrigger.C index 95d6fadc63f033777b4f8fee878cf757dcc41a43..aa4a545d5d55428680e881cf4e33a831b62e06ce 100644 --- a/src/OpenFOAM/global/profiling/profilingTrigger.C +++ b/src/OpenFOAM/global/profiling/profilingTrigger.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2009-2016 Bernhard Gschaider - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. Copyright (C) 2023 Josep Pocurull Serra, Barcelona Supercomputing Center ------------------------------------------------------------------------------- License @@ -140,26 +140,33 @@ static void close_extrae_region() #endif /* HAVE_EXTRAE */ -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::profilingTrigger::profilingTrigger() noexcept -: - ptr_(nullptr) -{} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // +bool Foam::profilingTrigger::possible() noexcept +{ + return + ( + profiling::active() + #ifdef HAVE_EXTRAE + || bool(Extrae_event) + #endif + ); +} -Foam::profilingTrigger::profilingTrigger(const char* name) -: - profilingTrigger(std::string(name)) -{} +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::profilingTrigger::profilingTrigger(const std::string& name) -: - ptr_(profiling::New(name)) +void Foam::profilingTrigger::enter(const std::string& name) { + // debug: std::cerr<< "enter profiling: " << name << '\n'; + + ptr_ = profiling::New(name); + #ifdef HAVE_EXTRAE - if (Extrae_event) open_extrae_region(std::string(name)); + if (Extrae_event) + { + open_extrae_region(name); + } #endif } @@ -183,7 +190,10 @@ bool Foam::profilingTrigger::running() const noexcept void Foam::profilingTrigger::stop() { #ifdef HAVE_EXTRAE - if (Extrae_event) close_extrae_region(); + if (Extrae_event) + { + close_extrae_region(); + } #endif if (ptr_) diff --git a/src/OpenFOAM/global/profiling/profilingTrigger.H b/src/OpenFOAM/global/profiling/profilingTrigger.H index e1242a06cb6eb342f657e9b56801e62f45501b0f..2a29438632eb36f270b3877a52dbea60dae9c8ee 100644 --- a/src/OpenFOAM/global/profiling/profilingTrigger.H +++ b/src/OpenFOAM/global/profiling/profilingTrigger.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2009-2016 Bernhard Gschaider - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +38,7 @@ SourceFiles #ifndef Foam_profilingTrigger_H #define Foam_profilingTrigger_H -#include "word.H" +#include <string> // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -57,7 +57,42 @@ class profilingTrigger // Private Data Members //- The profiling information - profilingInformation *ptr_; + profilingInformation* ptr_; + + + // Private Member Functions + + //- True if any profiling hooks are possible + static bool possible() noexcept; + + //- Helper: string concatenation (no-op) + static inline void string_concat(std::string& output) {} + + //- Helper: string concatenation (loop) + template<class StringType, class... StringArgs> + static inline void string_concat + ( + std::string& output, + const StringType& str, + StringArgs&&... args + ) + { + output += str; + string_concat(output, std::forward<StringArgs>(args)...); + } + + //- Enter profiling section + void enter(const std::string& name); + + //- Trigger entering of profiling section + template<class... StringArgs> + void trigger(std::string name, StringArgs&&... args) + { + string_concat(name, std::forward<StringArgs>(args)...); + // No checking for empty name (should not occur) + enter(name); + } + public: @@ -73,29 +108,37 @@ public: // Constructors //- Default construct, no profiling trigger - profilingTrigger() noexcept; - - //- Construct profiling with given description. - // Descriptions beginning with 'application::' are reserved for - // internal use. - explicit profilingTrigger(const char* name); + constexpr profilingTrigger() noexcept : ptr_(nullptr) {} - //- Construct profiling with given description. + //- Start profiling section (if profiling is active) + //- with given description. + // The description is generated by string concatenation of the + // parameters. // Descriptions beginning with 'application::' are reserved for // internal use. - explicit profilingTrigger(const std::string& name); - - - //- Destructor + template<class... StringArgs> + explicit profilingTrigger(StringArgs&&... description) + : + ptr_(nullptr) + { + if (possible()) + { + // Delay string concatenation until actually needed + trigger(std::forward<StringArgs>(description)...); + } + } + + + //- Destructor, calls stop() ~profilingTrigger(); // Member Functions - //- True if the triggered profiling is active + //- True if the triggered profiling section is active bool running() const noexcept; - //- Stop triggered profiling + //- Stop triggered profiling section void stop(); }; @@ -108,10 +151,11 @@ public: // Macros -//- Define profiling trigger with specified name and description string +//- Define profiling trigger with specified name and description string. +//- The description is generated by string concatenation. // \sa endProfiling -#define addProfiling(Name,Descr) \ - ::Foam::profilingTrigger profilingTriggerFor##Name(Descr) +#define addProfiling(Name, ...) \ + ::Foam::profilingTrigger profilingTriggerFor##Name(__VA_ARGS__) //- Remove profiling with specified name // \sa addProfiling @@ -121,9 +165,11 @@ public: //- corresponding to the compiler-defined function name string // \sa addProfiling #ifdef __GNUC__ -#define addProfilingInFunction(Name) addProfiling(Name, __PRETTY_FUNCTION__) +#define addProfilingInFunction(Name) \ + ::Foam::profilingTrigger profilingTriggerFor##Name(__PRETTY_FUNCTION__) #else -#define addProfilingInFunction(Name) addProfiling(Name, __func__) +#define addProfilingInFunction(Name) \ + ::Foam::profilingTrigger profilingTriggerFor##Name(__func__) #endif diff --git a/src/OpenFOAM/include/addTimeOptions.H b/src/OpenFOAM/include/addTimeOptions.H index ca1694e47cfe60d54659a3fa5fb4d984755fb713..baabd7f4b8bae3a4b510e116edf9012e24917268 100644 --- a/src/OpenFOAM/include/addTimeOptions.H +++ b/src/OpenFOAM/include/addTimeOptions.H @@ -22,26 +22,27 @@ Required Classes Foam::argList::addBoolOption ( "constant", - "include the 'constant/' dir in the times list" + "Include 'constant/' dir in the times" ); Foam::argList::addBoolOption ( "latestTime", - "select the latest time" + "Select the latest time" ); Foam::argList::addBoolOption ( "noZero", - "exclude the '0/' dir from the times list" + "Exclude '0/' dir from the times" ); Foam::argList::addOption ( "time", - "time", - "specify a single time value to select" + "value", + "Select the nearest time to the specified value" ); + // ************************************************************************* // diff --git a/src/OpenFOAM/include/checkConstantOption.H b/src/OpenFOAM/include/checkConstantOption.H index a9d5006eb5f1f3b923d8649c92b6122468295c55..a65ce5facf602f6af1cf448d95ae0f5760ca84b4 100644 --- a/src/OpenFOAM/include/checkConstantOption.H +++ b/src/OpenFOAM/include/checkConstantOption.H @@ -1,3 +1,6 @@ +// Deprecated include (2024-05) - prefer timeSelector +// ---------------------------------------------------------------------------- + // Unless -constant is present, skip startTime if it is "constant" if @@ -9,3 +12,5 @@ if { ++startTime; } + +// ************************************************************************* // diff --git a/src/OpenFOAM/include/checkTimeOption.H b/src/OpenFOAM/include/checkTimeOption.H index 244eccb979746786a39e43427e7a7925da481b87..00489c01fa8e3f96afb1f101c727b3c71171a2a1 100644 --- a/src/OpenFOAM/include/checkTimeOption.H +++ b/src/OpenFOAM/include/checkTimeOption.H @@ -1,13 +1,17 @@ -// Check -time and -latestTime options +// Deprecated include (2024-05) - prefer timeSelector +// ---------------------------------------------------------------------------- -if (args.found("time")) +// Check -time and -latestTime options +if (args.found("latestTime")) +{ + startTime = Times.size() - 1; +} +else if (args.found("time")) { - Foam::scalar timeValue = args.get<scalar>("time"); + Foam::scalar timeValue = args.get<Foam::scalar>("time"); startTime = Foam::Time::findClosestTimeIndex(Times, timeValue); } -if (args.found("latestTime")) -{ - startTime = Times.size() - 1; -} + +// ************************************************************************* // diff --git a/src/OpenFOAM/include/checkTimeOptions.H b/src/OpenFOAM/include/checkTimeOptions.H index 789135603533d2b00725e98531174f8439985e1c..4c270c3d5d3b7fa84ee3a22f578959cf5881b124 100644 --- a/src/OpenFOAM/include/checkTimeOptions.H +++ b/src/OpenFOAM/include/checkTimeOptions.H @@ -1,3 +1,6 @@ +// Deprecated include (2024-05) - prefer timeSelector +// ---------------------------------------------------------------------------- + Foam::label startTime = 0; // Unless -constant is present, skip startTime if it is "constant" @@ -5,3 +8,5 @@ Foam::label startTime = 0; // Check -time and -latestTime options #include "checkTimeOption.H" + +// ************************************************************************* // diff --git a/src/OpenFOAM/include/checkTimeOptionsNoConstant.H b/src/OpenFOAM/include/checkTimeOptionsNoConstant.H index 02312375df2e46b5acc3a0bd674d3eb95f3a0cbe..916ceca302da36394a977d81f8d47272740cb41c 100644 --- a/src/OpenFOAM/include/checkTimeOptionsNoConstant.H +++ b/src/OpenFOAM/include/checkTimeOptionsNoConstant.H @@ -1,4 +1,9 @@ +// Deprecated include (2024-05) - prefer timeSelector +// ---------------------------------------------------------------------------- + Foam::label startTime = 0; // Check -time and -latestTime options #include "checkTimeOption.H" + +// ************************************************************************* // diff --git a/src/OpenFOAM/include/openfoam_mpi.H b/src/OpenFOAM/include/openfoam_mpi.H new file mode 100644 index 0000000000000000000000000000000000000000..7359bd8a925229b4784aa18b4b05ad91904cc351 --- /dev/null +++ b/src/OpenFOAM/include/openfoam_mpi.H @@ -0,0 +1,99 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2022-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Description + Header for low-level interfaces between MPI and OpenFOAM. + The detail interfaces are subject to change. + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_UPstreamMPI_H +#define Foam_UPstreamMPI_H + +#include "UPstream.H" + +// Include MPI without any C++ bindings +#ifndef MPICH_SKIP_MPICXX +#define MPICH_SKIP_MPICXX +#endif +#ifndef OMPI_SKIP_MPICXX +#define OMPI_SKIP_MPICXX +#endif +#include <mpi.h> + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace PstreamUtils +{ + +// Casting helpers +struct Cast +{ + // Cast UPstream::Communicator to MPI_Comm (pointer) + template<typename Type = MPI_Comm> + static typename std::enable_if<std::is_pointer<Type>::value, Type>::type + to_mpi(const UPstream::Communicator& arg) noexcept + { + return reinterpret_cast<Type>(arg.value()); + } + + // Cast UPstream::Communicator to MPI_Comm (integer) + template<typename Type = MPI_Comm> + static typename std::enable_if<std::is_integral<Type>::value, Type>::type + to_mpi(const UPstream::Communicator& arg) noexcept + { + return static_cast<Type>(arg.value()); + } + + // Cast UPstream::Request to MPI_Request (pointer) + template<typename Type = MPI_Request> + static typename std::enable_if<std::is_pointer<Type>::value, Type>::type + to_mpi(const UPstream::Request& arg) noexcept + { + return reinterpret_cast<Type>(arg.value()); + } + + // Cast UPstream::Request to MPI_Request (integer) + template<typename Type = MPI_Request> + static typename std::enable_if<std::is_integral<Type>::value, Type>::type + to_mpi(const UPstream::Request& arg) noexcept + { + return static_cast<Type>(arg.value()); + } +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace PstreamUtils +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/OpenFOAM/interpolations/interpolationTable/tableReaders/openFoam/openFoamTableReader.C b/src/OpenFOAM/interpolations/interpolationTable/tableReaders/openFoam/openFoamTableReader.C index dd2bb8cbe76efdf7fcf39a52ba75db4475fb8d73..3b41b56a04c51ba0a0594831069014cece0ee868 100644 --- a/src/OpenFOAM/interpolations/interpolationTable/tableReaders/openFoam/openFoamTableReader.C +++ b/src/OpenFOAM/interpolations/interpolationTable/tableReaders/openFoam/openFoamTableReader.C @@ -47,7 +47,10 @@ void Foam::openFoamTableReader<Type>::operator() ) { // Read data from file - fileHandler().NewIFstream(fName)()() >> data; + autoPtr<ISstream> isPtr(fileHandler().NewIFstream(fName)); + ISstream& is = isPtr(); + + is >> data; } @@ -59,7 +62,10 @@ void Foam::openFoamTableReader<Type>::operator() ) { // Read data from file - fileHandler().NewIFstream(fName)()() >> data; + autoPtr<ISstream> isPtr(fileHandler().NewIFstream(fName)); + ISstream& is = isPtr(); + + is >> data; } diff --git a/src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H b/src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H index 857daea5d87e8bf590062855f39cc91e3af279d1..ea9adb37a06e72698779f166792aaea6677330f2 100644 --- a/src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H +++ b/src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H @@ -39,8 +39,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef DiagonalMatrix_H -#define DiagonalMatrix_H +#ifndef Foam_DiagonalMatrix_H +#define Foam_DiagonalMatrix_H #include "List.H" #include <numeric> @@ -78,18 +78,18 @@ public: // Constructors - //- Construct empty from size - explicit DiagonalMatrix<Type>(const label n); + //- Construct from size, uninitialised content + explicit DiagonalMatrix(const label n); //- Construct from size and initialise all elems to zero - DiagonalMatrix<Type>(const label n, const Foam::zero); + DiagonalMatrix(const label n, const Foam::zero); //- Construct from size and initialise all elems to value - DiagonalMatrix<Type>(const label n, const Type& val); + DiagonalMatrix(const label n, const Type& val); //- Construct from the diagonal of a Matrix template<class Form> - DiagonalMatrix<Type>(const Matrix<Form, Type>& mat); + DiagonalMatrix(const Matrix<Form, Type>& mat); // Member Functions diff --git a/src/OpenFOAM/matrices/EigenMatrix/EigenMatrix.H b/src/OpenFOAM/matrices/EigenMatrix/EigenMatrix.H index aa4a02562fc065b2ccf7ea108e00b6daed49e01b..66cfa4a87d5b502da766d3a6fbf878d7813ecb64 100644 --- a/src/OpenFOAM/matrices/EigenMatrix/EigenMatrix.H +++ b/src/OpenFOAM/matrices/EigenMatrix/EigenMatrix.H @@ -225,30 +225,30 @@ public: // Access //- Return real eigenvalues or real part of complex eigenvalues - const DiagonalMatrix<cmptType>& EValsRe() const + const DiagonalMatrix<cmptType>& EValsRe() const noexcept { return EValsRe_; } //- Return zero-matrix for real eigenvalues //- or imaginary part of complex eigenvalues - const DiagonalMatrix<cmptType>& EValsIm() const + const DiagonalMatrix<cmptType>& EValsIm() const noexcept { return EValsIm_; } //- Return right eigenvectors matrix where each column is //- a right eigenvector that corresponds to an eigenvalue - const SquareMatrix<cmptType>& EVecs() const + const SquareMatrix<cmptType>& EVecs() const noexcept { return EVecs_; } //- Return right eigenvectors in unpacked form const SquareMatrix<complex> complexEVecs() const; - }; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.C b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.C index 2d03159abe84e52446523856553a3511829a29c6..1c401c232b7aa646b212c272dbd3bf54e49f9e66 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.C +++ b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,17 +42,16 @@ namespace Foam // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::LUscalarMatrix::LUscalarMatrix() +Foam::LUscalarMatrix::LUscalarMatrix() noexcept : comm_(UPstream::worldComm) {} -Foam::LUscalarMatrix::LUscalarMatrix(const scalarSquareMatrix& matrix) +Foam::LUscalarMatrix::LUscalarMatrix(const scalarSquareMatrix& mat) : - scalarSquareMatrix(matrix), - comm_(UPstream::worldComm), - pivotIndices_(m()) + scalarSquareMatrix(mat), + comm_(UPstream::worldComm) { LUDecompose(*this, pivotIndices_); } @@ -69,13 +68,14 @@ Foam::LUscalarMatrix::LUscalarMatrix { if (UPstream::parRun()) { - PtrList<procLduMatrix> lduMatrices(UPstream::nProcs(comm_)); - - label lduMatrixi = 0; + PtrList<procLduMatrix> lduMatrices + ( + UPstream::master(comm_) ? UPstream::nProcs(comm_) : 1 + ); lduMatrices.set ( - lduMatrixi++, + 0, // rank-local matrix (and/or master) new procLduMatrix ( ldum, @@ -88,101 +88,66 @@ Foam::LUscalarMatrix::LUscalarMatrix { for (const int proci : UPstream::subProcs(comm_)) { - lduMatrices.set - ( - lduMatrixi++, - new procLduMatrix - ( - IPstream - ( - UPstream::commsTypes::scheduled, - proci, - 0, // bufSize - UPstream::msgType(), - comm_ - )() - ) - ); + auto& mat = lduMatrices.emplace_set(proci); + + IPstream::recv(mat, proci, UPstream::msgType(), comm_); } + + convert(lduMatrices); } else { - OPstream toMaster + OPstream::send ( - UPstream::commsTypes::scheduled, + lduMatrices[0], // rank-local matrix UPstream::masterNo(), - 0, // bufSize UPstream::msgType(), comm_ ); - procLduMatrix cldum - ( - ldum, - interfaceCoeffs, - interfaces - ); - toMaster<< cldum; - - } - - if (UPstream::master(comm_)) - { - label nCells = 0; - forAll(lduMatrices, i) - { - nCells += lduMatrices[i].size(); - } - - scalarSquareMatrix m(nCells, 0.0); - transfer(m); - convert(lduMatrices); } } else { - label nCells = ldum.lduAddr().size(); - scalarSquareMatrix m(nCells, Zero); - transfer(m); convert(ldum, interfaceCoeffs, interfaces); } - if (UPstream::master(comm_)) + + if (debug && UPstream::master(comm_)) { - if (debug) - { - const label numRows = m(); - const label numCols = n(); + const label numRows = nRows(); + const label numCols = nCols(); - Pout<< "LUscalarMatrix : size:" << numRows << endl; - for (label rowi = 0; rowi < numRows; ++rowi) - { - const scalar* row = operator[](rowi); + Pout<< "LUscalarMatrix : size:" << numRows << endl; + for (label rowi = 0; rowi < numRows; ++rowi) + { + const scalar* row = operator[](rowi); - Pout<< "cell:" << rowi << " diagCoeff:" << row[rowi] << endl; + Pout<< "cell:" << rowi << " diagCoeff:" << row[rowi] << nl; - Pout<< " connects to upper cells :"; - for (label coli = rowi+1; coli < numCols; ++coli) + Pout<< " connects to upper cells :"; + for (label coli = rowi+1; coli < numCols; ++coli) + { + if (mag(row[coli]) > SMALL) { - if (mag(row[coli]) > SMALL) - { - Pout<< ' ' << coli << " (coeff:" << row[coli] << ')'; - } + Pout<< ' ' << coli << " (coeff:" << row[coli] << ')'; } - Pout<< endl; - Pout<< " connects to lower cells :"; - for (label coli = 0; coli < rowi; ++coli) + } + Pout<< nl; + Pout<< " connects to lower cells :"; + for (label coli = 0; coli < rowi; ++coli) + { + if (mag(row[coli]) > SMALL) { - if (mag(row[coli]) > SMALL) - { - Pout<< ' ' << coli << " (coeff:" << row[coli] << ')'; - } + Pout<< ' ' << coli << " (coeff:" << row[coli] << ')'; } - Pout<< nl; } Pout<< nl; } + Pout<< endl; + } - pivotIndices_.setSize(m()); + if (UPstream::master(comm_)) + { LUDecompose(*this, pivotIndices_); } } @@ -197,6 +162,10 @@ void Foam::LUscalarMatrix::convert const lduInterfaceFieldPtrsList& interfaces ) { + // Resize and fill with zero + scalarSquareMatrix::resize_nocopy(ldum.lduAddr().size()); + scalarSquareMatrix::operator=(Foam::zero{}); + const label* __restrict__ uPtr = ldum.lduAddr().upperAddr().begin(); const label* __restrict__ lPtr = ldum.lduAddr().lowerAddr().begin(); @@ -259,14 +228,26 @@ void Foam::LUscalarMatrix::convert const PtrList<procLduMatrix>& lduMatrices ) { - procOffsets_.setSize(lduMatrices.size() + 1); - procOffsets_[0] = 0; + procOffsets_.resize_nocopy(lduMatrices.size() + 1); - forAll(lduMatrices, ldumi) { - procOffsets_[ldumi+1] = procOffsets_[ldumi] + lduMatrices[ldumi].size(); + auto iter = procOffsets_.begin(); + + label nCellsTotal = 0; + *iter++ = nCellsTotal; + + for (const auto& mat : lduMatrices) + { + nCellsTotal += mat.size(); + *iter++ = nCellsTotal; + } + + // Resize and fill with zero + scalarSquareMatrix::resize_nocopy(nCellsTotal); + scalarSquareMatrix::operator=(Foam::zero{}); } + forAll(lduMatrices, ldumi) { const procLduMatrix& lduMatrixi = lduMatrices[ldumi]; @@ -400,10 +381,9 @@ void Foam::LUscalarMatrix::printDiagonalDominance() const } -void Foam::LUscalarMatrix::decompose(const scalarSquareMatrix& M) +void Foam::LUscalarMatrix::decompose(const scalarSquareMatrix& mat) { - scalarSquareMatrix::operator=(M); - pivotIndices_.setSize(m()); + scalarSquareMatrix::operator=(mat); LUDecompose(*this, pivotIndices_); } diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H index ada33620bee9e3da7fc7bf0c9308dec474e25c2f..682ec7e6cdfe4869867bd373264f236144c28f8a 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H +++ b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H @@ -34,8 +34,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef LUscalarMatrix_H -#define LUscalarMatrix_H +#ifndef Foam_LUscalarMatrix_H +#define Foam_LUscalarMatrix_H #include "scalarMatrices.H" #include "labelList.H" @@ -47,6 +47,7 @@ SourceFiles namespace Foam { +// Forward Declarations class lduMatrix; class procLduMatrix; @@ -58,7 +59,7 @@ class LUscalarMatrix : public scalarSquareMatrix { - // Private data + // Private Data //- Communicator to use const label comm_; @@ -70,7 +71,7 @@ class LUscalarMatrix labelList pivotIndices_; - // Private member functions + // Private Member Functions //- Convert the given lduMatrix into this LUscalarMatrix void convert @@ -81,12 +82,12 @@ class LUscalarMatrix ); //- Convert the given list of procLduMatrix into this LUscalarMatrix - // on the master processor + //- on the master processor void convert(const PtrList<procLduMatrix>& lduMatrices); //- Print the ratio of the mag-sum of the off-diagonal coefficients - // to the mag-diagonal + //- to the mag-diagonal void printDiagonalDominance() const; @@ -98,13 +99,14 @@ public: // Constructors - //- Construct null - LUscalarMatrix(); + //- Default construct + LUscalarMatrix() noexcept; - //- Construct from and perform LU decomposition of the matrix M - LUscalarMatrix(const scalarSquareMatrix& M); + //- Construct from and perform LU decomposition of the given matrix + explicit LUscalarMatrix(const scalarSquareMatrix& mat); - //- Construct from lduMatrix and perform LU decomposition + //- Construct from lduMatrix and perform LU decomposition. + //- In parallel it assembles the matrix on the master. LUscalarMatrix ( const lduMatrix& ldum, @@ -115,8 +117,8 @@ public: // Member Functions - //- Perform the LU decomposition of the matrix M - void decompose(const scalarSquareMatrix& M); + //- Perform the LU decomposition of the matrix + void decompose(const scalarSquareMatrix& mat); //- Solve the linear system with the given source // and returning the solution in the Field argument x. diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C index 568275e54c8ae398a3ef56dddff9ed1a336fbb75..9113a8a1243255d3822b52c091c8f71f0ea70b8c 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C +++ b/src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,79 +44,141 @@ void Foam::LUscalarMatrix::solve x = source; } - if (Pstream::parRun()) + const auto tag = UPstream::msgType(); + + if (UPstream::parRun()) { - List<Type> X; // scratch space (on master) + List<Type> allx; // scratch space (on master) + + const label startOfRequests = UPstream::nRequests(); - if (Pstream::master(comm_)) + // Like globalIndex::gather() + if (UPstream::master(comm_)) { - X.resize(m()); + allx.resize(m()); - SubList<Type>(X, x.size()) = x; + SubList<Type>(allx, x.size()) = x; - for (const int proci : Pstream::subProcs(comm_)) + for (const int proci : UPstream::subProcs(comm_)) { - UIPstream::read + SubList<Type> procSlot ( - Pstream::commsTypes::scheduled, - proci, - reinterpret_cast<char*> - ( - &(X[procOffsets_[proci]]) - ), - (procOffsets_[proci+1]-procOffsets_[proci])*sizeof(Type), - Pstream::msgType(), - comm_ + allx, + procOffsets_[proci+1]-procOffsets_[proci], + procOffsets_[proci] ); + + if (procSlot.empty()) + { + // Nothing to do + } + else if (is_contiguous<Type>::value) + { + UIPstream::read + ( + UPstream::commsTypes::nonBlocking, + proci, + procSlot.data_bytes(), + procSlot.size_bytes(), + tag, + comm_ + ); + } + else + { + IPstream::recv(procSlot, proci, tag, comm_); + } } } else { - UOPstream::write - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo(), - x.cdata_bytes(), - x.byteSize(), - Pstream::msgType(), - comm_ - ); + if (x.empty()) + { + // Nothing to do + } + else if (is_contiguous<Type>::value) + { + UOPstream::write + ( + UPstream::commsTypes::nonBlocking, + UPstream::masterNo(), + x.cdata_bytes(), + x.size_bytes(), + tag, + comm_ + ); + } + else + { + OPstream::send(x, UPstream::masterNo(), tag, comm_); + } } - if (Pstream::master(comm_)) + UPstream::waitRequests(startOfRequests); + + // LUBacksubstitute and then like globalIndex::scatter() + if (UPstream::master(comm_)) { - LUBacksubstitute(*this, pivotIndices_, X); + LUBacksubstitute(*this, pivotIndices_, allx); - x = SubList<Type>(X, x.size()); + x = SubList<Type>(allx, x.size()); - for (const int proci : Pstream::subProcs(comm_)) + for (const int proci : UPstream::subProcs(comm_)) { - UOPstream::write + SubList<Type> procSlot ( - Pstream::commsTypes::scheduled, - proci, - reinterpret_cast<const char*> - ( - &(X[procOffsets_[proci]]) - ), - (procOffsets_[proci+1]-procOffsets_[proci])*sizeof(Type), - Pstream::msgType(), - comm_ + allx, + procOffsets_[proci+1]-procOffsets_[proci], + procOffsets_[proci] ); + + if (procSlot.empty()) + { + // Nothing to do + } + else if (is_contiguous<Type>::value) + { + UOPstream::write + ( + UPstream::commsTypes::nonBlocking, + proci, + procSlot.cdata_bytes(), + procSlot.size_bytes(), + tag, + comm_ + ); + } + else + { + OPstream::send(procSlot, proci, tag, comm_); + } } } else { - UIPstream::read - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo(), - x.data_bytes(), - x.byteSize(), - Pstream::msgType(), - comm_ - ); + if (x.empty()) + { + // Nothing to do + } + else if (is_contiguous<Type>::value) + { + UIPstream::read + ( + UPstream::commsTypes::nonBlocking, + UPstream::masterNo(), + x.data_bytes(), + x.size_bytes(), + tag, + comm_ + ); + } + else + { + IPstream::recv(x, UPstream::masterNo(), tag, comm_); + } } + + UPstream::waitRequests(startOfRequests); } else { @@ -131,7 +193,7 @@ Foam::tmp<Foam::Field<Type>> Foam::LUscalarMatrix::solve const UList<Type>& source ) const { - auto tx(tmp<Field<Type>>::New(m())); + auto tx = tmp<Field<Type>>::New(m()); solve(tx.ref(), source); diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.C b/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.C index 02309fbab5851ba5091b9c1d7a8d0ed7ca2f5532..6680dca7f1d0a54cc200b6a2b3cd77e2fc5dd3b3 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.C +++ b/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -69,27 +70,47 @@ Foam::procLduInterface::procLduInterface Foam::procLduInterface::procLduInterface(Istream& is) -: - faceCells_(is), - coeffs_(is), - myProcNo_(readLabel(is)), - neighbProcNo_(readLabel(is)), - tag_(readLabel(is)), - comm_(readLabel(is)) -{} +{ + read(is); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::procLduInterface::read(Istream& is) +{ + is >> faceCells_ + >> coeffs_ + >> myProcNo_ + >> neighbProcNo_ + >> tag_ + >> comm_; +} + + +void Foam::procLduInterface::write(Ostream& os) const +{ + os << faceCells_ + << coeffs_ + << myProcNo_ + << neighbProcNo_ + << tag_ + << comm_; +} // * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // -Foam::Ostream& Foam::operator<<(Ostream& os, const procLduInterface& cldui) +Foam::Istream& Foam::operator>>(Istream& is, procLduInterface& intf) { - os << cldui.faceCells_ - << cldui.coeffs_ - << cldui.myProcNo_ - << cldui.neighbProcNo_ - << cldui.tag_ - << cldui.comm_; + intf.read(is); + return is; +} + +Foam::Ostream& Foam::operator<<(Ostream& os, const procLduInterface& intf) +{ + intf.write(os); return os; } diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.H b/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.H index c0e74aeb978aea8361822a01ccaba75b77ab9203..22f1582bc21e9e09ca128ea5c8ab7072ae1b5547 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.H +++ b/src/OpenFOAM/matrices/LUscalarMatrix/procLduInterface.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,10 +50,11 @@ namespace Foam class lduInterfaceField; class procLduInterface; +Istream& operator>>(Istream&, procLduInterface&); Ostream& operator<<(Ostream&, const procLduInterface&); /*---------------------------------------------------------------------------*\ - Class procLduInterface Declaration + Class procLduInterface Declaration \*---------------------------------------------------------------------------*/ class procLduInterface @@ -68,6 +70,7 @@ class procLduInterface public: + //- Friendship friend class LUscalarMatrix; @@ -85,7 +88,8 @@ public: const scalarField& coeffs ); - procLduInterface(Istream& is); + //- Read construct from Istream + explicit procLduInterface(Istream& is); autoPtr<procLduInterface> clone() { @@ -99,8 +103,12 @@ public: } - // Ostream Operator + // IO Operations + void read(Istream& is); + void write(Ostream& os) const; + + friend Istream& operator>>(Istream&, procLduInterface&); friend Ostream& operator<<(Ostream&, const procLduInterface&); }; diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.C b/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.C index 267a5c54c68828f208a3af516b17ea7b298d84f5..ff2e032d97dec24bc9d7854756646e3c9b7e5075 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.C +++ b/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,25 +43,14 @@ Foam::procLduMatrix::procLduMatrix lowerAddr_(ldum.lduAddr().lowerAddr()), diag_(ldum.diag()), upper_(ldum.upper()), - lower_(ldum.lower()) + lower_(ldum.lower()), + interfaces_(interfaces.count_nonnull()) { label nInterfaces = 0; forAll(interfaces, i) { - if (interfaces.set(i)) - { - nInterfaces++; - } - } - - interfaces_.setSize(nInterfaces); - - nInterfaces = 0; - - forAll(interfaces, i) - { - if (interfaces.set(i)) + if (interfaces.test(i)) { interfaces_.set ( @@ -73,32 +63,52 @@ Foam::procLduMatrix::procLduMatrix ); } } - } Foam::procLduMatrix::procLduMatrix(Istream& is) -: - upperAddr_(is), - lowerAddr_(is), - diag_(is), - upper_(is), - lower_(is), - interfaces_(is) -{} +{ + read(is); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +// void Foam::procLduMatrix::clear() +// { +// upperAddr_.clear(); +// lowerAddr_.clear(); +// diag_.clear(); +// upper_.clear(); +// lower_.clear(); +// interfaces_.clear(); +// } + + +void Foam::procLduMatrix::read(Istream& is) +{ + is >> upperAddr_ >> lowerAddr_ >> diag_ >> upper_ >> lower_ >> interfaces_; +} + + +void Foam::procLduMatrix::write(Ostream& os) const +{ + os << upperAddr_ << lowerAddr_ << diag_ << upper_ << lower_ << interfaces_; +} // * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // -Foam::Ostream& Foam::operator<<(Ostream& os, const procLduMatrix& cldum) +Foam::Istream& Foam::operator>>(Istream& is, procLduMatrix& mat) { - os << cldum.upperAddr_ - << cldum.lowerAddr_ - << cldum.diag_ - << cldum.upper_ - << cldum.lower_ - << cldum.interfaces_; + mat.read(is); + return is; +} + +Foam::Ostream& Foam::operator<<(Ostream& os, const procLduMatrix& mat) +{ + mat.write(os); return os; } diff --git a/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.H b/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.H index 179b6a88602e60b443fc600ec7b48dd2ee1a0831..71c63e4ef97df153b3e991f4157401dcc128a771 100644 --- a/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.H +++ b/src/OpenFOAM/matrices/LUscalarMatrix/procLduMatrix.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef procLduMatrix_H -#define procLduMatrix_H +#ifndef Foam_procLduMatrix_H +#define Foam_procLduMatrix_H #include "labelList.H" #include "scalarField.H" @@ -47,23 +48,21 @@ SourceFiles namespace Foam { +// Forward Declarations +class procLduMatrix; class procLduInterface; class lduMatrix; -// Forward declaration of friend functions and operators - -class procLduMatrix; - +Istream& operator>>(Istream&, procLduMatrix&); Ostream& operator<<(Ostream&, const procLduMatrix&); - /*---------------------------------------------------------------------------*\ - Class procLduMatrix Declaration + Class procLduMatrix Declaration \*---------------------------------------------------------------------------*/ class procLduMatrix { - // Private data + // Private Data labelList upperAddr_; labelList lowerAddr_; @@ -72,20 +71,24 @@ class procLduMatrix scalarField lower_; PtrList<procLduInterface> interfaces_; +public: - // Private Member Functions + //- Friendship + friend class LUscalarMatrix; - //- No copy construct - procLduMatrix(const procLduMatrix&) = delete; + // Generated Methods -public: + //- Default construct + procLduMatrix() = default; - friend class LUscalarMatrix; + //- No copy construct + procLduMatrix(const procLduMatrix&) = delete; // Constructors + //- Construct from components. Extracts active interfaces procLduMatrix ( const lduMatrix& ldum, @@ -93,19 +96,26 @@ public: const lduInterfaceFieldPtrsList& interfaces ); - procLduMatrix(Istream& is); + //- Read construct from Istream + explicit procLduMatrix(Istream& is); - // Member functions + // Member Functions - label size() const + label size() const noexcept { return diag_.size(); } + // void clear(); + + + // IO Operations - // Ostream operator + void read(Istream& is); + void write(Ostream& os) const; + friend Istream& operator>>(Istream&, procLduMatrix&); friend Ostream& operator<<(Ostream&, const procLduMatrix&); }; diff --git a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.C b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.C index dbdaa0fbc3f050bcc54a3eae48887d773536225a..c76026bd5353c776dccd68516803b636184e37e8 100644 --- a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.C +++ b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,109 +34,86 @@ License template<class Type, class DType, class LUType> Foam::LduMatrix<Type, DType, LUType>::LduMatrix(const lduMesh& mesh) : - lduMesh_(mesh), - diagPtr_(nullptr), - upperPtr_(nullptr), - lowerPtr_(nullptr), - sourcePtr_(nullptr), - interfaces_(0), - interfacesUpper_(0), - interfacesLower_(0) + lduMesh_(mesh) {} template<class Type, class DType, class LUType> Foam::LduMatrix<Type, DType, LUType>::LduMatrix(const LduMatrix& A) : - lduMesh_(A.lduMesh_), - diagPtr_(nullptr), - upperPtr_(nullptr), - lowerPtr_(nullptr), - sourcePtr_(nullptr), - interfaces_(0), - interfacesUpper_(0), - interfacesLower_(0) + lduMesh_(A.lduMesh_) { if (A.diagPtr_) { - diagPtr_ = new Field<DType>(*(A.diagPtr_)); + diagPtr_ = std::make_unique<Field<DType>>(*(A.diagPtr_)); } if (A.upperPtr_) { - upperPtr_ = new Field<LUType>(*(A.upperPtr_)); + upperPtr_ = std::make_unique<Field<LUType>>(*(A.upperPtr_)); } if (A.lowerPtr_) { - lowerPtr_ = new Field<LUType>(*(A.lowerPtr_)); + lowerPtr_ = std::make_unique<Field<LUType>>(*(A.lowerPtr_)); } if (A.sourcePtr_) { - sourcePtr_ = new Field<Type>(*(A.sourcePtr_)); + sourcePtr_ = std::make_unique<Field<Type>>(*(A.sourcePtr_)); } } template<class Type, class DType, class LUType> -Foam::LduMatrix<Type, DType, LUType>::LduMatrix(LduMatrix& A, bool reuse) +Foam::LduMatrix<Type, DType, LUType>::LduMatrix(LduMatrix&& A) : lduMesh_(A.lduMesh_), - diagPtr_(nullptr), - upperPtr_(nullptr), - lowerPtr_(nullptr), - sourcePtr_(nullptr), - interfaces_(0), - interfacesUpper_(0), - interfacesLower_(0) + diagPtr_(std::move(A.diagPtr_)), + lowerPtr_(std::move(A.lowerPtr_)), + upperPtr_(std::move(A.upperPtr_)), + sourcePtr_(std::move(A.sourcePtr_)) { - if (reuse) - { - if (A.diagPtr_) - { - diagPtr_ = A.diagPtr_; - A.diagPtr_ = nullptr; - } + // Clear the old interfaces? +} - if (A.upperPtr_) - { - upperPtr_ = A.upperPtr_; - A.upperPtr_ = nullptr; - } - if (A.lowerPtr_) - { - lowerPtr_ = A.lowerPtr_; - A.lowerPtr_ = nullptr; - } +template<class Type, class DType, class LUType> +Foam::LduMatrix<Type, DType, LUType>::LduMatrix(LduMatrix& A, bool reuse) +: + lduMesh_(A.lduMesh_) +{ + if (reuse) + { + // Move assignment + diagPtr_ = std::move(A.diagPtr_); + upperPtr_ = std::move(A.upperPtr_); + lowerPtr_ = std::move(A.lowerPtr_); + sourcePtr_ = std::move(A.sourcePtr_); - if (A.sourcePtr_) - { - sourcePtr_ = A.sourcePtr_; - A.sourcePtr_ = nullptr; - } + // Clear the old interfaces? } else { + // Copy assignment if (A.diagPtr_) { - diagPtr_ = new Field<DType>(*(A.diagPtr_)); + diagPtr_ = std::make_unique<Field<DType>>(*(A.diagPtr_)); } if (A.upperPtr_) { - upperPtr_ = new Field<LUType>(*(A.upperPtr_)); + upperPtr_ = std::make_unique<Field<LUType>>(*(A.upperPtr_)); } if (A.lowerPtr_) { - lowerPtr_ = new Field<LUType>(*(A.lowerPtr_)); + lowerPtr_ = std::make_unique<Field<LUType>>(*(A.lowerPtr_)); } if (A.sourcePtr_) { - sourcePtr_ = new Field<Type>(*(A.sourcePtr_)); + sourcePtr_ = std::make_unique<Field<Type>>(*(A.sourcePtr_)); } } } @@ -152,48 +130,51 @@ Foam::LduMatrix<Type, DType, LUType>::LduMatrix diagPtr_(new Field<DType>(is)), upperPtr_(new Field<LUType>(is)), lowerPtr_(new Field<LUType>(is)), - sourcePtr_(new Field<Type>(is)), - interfaces_(0), - interfacesUpper_(0), - interfacesLower_(0) + sourcePtr_(new Field<Type>(is)) {} -// * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type, class DType, class LUType> -Foam::LduMatrix<Type, DType, LUType>::~LduMatrix() +Foam::word Foam::LduMatrix<Type, DType, LUType>::matrixTypeName() const { if (diagPtr_) { - delete diagPtr_; + return + ( + (!upperPtr_) + ? (!lowerPtr_ ? "diagonal" : "diagonal-lower") + : (!lowerPtr_ ? "symmetric" : "asymmetric") + ); } - if (upperPtr_) - { - delete upperPtr_; - } + // is empty (or just wrong) + return (!upperPtr_ && !lowerPtr_ ? "empty" : "ill-defined"); +} - if (lowerPtr_) - { - delete lowerPtr_; - } - if (sourcePtr_) +template<class Type, class DType, class LUType> +const Foam::Field<DType>& Foam::LduMatrix<Type, DType, LUType>::diag() const +{ + if (!diagPtr_) { - delete sourcePtr_; + FatalErrorInFunction + << "diagPtr_ unallocated" + << abort(FatalError); } -} + return *diagPtr_; +} -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type, class DType, class LUType> Foam::Field<DType>& Foam::LduMatrix<Type, DType, LUType>::diag() { if (!diagPtr_) { - diagPtr_ = new Field<DType>(lduAddr().size(), Zero); + diagPtr_ = + std::make_unique<Field<DType>>(lduAddr().size(), Foam::zero{}); } return *diagPtr_; @@ -201,127 +182,115 @@ Foam::Field<DType>& Foam::LduMatrix<Type, DType, LUType>::diag() template<class Type, class DType, class LUType> -Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::upper() +const Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::upper() const { - if (!upperPtr_) + if (upperPtr_) { - if (lowerPtr_) - { - upperPtr_ = new Field<LUType>(*lowerPtr_); - } - else + return *upperPtr_; + } + else + { + if (!lowerPtr_) { - upperPtr_ = new Field<LUType> - ( - lduAddr().lowerAddr().size(), - Zero - ); + FatalErrorInFunction + << "lowerPtr_ and upperPtr_ unallocated" + << abort(FatalError); } - } - return *upperPtr_; + return *lowerPtr_; + } } template<class Type, class DType, class LUType> -Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::lower() +Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::upper() { - if (!lowerPtr_) + if (!upperPtr_) { - if (upperPtr_) + if (lowerPtr_) { - lowerPtr_ = new Field<LUType>(*upperPtr_); + upperPtr_ = std::make_unique<Field<LUType>>(*lowerPtr_); } else { - lowerPtr_ = new Field<LUType> - ( - lduAddr().lowerAddr().size(), - Zero - ); + upperPtr_ = + std::make_unique<Field<LUType>> + ( + lduAddr().lowerAddr().size(), + Foam::zero{} + ); } } - return *lowerPtr_; + return *upperPtr_; } template<class Type, class DType, class LUType> -Foam::Field<Type>& Foam::LduMatrix<Type, DType, LUType>::source() +const Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::lower() const { - if (!sourcePtr_) + if (lowerPtr_) { - sourcePtr_ = new Field<Type>(lduAddr().size(), Zero); + return *lowerPtr_; } - - return *sourcePtr_; -} - - -template<class Type, class DType, class LUType> -const Foam::Field<DType>& Foam::LduMatrix<Type, DType, LUType>::diag() const -{ - if (!diagPtr_) + else { - FatalErrorInFunction - << "diagPtr_ unallocated" - << abort(FatalError); - } + if (!upperPtr_) + { + FatalErrorInFunction + << "lowerPtr_ and upperPtr_ unallocated" + << abort(FatalError); + } - return *diagPtr_; + return *upperPtr_; + } } template<class Type, class DType, class LUType> -const Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::upper() const +Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::lower() { - if (!lowerPtr_ && !upperPtr_) + if (!lowerPtr_) { - FatalErrorInFunction - << "lowerPtr_ or upperPtr_ unallocated" - << abort(FatalError); + if (upperPtr_) + { + lowerPtr_ = std::make_unique<Field<LUType>>(*upperPtr_); + } + else + { + lowerPtr_ = std::make_unique<Field<LUType>> + ( + lduAddr().lowerAddr().size(), + Foam::zero{} + ); + } } - if (upperPtr_) - { - return *upperPtr_; - } - else - { - return *lowerPtr_; - } + return *lowerPtr_; } template<class Type, class DType, class LUType> -const Foam::Field<LUType>& Foam::LduMatrix<Type, DType, LUType>::lower() const +const Foam::Field<Type>& Foam::LduMatrix<Type, DType, LUType>::source() const { - if (!lowerPtr_ && !upperPtr_) + if (!sourcePtr_) { FatalErrorInFunction - << "lowerPtr_ or upperPtr_ unallocated" + << "sourcePtr_ unallocated" << abort(FatalError); } - if (lowerPtr_) - { - return *lowerPtr_; - } - else - { - return *upperPtr_; - } + return *sourcePtr_; } template<class Type, class DType, class LUType> -const Foam::Field<Type>& Foam::LduMatrix<Type, DType, LUType>::source() const +Foam::Field<Type>& Foam::LduMatrix<Type, DType, LUType>::source() { if (!sourcePtr_) { - FatalErrorInFunction - << "sourcePtr_ unallocated" - << abort(FatalError); + sourcePtr_ = + std::make_unique<Field<Type>>(lduAddr().size(), Foam::zero{}); } return *sourcePtr_; @@ -330,43 +299,50 @@ const Foam::Field<Type>& Foam::LduMatrix<Type, DType, LUType>::source() const // * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * // +// template<class Type, class DType, class LUType> +// Foam::Ostream& Foam::operator<< +// ( +// Ostream& os, +// const InfoProxy<Type, DType, LUType>& iproxy +// ) +// { +// const auto& mat = *iproxy; +// +// ... +// +// os.check(FUNCTION_NAME); +// return os; +// } + + template<class Type, class DType, class LUType> Foam::Ostream& Foam::operator<< ( Ostream& os, - const LduMatrix<Type, DType, LUType>& ldum + const LduMatrix<Type, DType, LUType>& mat ) { - if (ldum.diagPtr_) + if (mat.hasDiag()) { - os << "Diagonal = " - << *ldum.diagPtr_ - << endl << endl; + os << "Diagonal = " << mat.diag() << nl << nl; } - if (ldum.upperPtr_) + if (mat.hasUpper()) { - os << "Upper triangle = " - << *ldum.upperPtr_ - << endl << endl; + os << "Upper triangle = " << mat.upper() << nl << nl; } - if (ldum.lowerPtr_) + if (mat.hasLower()) { - os << "Lower triangle = " - << *ldum.lowerPtr_ - << endl << endl; + os << "Lower triangle = " << mat.lower() << nl << nl; } - if (ldum.sourcePtr_) + if (mat.hasSource()) { - os << "Source = " - << *ldum.sourcePtr_ - << endl << endl; + os << "Source = " << mat.source() << nl << nl; } os.check(FUNCTION_NAME); - return os; } diff --git a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.H b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.H index 96e9fd14f4e303bf5ca51a51a0f739db6ed20f95..407f7ee3226666147dcf8029533ce8f5f04d988b 100644 --- a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.H +++ b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrix.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -93,25 +93,32 @@ class LduMatrix const lduMesh& lduMesh_; //- Diagonal coefficients - Field<DType> *diagPtr_; + std::unique_ptr<Field<DType>> diagPtr_; //- Off-diagonal coefficients - Field<LUType> *upperPtr_, *lowerPtr_; + std::unique_ptr<Field<LUType>> upperPtr_; + + //- Off-diagonal coefficients + std::unique_ptr<Field<LUType>> lowerPtr_; //- Source - Field<Type> *sourcePtr_; + std::unique_ptr<Field<Type>> sourcePtr_; //- Field interfaces (processor patches etc.) LduInterfaceFieldPtrsList<Type> interfaces_; //- Off-diagonal coefficients for interfaces - FieldField<Field, LUType> interfacesUpper_, interfacesLower_; + FieldField<Field, LUType> interfacesUpper_; + + //- Off-diagonal coefficients for interfaces + FieldField<Field, LUType> interfacesLower_; public: friend class SolverPerformance<Type>; + // ----------------------------------------------------------------------- //- Abstract base-class for LduMatrix solvers class solver { @@ -274,6 +281,7 @@ public: }; + // ----------------------------------------------------------------------- //- Abstract base-class for LduMatrix smoothers class smoother { @@ -371,6 +379,7 @@ public: }; + // ----------------------------------------------------------------------- //- Abstract base-class for LduMatrix preconditioners class preconditioner { @@ -466,6 +475,8 @@ public: }; + // ----------------------------------------------------------------------- + // Static Data // Declare name of the class and its debug switch @@ -476,126 +487,125 @@ public: //- Construct given an LDU addressed mesh. // The coefficients are initially empty for subsequent setting. - LduMatrix(const lduMesh&); + // Not yet 'explicit' (legacy code may rely on implicit construct) + LduMatrix(const lduMesh& mesh); - //- Construct as copy + //- Copy construct LduMatrix(const LduMatrix<Type, DType, LUType>&); + //- Move construct + LduMatrix(LduMatrix<Type, DType, LUType>&&); + //- Construct as copy or re-use as specified. LduMatrix(LduMatrix<Type, DType, LUType>&, bool reuse); //- Construct given an LDU addressed mesh and an Istream - // from which the coefficients are read - LduMatrix(const lduMesh&, Istream&); + //- from which the coefficients are read + LduMatrix(const lduMesh& mesh, Istream& is); //- Destructor - ~LduMatrix(); + ~LduMatrix() = default; // Member Functions - // Access to addressing + // Addressing - //- Return the LDU mesh from which the addressing is obtained - const lduMesh& mesh() const noexcept - { - return lduMesh_; - } + //- Return the LDU mesh from which the addressing is obtained + const lduMesh& mesh() const noexcept + { + return lduMesh_; + } - //- Return the LDU addressing - const lduAddressing& lduAddr() const - { - return lduMesh_.lduAddr(); - } + //- Return the LDU addressing + const lduAddressing& lduAddr() const + { + return lduMesh_.lduAddr(); + } - //- Return the patch evaluation schedule - const lduSchedule& patchSchedule() const - { - return lduAddr().patchSchedule(); - } + //- Return the patch evaluation schedule + const lduSchedule& patchSchedule() const + { + return lduMesh_.lduAddr().patchSchedule(); + } - //- Return interfaces - const LduInterfaceFieldPtrsList<Type>& interfaces() const - { - return interfaces_; - } + //- Const access to the interfaces + const LduInterfaceFieldPtrsList<Type>& interfaces() const noexcept + { + return interfaces_; + } - //- Return interfaces - LduInterfaceFieldPtrsList<Type>& interfaces() - { - return interfaces_; - } + //- Non-const access to the interfaces + LduInterfaceFieldPtrsList<Type>& interfaces() noexcept + { + return interfaces_; + } - // Access to coefficients + // Coefficients - Field<DType>& diag(); - Field<LUType>& upper(); - Field<LUType>& lower(); - Field<Type>& source(); + const Field<DType>& diag() const; + const Field<LUType>& upper() const; + const Field<LUType>& lower() const; + const Field<Type>& source() const; - FieldField<Field, LUType>& interfacesUpper() - { - return interfacesUpper_; - } + Field<DType>& diag(); + Field<LUType>& upper(); + Field<LUType>& lower(); + Field<Type>& source(); - FieldField<Field, LUType>& interfacesLower() - { - return interfacesLower_; - } + // Interfaces - const Field<DType>& diag() const; - const Field<LUType>& upper() const; - const Field<LUType>& lower() const; - const Field<Type>& source() const; + const FieldField<Field, LUType>& interfacesUpper() const noexcept + { + return interfacesUpper_; + } - const FieldField<Field, LUType>& interfacesUpper() const - { - return interfacesUpper_; - } + const FieldField<Field, LUType>& interfacesLower() const noexcept + { + return interfacesLower_; + } - const FieldField<Field, LUType>& interfacesLower() const - { - return interfacesLower_; - } + FieldField<Field, LUType>& interfacesUpper() noexcept + { + return interfacesUpper_; + } + FieldField<Field, LUType>& interfacesLower() noexcept + { + return interfacesLower_; + } - bool hasDiag() const noexcept - { - return (diagPtr_); - } - bool hasUpper() const noexcept - { - return (upperPtr_); - } + // Characteristics - bool hasLower() const noexcept - { - return (lowerPtr_); - } + //- The matrix type (empty, diagonal, symmetric, ...) + word matrixTypeName() const; - bool hasSource() const noexcept - { - return (sourcePtr_); - } + bool hasDiag() const noexcept { return bool(diagPtr_); } + bool hasUpper() const noexcept { return bool(upperPtr_); } + bool hasLower() const noexcept { return bool(lowerPtr_); } + bool hasSource() const noexcept { return bool(sourcePtr_); } - bool diagonal() const noexcept - { - return (diagPtr_ && !lowerPtr_ && !upperPtr_); - } + //- Matrix has diagonal only + bool diagonal() const noexcept + { + return (diagPtr_ && !lowerPtr_ && !upperPtr_); + } - bool symmetric() const noexcept - { - return (diagPtr_ && (!lowerPtr_ && upperPtr_)); - } + //- Matrix is symmetric + bool symmetric() const noexcept + { + return (diagPtr_ && !lowerPtr_ && upperPtr_); + } - bool asymmetric() const noexcept - { - return (diagPtr_ && lowerPtr_ && upperPtr_); - } + //- Matrix is asymmetric (ie, full) + bool asymmetric() const noexcept + { + return (diagPtr_ && lowerPtr_ && upperPtr_); + } // Operations @@ -651,8 +661,12 @@ public: // Member Operators + //- Copy assignment void operator=(const LduMatrix<Type, DType, LUType>&); + //- Move assignment + void operator=(LduMatrix<Type, DType, LUType>&&); + void negate(); void operator+=(const LduMatrix<Type, DType, LUType>&); diff --git a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixOperations.C b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixOperations.C index 7fa0cd403c3d432b2372dff2cacf7f152df5d74f..46e7ad7b605cd058fdcb2898aca7e1eb58bb2d4c 100644 --- a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixOperations.C +++ b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixOperations.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -90,16 +90,11 @@ template<class Type, class DType, class LUType> Foam::tmp<Foam::Field<Type>> Foam::LduMatrix<Type, DType, LUType>::H(const Field<Type>& psi) const { - tmp<Field<Type>> tHpsi - ( - new Field<Type>(lduAddr().size(), Zero) - ); + auto tHpsi = tmp<Field<Type>>::New(lduAddr().size(), Foam::zero{}); - if (lowerPtr_ || upperPtr_) + if (hasLower() || hasUpper()) { - Field<Type> & Hpsi = tHpsi(); - - Type* __restrict__ HpsiPtr = Hpsi.begin(); + Type* __restrict__ HpsiPtr = tHpsi.ref().begin(); const Type* __restrict__ psiPtr = psi.begin(); @@ -174,32 +169,30 @@ void Foam::LduMatrix<Type, DType, LUType>::operator=(const LduMatrix& A) return; // Self-assignment is a no-op } - if (A.diagPtr_) + if (A.hasDiag()) { diag() = A.diag(); } - if (A.upperPtr_) + if (A.hasUpper()) { upper() = A.upper(); } - else if (upperPtr_) + else { - delete upperPtr_; - upperPtr_ = nullptr; + upperPtr_.reset(nullptr); } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = A.lower(); } - else if (lowerPtr_) + else { - delete lowerPtr_; - lowerPtr_ = nullptr; + lowerPtr_.reset(nullptr); } - if (A.sourcePtr_) + if (A.hasSource()) { source() = A.source(); } @@ -209,6 +202,24 @@ void Foam::LduMatrix<Type, DType, LUType>::operator=(const LduMatrix& A) } +template<class Type, class DType, class LUType> +void Foam::LduMatrix<Type, DType, LUType>::operator=(LduMatrix&& A) +{ + if (this == &A) + { + return; // Self-assignment is a no-op + } + + diagPtr_ = std::move(A.diagPtr_); + upperPtr_ = std::move(A.upperPtr_); + lowerPtr_ = std::move(A.lowerPtr_); + sourcePtr_ = std::move(A.sourcePtr_); + + interfacesUpper_ = std::move(A.interfacesUpper_); + interfacesLower_ = std::move(A.interfacesLower_); +} + + template<class Type, class DType, class LUType> void Foam::LduMatrix<Type, DType, LUType>::negate() { @@ -240,12 +251,12 @@ void Foam::LduMatrix<Type, DType, LUType>::negate() template<class Type, class DType, class LUType> void Foam::LduMatrix<Type, DType, LUType>::operator+=(const LduMatrix& A) { - if (A.diagPtr_) + if (A.hasDiag()) { diag() += A.diag(); } - if (A.sourcePtr_) + if (A.hasSource()) { source() += A.source(); } @@ -270,7 +281,7 @@ void Foam::LduMatrix<Type, DType, LUType>::operator+=(const LduMatrix& A) } else if (asymmetric() && A.symmetric()) { - if (A.upperPtr_) + if (A.hasUpper()) { lower() += A.upper(); upper() += A.upper(); @@ -289,12 +300,12 @@ void Foam::LduMatrix<Type, DType, LUType>::operator+=(const LduMatrix& A) } else if (diagonal()) { - if (A.upperPtr_) + if (A.hasUpper()) { upper() = A.upper(); } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = A.lower(); } @@ -317,12 +328,12 @@ void Foam::LduMatrix<Type, DType, LUType>::operator+=(const LduMatrix& A) template<class Type, class DType, class LUType> void Foam::LduMatrix<Type, DType, LUType>::operator-=(const LduMatrix& A) { - if (A.diagPtr_) + if (A.hasDiag()) { diag() -= A.diag(); } - if (A.sourcePtr_) + if (A.hasSource()) { source() -= A.source(); } @@ -347,7 +358,7 @@ void Foam::LduMatrix<Type, DType, LUType>::operator-=(const LduMatrix& A) } else if (asymmetric() && A.symmetric()) { - if (A.upperPtr_) + if (A.hasUpper()) { lower() -= A.upper(); upper() -= A.upper(); @@ -366,12 +377,12 @@ void Foam::LduMatrix<Type, DType, LUType>::operator-=(const LduMatrix& A) } else if (diagonal()) { - if (A.upperPtr_) + if (A.hasUpper()) { upper() = -A.upper(); } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = -A.lower(); } diff --git a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixUpdateMatrixInterfaces.C b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixUpdateMatrixInterfaces.C index a3fa3d2bb145bb0df1be715765ba8a1d3ef3004e..91423a6ca274ac4999529437ee57c350814cb45f 100644 --- a/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixUpdateMatrixInterfaces.C +++ b/src/OpenFOAM/matrices/LduMatrix/LduMatrix/LduMatrixUpdateMatrixInterfaces.C @@ -44,7 +44,7 @@ void Foam::LduMatrix<Type, DType, LUType>::initMatrixInterfaces if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { @@ -88,7 +88,7 @@ void Foam::LduMatrix<Type, DType, LUType>::initMatrixInterfaces interfacei, psiif, interfaceCoeffs[interfacei], - UPstream::commsTypes::blocking + UPstream::commsTypes::buffered ); } } @@ -172,7 +172,7 @@ void Foam::LduMatrix<Type, DType, LUType>::updateMatrixInterfaces if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { @@ -184,7 +184,7 @@ void Foam::LduMatrix<Type, DType, LUType>::updateMatrixInterfaces } // Check/no-check for updatedMatrix() ? - const bool noCheck = (commsType == UPstream::commsTypes::blocking); + const bool noCheck = (commsType == UPstream::commsTypes::buffered); forAll(interfaces_, interfacei) { @@ -264,7 +264,7 @@ void Foam::LduMatrix<Type, DType, LUType>::updateMatrixInterfaces interfacei, psiif, interfaceCoeffs[interfacei], - UPstream::commsTypes::blocking + UPstream::commsTypes::buffered ); } } diff --git a/src/OpenFOAM/matrices/Matrix/Matrix.H b/src/OpenFOAM/matrices/Matrix/Matrix.H index 7bff0b2a773e2fb20677235f33118f36322518b4..7e299d96cfab5c0109371832bdd1bdf1beeb69ad 100644 --- a/src/OpenFOAM/matrices/Matrix/Matrix.H +++ b/src/OpenFOAM/matrices/Matrix/Matrix.H @@ -114,8 +114,12 @@ public: // Static Member Functions - //- Return a null Matrix - inline static const Matrix<Form, Type>& null(); + //- Return a null Matrix (reference to a nullObject). + //- Behaves like a empty Matrix. + static const Matrix<Form, Type>& null() noexcept + { + return NullObjectRef<Matrix<Form, Type>>(); + } // Iterators @@ -132,7 +136,7 @@ public: //- Default construct (empty matrix) inline Matrix() noexcept; - //- Construct given number of rows/columns + //- Construct given number of rows/columns, uninitialised content Matrix(const label m, const label n); //- Construct with given number of rows/columns diff --git a/src/OpenFOAM/matrices/Matrix/MatrixI.H b/src/OpenFOAM/matrices/Matrix/MatrixI.H index 17f35969ccc265abc14814748d28e7ffb1dd8f8f..b1dc3b1267c3d6f96d1930478082ddffe49a268b 100644 --- a/src/OpenFOAM/matrices/Matrix/MatrixI.H +++ b/src/OpenFOAM/matrices/Matrix/MatrixI.H @@ -85,13 +85,6 @@ Foam::Matrix<Form, Type>::clone() const // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class Form, class Type> -inline const Foam::Matrix<Form, Type>& Foam::Matrix<Form, Type>::null() -{ - return NullObjectRef<Matrix<Form, Type>>(); -} - - template<class Form, class Type> inline Foam::label Foam::Matrix<Form, Type>::size() const { diff --git a/src/OpenFOAM/matrices/QRMatrix/QRMatrix.H b/src/OpenFOAM/matrices/QRMatrix/QRMatrix.H index dcb32cc6db14207853b1559c6c0bbca26b4ed71c..1e6a8d2a0ddba271897aebd950fb2b3db4efb344 100644 --- a/src/OpenFOAM/matrices/QRMatrix/QRMatrix.H +++ b/src/OpenFOAM/matrices/QRMatrix/QRMatrix.H @@ -252,7 +252,7 @@ public: // Constructors - //- Construct null + //- No default construct QRMatrix() = delete; //- Construct with a matrix and perform QR decomposition diff --git a/src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H b/src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H index 3e90bff571523f5f49e1537df847091296a2a851..179e5a1339cc3acc203e733c6d4c99185f8a28cc 100644 --- a/src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H +++ b/src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H @@ -39,8 +39,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef RectangularMatrix_H -#define RectangularMatrix_H +#ifndef Foam_RectangularMatrix_H +#define Foam_RectangularMatrix_H #include "Matrix.H" #include "SquareMatrix.H" @@ -59,7 +59,6 @@ class RectangularMatrix : public Matrix<RectangularMatrix<Type>, Type> { - public: // Generated Methods @@ -76,7 +75,7 @@ public: // Constructors - //- Construct a square matrix (rows == columns) + //- Construct a square matrix (rows == columns), uninitialised content inline explicit RectangularMatrix(const label n); //- Construct given number of rows/columns diff --git a/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.C b/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.C index 2c64598fd6918851e3a7c9bf7379388c6a018229..fc5e12418479ce116e72c9f6e03bbf2b87a30953 100644 --- a/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.C +++ b/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -124,7 +124,7 @@ scalar det(const SquareMatrix<Type>& matrix) { SquareMatrix<Type> matrixTmp = matrix; - labelList pivotIndices(matrix.m()); + labelList pivotIndices; label sign; LUDecompose(matrixTmp, pivotIndices, sign); @@ -136,7 +136,7 @@ scalar det(const SquareMatrix<Type>& matrix) template<class Type> scalar det(SquareMatrix<Type>& matrix) { - labelList pivotIndices(matrix.m()); + labelList pivotIndices; label sign; LUDecompose(matrix, pivotIndices, sign); diff --git a/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H b/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H index 0a055c0539c27d29d57a00cc86a69f2ba4ed62a0..8ccaeed3419d57951538460bc2383e6be54b4d6c 100644 --- a/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H +++ b/src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H @@ -81,7 +81,7 @@ public: // Constructors - //- Construct for given size (rows == cols) + //- Construct for given size (rows == cols), uninitialised content inline explicit SquareMatrix(const label n); //- Construct for given size (rows == cols) diff --git a/src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H b/src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H index 81f9536632300c038f14c86afb364fd991e43c45..4475f12d49cafdaff102d352632d19a231e7524f 100644 --- a/src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H +++ b/src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H @@ -40,8 +40,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef SymmetricSquareMatrix_H -#define SymmetricSquareMatrix_H +#ifndef Foam_SymmetricSquareMatrix_H +#define Foam_SymmetricSquareMatrix_H #include "SquareMatrix.H" @@ -59,7 +59,6 @@ class SymmetricSquareMatrix : public Matrix<SymmetricSquareMatrix<Type>, Type> { - public: // Generated Methods @@ -71,12 +70,13 @@ public: SymmetricSquareMatrix(const SymmetricSquareMatrix&) = default; //- Copy assignment - SymmetricSquareMatrix& operator=(const SymmetricSquareMatrix&) = default; + SymmetricSquareMatrix& + operator=(const SymmetricSquareMatrix&) = default; // Constructors - //- Construct for given size (rows == cols) + //- Construct for given size (rows == cols), uninitialised content inline explicit SymmetricSquareMatrix(const label n); //- Construct for given size (rows == cols) @@ -113,6 +113,8 @@ public: }; +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + // Global Functions //- Return the LU decomposed SymmetricSquareMatrix inverse diff --git a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.C b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.C index 61006d077c3ffc57cddbc9741cf296d11992774f..91180115b7f2c568dc0fb042fbb525349dfce927 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "lduAddressing.H" -#include "demandDrivenData.H" #include "scalarField.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -44,7 +43,7 @@ void Foam::lduAddressing::calcLosort() const // Scan the neighbour list to find out how many times the cell // appears as a neighbour of the face. Done this way to avoid guessing // and resizing list - labelList nNbrOfFace(size(), Zero); + labelList nNbrOfFace(size(), Foam::zero{}); const labelUList& nbr = upperAddr(); @@ -73,9 +72,8 @@ void Foam::lduAddressing::calcLosort() const } // Gather the neighbours into the losort array - losortPtr_ = new labelList(nbr.size(), -1); - - labelList& lst = *losortPtr_; + losortPtr_ = std::make_unique<labelList>(nbr.size(), -1); + auto& lst = *losortPtr_; // Set counter for losort label lstI = 0; @@ -104,9 +102,8 @@ void Foam::lduAddressing::calcOwnerStart() const const labelList& own = lowerAddr(); - ownerStartPtr_ = new labelList(size() + 1, own.size()); - - labelList& ownStart = *ownerStartPtr_; + ownerStartPtr_ = std::make_unique<labelList>(size() + 1, own.size()); + auto& ownStart = *ownerStartPtr_; // Set up first lookup by hand ownStart[0] = 0; @@ -139,9 +136,8 @@ void Foam::lduAddressing::calcLosortStart() const << abort(FatalError); } - losortStartPtr_ = new labelList(size() + 1, Zero); - - labelList& lsrtStart = *losortStartPtr_; + losortStartPtr_ = std::make_unique<labelList>(size() + 1, Foam::zero{}); + auto& lsrtStart = *losortStartPtr_; const labelList& nbr = upperAddr(); @@ -173,16 +169,6 @@ void Foam::lduAddressing::calcLosortStart() const } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::lduAddressing::~lduAddressing() -{ - deleteDemandDrivenData(losortPtr_); - deleteDemandDrivenData(ownerStartPtr_); - deleteDemandDrivenData(losortStartPtr_); -} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // const Foam::labelUList& Foam::lduAddressing::losortAddr() const @@ -220,9 +206,9 @@ const Foam::labelUList& Foam::lduAddressing::losortStartAddr() const void Foam::lduAddressing::clearOut() { - deleteDemandDrivenData(losortPtr_); - deleteDemandDrivenData(ownerStartPtr_); - deleteDemandDrivenData(losortStartPtr_); + losortPtr_.reset(nullptr); + ownerStartPtr_.reset(nullptr); + losortStartPtr_.reset(nullptr); } @@ -262,7 +248,7 @@ Foam::Tuple2<Foam::label, Foam::scalar> Foam::lduAddressing::band() const const labelUList& owner = lowerAddr(); const labelUList& neighbour = upperAddr(); - labelList cellBandwidth(size(), Zero); + labelList cellBandwidth(size(), Foam::zero{}); forAll(neighbour, facei) { diff --git a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.H b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.H index c37cd61aec852a29cf1a44e4f87e0118f9bc5ff3..b610a6539d4b8805519015220ea80aa4dc573e4d 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.H +++ b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduAddressing.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -123,23 +123,17 @@ class lduAddressing //- Demand-driven data //- Losort addressing - mutable labelList* losortPtr_; + mutable std::unique_ptr<labelList> losortPtr_; //- Owner start addressing - mutable labelList* ownerStartPtr_; + mutable std::unique_ptr<labelList> ownerStartPtr_; //- Losort start addressing - mutable labelList* losortStartPtr_; + mutable std::unique_ptr<labelList> losortStartPtr_; // Private Member Functions - //- No copy construct - lduAddressing(const lduAddressing&) = delete; - - //- No copy assignment - void operator=(const lduAddressing&) = delete; - //- Calculate losort void calcLosort() const; @@ -152,24 +146,32 @@ class lduAddressing public: - //- Construct with size (number of equations) - explicit lduAddressing(const label nEqns) - : - size_(nEqns), - losortPtr_(nullptr), - ownerStartPtr_(nullptr), - losortStartPtr_(nullptr) - {} + // Generated Methods + + //- No copy construct + lduAddressing(const lduAddressing&) = delete; + + //- No copy assignment + void operator=(const lduAddressing&) = delete; + + + // Constructors + + //- Construct with size (number of equations) + explicit lduAddressing(const label nEqns) noexcept + : + size_(nEqns) + {} //- Destructor - virtual ~lduAddressing(); + virtual ~lduAddressing() = default; // Member Functions //- Return number of equations - label size() const + label size() const noexcept { return size_; } diff --git a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterface/processorLduInterfaceTemplates.C b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterface/processorLduInterfaceTemplates.C index 2a0c06c60751abc6362b8fbcb0a3c8dd10365f6c..6d95e5215a759bfdd26705b4479b2cddf6e3cb65 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterface/processorLduInterfaceTemplates.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterface/processorLduInterfaceTemplates.C @@ -43,7 +43,7 @@ void Foam::processorLduInterface::send if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::scheduled ) { @@ -113,7 +113,7 @@ void Foam::processorLduInterface::receive if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::scheduled ) { @@ -194,7 +194,7 @@ void Foam::processorLduInterface::compressedSend if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::scheduled ) { @@ -272,7 +272,7 @@ void Foam::processorLduInterface::compressedReceive if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::scheduled ) { diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.C b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.C index dd3232541991f1077ccf41d0808c4da12282b712..e2767c6b5262da32109a81c1fd087ccee9b71d3e 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,79 +60,66 @@ Foam::lduMatrix::normTypesNames_ Foam::lduMatrix::lduMatrix(const lduMesh& mesh) : - lduMesh_(mesh), - lowerPtr_(nullptr), - diagPtr_(nullptr), - upperPtr_(nullptr) + lduMesh_(mesh) {} Foam::lduMatrix::lduMatrix(const lduMatrix& A) : - lduMesh_(A.lduMesh_), - lowerPtr_(nullptr), - diagPtr_(nullptr), - upperPtr_(nullptr) + lduMesh_(A.lduMesh_) { - if (A.lowerPtr_) + if (A.diagPtr_) { - lowerPtr_ = new scalarField(*(A.lowerPtr_)); + diagPtr_ = std::make_unique<scalarField>(*(A.diagPtr_)); } - if (A.diagPtr_) + if (A.upperPtr_) { - diagPtr_ = new scalarField(*(A.diagPtr_)); + upperPtr_ = std::make_unique<scalarField>(*(A.upperPtr_)); } - if (A.upperPtr_) + if (A.lowerPtr_) { - upperPtr_ = new scalarField(*(A.upperPtr_)); + lowerPtr_ = std::make_unique<scalarField>(*(A.lowerPtr_)); } } -Foam::lduMatrix::lduMatrix(lduMatrix& A, bool reuse) +Foam::lduMatrix::lduMatrix(lduMatrix&& A) : lduMesh_(A.lduMesh_), - lowerPtr_(nullptr), - diagPtr_(nullptr), - upperPtr_(nullptr) + diagPtr_(std::move(A.diagPtr_)), + lowerPtr_(std::move(A.lowerPtr_)), + upperPtr_(std::move(A.upperPtr_)) +{} + + +Foam::lduMatrix::lduMatrix(lduMatrix& A, bool reuse) +: + lduMesh_(A.lduMesh_) { if (reuse) { - if (A.lowerPtr_) - { - lowerPtr_ = A.lowerPtr_; - A.lowerPtr_ = nullptr; - } - - if (A.diagPtr_) - { - diagPtr_ = A.diagPtr_; - A.diagPtr_ = nullptr; - } - - if (A.upperPtr_) - { - upperPtr_ = A.upperPtr_; - A.upperPtr_ = nullptr; - } + diagPtr_ = std::move(A.diagPtr_); + upperPtr_ = std::move(A.upperPtr_); + lowerPtr_ = std::move(A.lowerPtr_); } else { - if (A.lowerPtr_) + // Copy assignment + if (A.diagPtr_) { - lowerPtr_ = new scalarField(*(A.lowerPtr_)); + diagPtr_ = std::make_unique<scalarField>(*(A.diagPtr_)); } - if (A.diagPtr_) + if (A.upperPtr_) { - diagPtr_ = new scalarField(*(A.diagPtr_)); + upperPtr_ = std::make_unique<scalarField>(*(A.upperPtr_)); } - if (A.upperPtr_) + if (A.lowerPtr_) { - upperPtr_ = new scalarField(*(A.upperPtr_)); + lowerPtr_ = std::make_unique<scalarField>(*(A.lowerPtr_)); } } } @@ -140,64 +127,56 @@ Foam::lduMatrix::lduMatrix(lduMatrix& A, bool reuse) Foam::lduMatrix::lduMatrix(const lduMesh& mesh, Istream& is) : - lduMesh_(mesh), - lowerPtr_(nullptr), - diagPtr_(nullptr), - upperPtr_(nullptr) + lduMesh_(mesh) { - Switch hasLow(is); - Switch hasDiag(is); - Switch hasUp(is); + bool withLower, withDiag, withUpper; + + is >> withLower >> withDiag >> withUpper; - if (hasLow) + if (withLower) { - lowerPtr_ = new scalarField(is); + lowerPtr_ = std::make_unique<scalarField>(is); } - if (hasDiag) + if (withDiag) { - diagPtr_ = new scalarField(is); + diagPtr_ = std::make_unique<scalarField>(is); } - if (hasUp) + if (withUpper) { - upperPtr_ = new scalarField(is); + upperPtr_ = std::make_unique<scalarField>(is); } } -Foam::lduMatrix::~lduMatrix() -{ - if (lowerPtr_) - { - delete lowerPtr_; - } +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +Foam::word Foam::lduMatrix::matrixTypeName() const +{ if (diagPtr_) { - delete diagPtr_; + return + ( + (!upperPtr_) + ? (!lowerPtr_ ? "diagonal" : "diagonal-lower") + : (!lowerPtr_ ? "symmetric" : "asymmetric") + ); } - if (upperPtr_) - { - delete upperPtr_; - } + // is empty (or just wrong) + return (!upperPtr_ && !lowerPtr_ ? "empty" : "ill-defined"); } -Foam::scalarField& Foam::lduMatrix::lower() +const Foam::scalarField& Foam::lduMatrix::diag() const { - if (!lowerPtr_) + if (!diagPtr_) { - if (upperPtr_) - { - lowerPtr_ = new scalarField(*upperPtr_); - } - else - { - lowerPtr_ = new scalarField(lduAddr().lowerAddr().size(), Zero); - } + FatalErrorInFunction + << "diagPtr_ unallocated" + << abort(FatalError); } - return *lowerPtr_; + return *diagPtr_; } @@ -205,71 +184,87 @@ Foam::scalarField& Foam::lduMatrix::diag() { if (!diagPtr_) { - diagPtr_ = new scalarField(lduAddr().size(), Zero); + diagPtr_ = + std::make_unique<scalarField>(lduAddr().size(), Foam::zero{}); } return *diagPtr_; } -Foam::scalarField& Foam::lduMatrix::upper() +Foam::scalarField& Foam::lduMatrix::diag(label size) { - if (!upperPtr_) + if (!diagPtr_) { - if (lowerPtr_) - { - upperPtr_ = new scalarField(*lowerPtr_); - } - else - { - upperPtr_ = new scalarField(lduAddr().lowerAddr().size(), Zero); - } + // if (size < 0) + // { + // size = lduAddr().size(); + // } + diagPtr_ = std::make_unique<scalarField>(size, Foam::zero{}); } - return *upperPtr_; + return *diagPtr_; } -Foam::scalarField& Foam::lduMatrix::lower(const label nCoeffs) +const Foam::scalarField& Foam::lduMatrix::upper() const { - if (!lowerPtr_) + if (upperPtr_) { - if (upperPtr_) - { - lowerPtr_ = new scalarField(*upperPtr_); - } - else + return *upperPtr_; + } + else + { + if (!lowerPtr_) { - lowerPtr_ = new scalarField(nCoeffs, Zero); + FatalErrorInFunction + << "lowerPtr_ and upperPtr_ unallocated" + << abort(FatalError); } - } - return *lowerPtr_; + return *lowerPtr_; + } } -Foam::scalarField& Foam::lduMatrix::diag(const label size) +Foam::scalarField& Foam::lduMatrix::upper() { - if (!diagPtr_) + if (!upperPtr_) { - diagPtr_ = new scalarField(size, Zero); + if (lowerPtr_) + { + upperPtr_ = std::make_unique<scalarField>(*lowerPtr_); + } + else + { + upperPtr_ = + std::make_unique<scalarField> + ( + lduAddr().lowerAddr().size(), + Foam::zero{} + ); + } } - return *diagPtr_; + return *upperPtr_; } -Foam::scalarField& Foam::lduMatrix::upper(const label nCoeffs) +Foam::scalarField& Foam::lduMatrix::upper(label nCoeffs) { if (!upperPtr_) { if (lowerPtr_) { - upperPtr_ = new scalarField(*lowerPtr_); + upperPtr_ = std::make_unique<scalarField>(*lowerPtr_); } else { - upperPtr_ = new scalarField(nCoeffs, Zero); + // if (nCoeffs < 0) + // { + // nCoeffs = lduAddr().lowerAddr().size(); + // } + upperPtr_ = std::make_unique<scalarField>(nCoeffs, Foam::zero{}); } } @@ -279,54 +274,67 @@ Foam::scalarField& Foam::lduMatrix::upper(const label nCoeffs) const Foam::scalarField& Foam::lduMatrix::lower() const { - if (!lowerPtr_ && !upperPtr_) - { - FatalErrorInFunction - << "lowerPtr_ or upperPtr_ unallocated" - << abort(FatalError); - } - if (lowerPtr_) { return *lowerPtr_; } else { + if (!upperPtr_) + { + FatalErrorInFunction + << "lowerPtr_ and upperPtr_ unallocated" + << abort(FatalError); + } + return *upperPtr_; } } -const Foam::scalarField& Foam::lduMatrix::diag() const +Foam::scalarField& Foam::lduMatrix::lower() { - if (!diagPtr_) + if (!lowerPtr_) { - FatalErrorInFunction - << "diagPtr_ unallocated" - << abort(FatalError); + if (upperPtr_) + { + lowerPtr_ = std::make_unique<scalarField>(*upperPtr_); + } + else + { + lowerPtr_ = + std::make_unique<scalarField> + ( + lduAddr().lowerAddr().size(), + Foam::zero{} + ); + } } - return *diagPtr_; + return *lowerPtr_; } -const Foam::scalarField& Foam::lduMatrix::upper() const +Foam::scalarField& Foam::lduMatrix::lower(label nCoeffs) { - if (!lowerPtr_ && !upperPtr_) + if (!lowerPtr_) { - FatalErrorInFunction - << "lowerPtr_ or upperPtr_ unallocated" - << abort(FatalError); + if (upperPtr_) + { + lowerPtr_ = std::make_unique<scalarField>(*upperPtr_); + } + else + { + // if (nCoeffs < 0) + // { + // nCoeffs = lduAddr().lowerAddr().size(); + // } + lowerPtr_ = + std::make_unique<scalarField>(nCoeffs, Foam::zero{}); + } } - if (upperPtr_) - { - return *upperPtr_; - } - else - { - return *lowerPtr_; - } + return *lowerPtr_; } @@ -377,28 +385,25 @@ void Foam::lduMatrix::setResidualField // * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * // -Foam::Ostream& Foam::operator<<(Ostream& os, const lduMatrix& ldum) +Foam::Ostream& Foam::operator<<(Ostream& os, const lduMatrix& mat) { - Switch hasLow = ldum.hasLower(); - Switch hasDiag = ldum.hasDiag(); - Switch hasUp = ldum.hasUpper(); + os << mat.hasLower() << token::SPACE + << mat.hasDiag() << token::SPACE + << mat.hasUpper() << token::SPACE; - os << hasLow << token::SPACE << hasDiag << token::SPACE - << hasUp << token::SPACE; - - if (hasLow) + if (mat.hasLower()) { - os << ldum.lower(); + os << mat.lower(); } - if (hasDiag) + if (mat.hasDiag()) { - os << ldum.diag(); + os << mat.diag(); } - if (hasUp) + if (mat.hasUpper()) { - os << ldum.upper(); + os << mat.upper(); } os.check(FUNCTION_NAME); @@ -413,54 +418,50 @@ Foam::Ostream& Foam::operator<< const InfoProxy<lduMatrix>& iproxy ) { - const auto& ldum = *iproxy; - - Switch hasLow = ldum.hasLower(); - Switch hasDiag = ldum.hasDiag(); - Switch hasUp = ldum.hasUpper(); + const auto& mat = *iproxy; - os << "Lower:" << hasLow - << " Diag:" << hasDiag - << " Upper:" << hasUp << endl; + os << "Lower:" << Switch::name(mat.hasLower()) + << " Diag:" << Switch::name(mat.hasDiag()) + << " Upper:" << Switch::name(mat.hasUpper()) << endl; - if (hasLow) + if (mat.hasLower()) { - os << "lower:" << ldum.lower().size() << endl; + os << "lower:" << mat.lower().size() << endl; } - if (hasDiag) + if (mat.hasDiag()) { - os << "diag :" << ldum.diag().size() << endl; + os << "diag :" << mat.diag().size() << endl; } - if (hasUp) + if (mat.hasUpper()) { - os << "upper:" << ldum.upper().size() << endl; + os << "upper:" << mat.upper().size() << endl; } - //if (hasLow) + //if (hasLower) //{ // os << "lower contents:" << endl; - // forAll(ldum.lower(), i) + // forAll(mat.lower(), i) // { - // os << "i:" << i << "\t" << ldum.lower()[i] << endl; + // os << "i:" << i << "\t" << mat.lower()[i] << endl; // } // os << endl; //} //if (hasDiag) //{ // os << "diag contents:" << endl; - // forAll(ldum.diag(), i) + // forAll(mat.diag(), i) // { - // os << "i:" << i << "\t" << ldum.diag()[i] << endl; + // os << "i:" << i << "\t" << mat.diag()[i] << endl; // } // os << endl; //} - //if (hasUp) + //if (hasUpper) //{ // os << "upper contents:" << endl; - // forAll(ldum.upper(), i) + // forAll(mat.upper(), i) // { - // os << "i:" << i << "\t" << ldum.upper()[i] << endl; + // os << "i:" << i << "\t" << mat.upper()[i] << endl; // } // os << endl; //} diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H index e13bb4cd05764a1561598805afbaa48c99372b00..a4dd1b0601732f8457b896258cc32025dcb2e88a 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H +++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,13 +57,14 @@ SourceFiles #include "primitiveFieldsFwd.H" #include "FieldField.H" #include "lduInterfaceFieldPtrsList.H" +#include "solverPerformance.H" #include "typeInfo.H" #include "autoPtr.H" #include "runTimeSelectionTables.H" -#include "solverPerformance.H" #include "InfoProxy.H" #include "Enum.H" #include "profilingTrigger.H" +#include <functional> // For reference_wrapper // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -89,8 +90,14 @@ class lduMatrix //const lduMesh& lduMesh_; std::reference_wrapper<const lduMesh> lduMesh_; - //- Coefficients (not including interfaces) - scalarField *lowerPtr_, *diagPtr_, *upperPtr_; + //- Diagonal coefficients + std::unique_ptr<scalarField> diagPtr_; + + //- Off-diagonal coefficients (not including interfaces) + std::unique_ptr<scalarField> lowerPtr_; + + //- Off-diagonal coefficients (not including interfaces) + std::unique_ptr<scalarField> upperPtr_; public: @@ -115,6 +122,7 @@ public: static const scalar defaultTolerance; + // ----------------------------------------------------------------------- //- Abstract base-class for lduMatrix solvers class solver { @@ -331,6 +339,7 @@ public: }; + // ----------------------------------------------------------------------- //- Abstract base-class for lduMatrix smoothers class smoother { @@ -478,6 +487,7 @@ public: }; + // ----------------------------------------------------------------------- //- Abstract base-class for lduMatrix preconditioners class preconditioner { @@ -582,6 +592,8 @@ public: }; + // ----------------------------------------------------------------------- + // Static Data // Declare name of the class and its debug switch @@ -590,101 +602,101 @@ public: // Constructors - //- Construct given an LDU addressed mesh. - // The coefficients are initially empty for subsequent setting. - lduMatrix(const lduMesh&); + //- Construct (without coefficients) for an LDU addressed mesh. + // Not yet 'explicit' (legacy code may rely on implicit construct) + lduMatrix(const lduMesh& mesh); - //- Construct as copy + //- Copy construct lduMatrix(const lduMatrix&); + //- Move construct + lduMatrix(lduMatrix&&); + //- Construct as copy or re-use as specified. lduMatrix(lduMatrix&, bool reuse); //- Construct given an LDU addressed mesh and an Istream //- from which the coefficients are read - lduMatrix(const lduMesh&, Istream&); + lduMatrix(const lduMesh& mesh, Istream& is); //- Destructor - ~lduMatrix(); + ~lduMatrix() = default; // Member Functions - // Access to addressing + // Addressing - //- Return the LDU mesh from which the addressing is obtained - const lduMesh& mesh() const noexcept - { - return lduMesh_; - } + //- Return the LDU mesh from which the addressing is obtained + const lduMesh& mesh() const noexcept + { + return lduMesh_; + } - //- Set the LDU mesh containing the addressing is obtained - void setLduMesh(const lduMesh& m) - { - lduMesh_ = m; - } + //- Set the LDU mesh containing the addressing + void setLduMesh(const lduMesh& m) + { + lduMesh_ = m; + } - //- Return the LDU addressing - const lduAddressing& lduAddr() const - { - return mesh().lduAddr(); - } + //- Return the LDU addressing + const lduAddressing& lduAddr() const + { + return mesh().lduAddr(); + } - //- Return the patch evaluation schedule - const lduSchedule& patchSchedule() const - { - return lduAddr().patchSchedule(); - } + //- Return the patch evaluation schedule + const lduSchedule& patchSchedule() const + { + return mesh().lduAddr().patchSchedule(); + } - // Access to coefficients + // Coefficients - scalarField& lower(); - scalarField& diag(); - scalarField& upper(); + const scalarField& diag() const; + const scalarField& upper() const; + const scalarField& lower() const; - // Size with externally provided sizes (for constructing with 'fake' - // mesh in GAMG) + scalarField& diag(); + scalarField& upper(); + scalarField& lower(); - scalarField& lower(const label size); - scalarField& diag(const label nCoeffs); - scalarField& upper(const label nCoeffs); + // Size with externally provided sizes + // (for constructing with 'fake' mesh in GAMG) + scalarField& diag(label size); + scalarField& upper(label nCoeffs); + scalarField& lower(label nCoeffs); - const scalarField& lower() const; - const scalarField& diag() const; - const scalarField& upper() const; - bool hasDiag() const noexcept - { - return (diagPtr_); - } + // Characteristics - bool hasUpper() const noexcept - { - return (upperPtr_); - } + //- The matrix type (empty, diagonal, symmetric, ...) + word matrixTypeName() const; - bool hasLower() const noexcept - { - return (lowerPtr_); - } + bool hasDiag() const noexcept { return bool(diagPtr_); } + bool hasUpper() const noexcept { return bool(upperPtr_); } + bool hasLower() const noexcept { return bool(lowerPtr_); } - bool diagonal() const noexcept - { - return (diagPtr_ && !lowerPtr_ && !upperPtr_); - } + //- Matrix has diagonal only + bool diagonal() const noexcept + { + return (diagPtr_ && !lowerPtr_ && !upperPtr_); + } - bool symmetric() const noexcept - { - return (diagPtr_ && (!lowerPtr_ && upperPtr_)); - } + //- Matrix is symmetric + bool symmetric() const noexcept + { + return (diagPtr_ && !lowerPtr_ && upperPtr_); + } - bool asymmetric() const noexcept - { - return (diagPtr_ && lowerPtr_ && upperPtr_); - } + //- Matrix is asymmetric (ie, full) + bool asymmetric() const noexcept + { + return (diagPtr_ && lowerPtr_ && upperPtr_); + } // Operations @@ -801,8 +813,12 @@ public: // Member Operators + //- Copy assignment void operator=(const lduMatrix&); + //- Move assignment + void operator=(lduMatrix&&); + void negate(); void operator+=(const lduMatrix&); diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixOperations.C b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixOperations.C index 4d307f57100f385789528a2a34001fa70f0f4217..1e83a03c75b85e8d277ed75820bfc21bca41861a 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixOperations.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixOperations.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,7 +86,7 @@ void Foam::lduMatrix::sumMagOffDiag } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // void Foam::lduMatrix::operator=(const lduMatrix& A) { @@ -95,38 +95,49 @@ void Foam::lduMatrix::operator=(const lduMatrix& A) return; // Self-assignment is a no-op } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = A.lower(); } - else if (lowerPtr_) + else { - delete lowerPtr_; - lowerPtr_ = nullptr; + lowerPtr_.reset(nullptr); } - if (A.upperPtr_) + if (A.hasUpper()) { upper() = A.upper(); } - else if (upperPtr_) + else { - delete upperPtr_; - upperPtr_ = nullptr; + upperPtr_.reset(nullptr); } - if (A.diagPtr_) + if (A.hasDiag()) { diag() = A.diag(); } } +void Foam::lduMatrix::operator=(lduMatrix&& A) +{ + if (this == &A) + { + return; // Self-assignment is a no-op + } + + diagPtr_ = std::move(A.diagPtr_); + upperPtr_ = std::move(A.upperPtr_); + lowerPtr_ = std::move(A.lowerPtr_); +} + + void Foam::lduMatrix::negate() { - if (lowerPtr_) + if (diagPtr_) { - lowerPtr_->negate(); + diagPtr_->negate(); } if (upperPtr_) @@ -134,16 +145,16 @@ void Foam::lduMatrix::negate() upperPtr_->negate(); } - if (diagPtr_) + if (lowerPtr_) { - diagPtr_->negate(); + lowerPtr_->negate(); } } void Foam::lduMatrix::operator+=(const lduMatrix& A) { - if (A.diagPtr_) + if (A.hasDiag()) { diag() += A.diag(); } @@ -168,7 +179,7 @@ void Foam::lduMatrix::operator+=(const lduMatrix& A) } else if (asymmetric() && A.symmetric()) { - if (A.upperPtr_) + if (A.hasUpper()) { lower() += A.upper(); upper() += A.upper(); @@ -187,12 +198,12 @@ void Foam::lduMatrix::operator+=(const lduMatrix& A) } else if (diagonal()) { - if (A.upperPtr_) + if (A.hasUpper()) { upper() = A.upper(); } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = A.lower(); } @@ -206,15 +217,8 @@ void Foam::lduMatrix::operator+=(const lduMatrix& A) { WarningInFunction << "Unknown matrix type combination" << nl - << " this :" - << " diagonal:" << diagonal() - << " symmetric:" << symmetric() - << " asymmetric:" << asymmetric() << nl - << " A :" - << " diagonal:" << A.diagonal() - << " symmetric:" << A.symmetric() - << " asymmetric:" << A.asymmetric() - << endl; + << " this : " << this->matrixTypeName() + << " A : " << A.matrixTypeName() << endl; } } } @@ -247,7 +251,7 @@ void Foam::lduMatrix::operator-=(const lduMatrix& A) } else if (asymmetric() && A.symmetric()) { - if (A.upperPtr_) + if (A.hasUpper()) { lower() -= A.upper(); upper() -= A.upper(); @@ -266,12 +270,12 @@ void Foam::lduMatrix::operator-=(const lduMatrix& A) } else if (diagonal()) { - if (A.upperPtr_) + if (A.hasUpper()) { upper() = -A.upper(); } - if (A.lowerPtr_) + if (A.hasLower()) { lower() = -A.lower(); } @@ -285,15 +289,8 @@ void Foam::lduMatrix::operator-=(const lduMatrix& A) { WarningInFunction << "Unknown matrix type combination" << nl - << " this :" - << " diagonal:" << diagonal() - << " symmetric:" << symmetric() - << " asymmetric:" << asymmetric() << nl - << " A :" - << " diagonal:" << A.diagonal() - << " symmetric:" << A.symmetric() - << " asymmetric:" << A.asymmetric() - << endl; + << " this : " << this->matrixTypeName() + << " A : " << A.matrixTypeName() << endl; } } } diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTemplates.C b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTemplates.C index cafd283abb9bff4d5ff3e9890bc5f0f52e0aaaf7..ed7eb4d260be9f3831f8a7a99766ce30895aad05 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTemplates.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTemplates.C @@ -35,7 +35,7 @@ Description template<class Type> Foam::tmp<Foam::Field<Type>> Foam::lduMatrix::H(const Field<Type>& psi) const { - auto tHpsi = tmp<Field<Type>>::New(lduAddr().size(), Zero); + auto tHpsi = tmp<Field<Type>>::New(lduAddr().size(), Foam::zero{}); if (lowerPtr_ || upperPtr_) { diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixUpdateMatrixInterfaces.C b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixUpdateMatrixInterfaces.C index b7434b7e1afee47c265011066119d000ccb6bc90..6b4f48dc36873a775c95c46b3ca70e1888fb60fd 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixUpdateMatrixInterfaces.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixUpdateMatrixInterfaces.C @@ -44,7 +44,7 @@ void Foam::lduMatrix::initMatrixInterfaces if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { @@ -90,7 +90,7 @@ void Foam::lduMatrix::initMatrixInterfaces psiif, coupleCoeffs[interfacei], cmpt, - UPstream::commsTypes::blocking + UPstream::commsTypes::buffered ); } } @@ -229,7 +229,7 @@ void Foam::lduMatrix::updateMatrixInterfaces if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { @@ -241,7 +241,7 @@ void Foam::lduMatrix::updateMatrixInterfaces } // Check/no-check for updatedMatrix() ? - const bool noCheck = (commsType == UPstream::commsTypes::blocking); + const bool noCheck = (commsType == UPstream::commsTypes::buffered); // Consume anything still outstanding forAll(interfaces, interfacei) @@ -326,7 +326,7 @@ void Foam::lduMatrix::updateMatrixInterfaces psiif, coupleCoeffs[interfacei], cmpt, - UPstream::commsTypes::blocking + UPstream::commsTypes::buffered ); } } diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.C index b6b6291552d2056c3f5cb42c413bb247be19ca62..304e524ecd81a366dea0a5489eec83285c5c6502 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -243,7 +243,7 @@ Foam::GAMGAgglomeration::GAMGAgglomeration const dictionary& controlDict ) : - MeshObject<lduMesh, Foam::GeometricMeshObject, GAMGAgglomeration>(mesh), + MeshObject_type(mesh), maxLevels_(50), @@ -348,7 +348,7 @@ const Foam::GAMGAgglomeration& Foam::GAMGAgglomeration::New { agglomPtr().printLevels(); } - return store(agglomPtr.ptr()); + return regIOobject::store(agglomPtr); } } @@ -398,7 +398,7 @@ const Foam::GAMGAgglomeration& Foam::GAMGAgglomeration::New { agglomPtr().printLevels(); } - return store(agglomPtr.ptr()); + return regIOobject::store(agglomPtr); } } } @@ -463,7 +463,7 @@ const Foam::GAMGAgglomeration& Foam::GAMGAgglomeration::New { agglomPtr().printLevels(); } - return store(agglomPtr.ptr()); + return regIOobject::store(agglomPtr); } } diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.H b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.H index 65112a50d992eb9b50e32a6bd777592d582e6c27..8fdd75235f38246a03efd45738e0a7723680d8f4 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.H +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGAgglomerations/GAMGAgglomeration/GAMGAgglomeration.H @@ -67,9 +67,19 @@ class GAMGAgglomeration : public MeshObject<lduMesh, GeometricMeshObject, GAMGAgglomeration> { + // Private Typedefs + + typedef MeshObject + < + lduMesh, + GeometricMeshObject, + GAMGAgglomeration + > MeshObject_type; + + protected: - // Protected data + // Protected Data //- Max number of levels const label maxLevels_; diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGProcAgglomerations/GAMGProcAgglomeration/GAMGProcAgglomeration.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGProcAgglomerations/GAMGProcAgglomeration/GAMGProcAgglomeration.C index 519e5f9ef5b642734d09ee0444f2e3452db67397..5d49a1bbeb38e14aade60aa091672b15d341baf8 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGProcAgglomerations/GAMGProcAgglomeration/GAMGProcAgglomeration.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGProcAgglomerations/GAMGProcAgglomeration/GAMGProcAgglomeration.C @@ -127,7 +127,7 @@ Foam::labelListList Foam::GAMGProcAgglomeration::globalCellCells const lduAddressing& addr = mesh.lduAddr(); lduInterfacePtrsList interfaces = mesh.interfaces(); - const label myProcID = UPstream::myProcNo(mesh.comm()); + const label myProci = UPstream::myProcNo(mesh.comm()); const globalIndex globalNumbering ( @@ -138,11 +138,7 @@ Foam::labelListList Foam::GAMGProcAgglomeration::globalCellCells const labelList globalIndices ( - identity - ( - globalNumbering.localSize(myProcID), - globalNumbering.localStart(myProcID) - ) + Foam::identity(globalNumbering.range(myProci)) ); // Get the interface cells diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.C index d11a9478bb48b26f51c26ab703e1898b5df02b73..c70c8242e1c5aae4e3362de23b4dff144daaed4c 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.C @@ -121,16 +121,22 @@ Foam::GAMGSolver::GAMGSolver ( dummyPrimMeshInterfaces.size() ); + + OCharStream os(IOstreamOption::BINARY); + ISpanStream is(IOstreamOption::BINARY); + forAll(fineMeshInterfaces, intI) { if (fineMeshInterfaces.set(intI)) { - OStringStream os(IOstreamOption::BINARY); + os.rewind(); + refCast<const GAMGInterface> ( fineMeshInterfaces[intI] ).write(os); - IStringStream is(os.str(), IOstreamOption::BINARY); + + is.reset(os.view()); dummyPrimMeshInterfaces.set ( diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorCyclicGAMGInterfaceField/processorCyclicGAMGInterfaceField.H b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorCyclicGAMGInterfaceField/processorCyclicGAMGInterfaceField.H index 376631dd7d24a8bd14b443060f4f6d5332bb3ddd..5096b8cfbbb589f5ac065928bc327399eca13bb2 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorCyclicGAMGInterfaceField/processorCyclicGAMGInterfaceField.H +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorCyclicGAMGInterfaceField/processorCyclicGAMGInterfaceField.H @@ -102,7 +102,7 @@ public: ) const { NotImplemented; - return autoPtr<GAMGInterfaceField>(nullptr); + return nullptr; } diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/smoothSolver/smoothSolver.C b/src/OpenFOAM/matrices/lduMatrix/solvers/smoothSolver/smoothSolver.C index 1c25d08ccba87939071be3f4ab529a985f6c2dd2..127d20d7ac25fc07875ae8f0f2074483a4354e18 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/smoothSolver/smoothSolver.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/smoothSolver/smoothSolver.C @@ -95,7 +95,7 @@ Foam::solverPerformance Foam::smoothSolver::solve // If the nSweeps_ is negative do a fixed number of sweeps if (nSweeps_ < 0) { - addProfiling(solve, "lduMatrix::smoother." + fieldName_); + addProfiling(solve, "lduMatrix::smoother.", fieldName_); autoPtr<lduMatrix::smoother> smootherPtr = lduMatrix::smoother::New ( @@ -163,7 +163,7 @@ Foam::solverPerformance Foam::smoothSolver::solve || !solverPerf.checkConvergence(tolerance_, relTol_, log_) ) { - addProfiling(solve, "lduMatrix::smoother." + fieldName_); + addProfiling(solve, "lduMatrix::smoother.", fieldName_); autoPtr<lduMatrix::smoother> smootherPtr = lduMatrix::smoother::New ( diff --git a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C index 39d3cc37b50ce5b88f5362489809e55162e5bed0..1bd42a36080dad51a0be66547ee16e168659252a 100644 --- a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C +++ b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,17 +49,20 @@ void Foam::LUDecompose label& sign ) { - label m = matrix.m(); - scalar vv[m]; + const label size = matrix.m(); + + pivotIndices.resize_nocopy(size); + + List<scalar> vv(size); sign = 1; - for (label i = 0; i < m; ++i) + for (label i = 0; i < size; ++i) { scalar largestCoeff = 0.0; scalar temp; const scalar* __restrict__ matrixi = matrix[i]; - for (label j = 0; j < m; ++j) + for (label j = 0; j < size; ++j) { if ((temp = mag(matrixi[j])) > largestCoeff) { @@ -75,7 +79,7 @@ void Foam::LUDecompose vv[i] = 1.0/largestCoeff; } - for (label j = 0; j < m; ++j) + for (label j = 0; j < size; ++j) { scalar* __restrict__ matrixj = matrix[j]; @@ -94,7 +98,7 @@ void Foam::LUDecompose label iMax = 0; scalar largestCoeff = 0.0; - for (label i = j; i < m; ++i) + for (label i = j; i < size; ++i) { scalar* __restrict__ matrixi = matrix[i]; scalar sum = matrixi[j]; @@ -120,7 +124,7 @@ void Foam::LUDecompose { scalar* __restrict__ matrixiMax = matrix[iMax]; - for (label k = 0; k < m; ++k) + for (label k = 0; k < size; ++k) { std::swap(matrixj[k], matrixiMax[k]); } @@ -134,11 +138,11 @@ void Foam::LUDecompose matrixj[j] = SMALL; } - if (j != m-1) + if (j != size-1) { scalar rDiag = 1.0/matrixj[j]; - for (label i = j + 1; i < m; ++i) + for (label i = j + 1; i < size; ++i) { matrix(i, j) *= rDiag; } @@ -150,7 +154,7 @@ void Foam::LUDecompose void Foam::LUDecompose(scalarSymmetricSquareMatrix& matrix) { // Store result in upper triangular part of matrix - label size = matrix.m(); + const label size = matrix.m(); // Set upper triangular parts to zero. for (label j = 0; j < size; ++j) @@ -223,7 +227,7 @@ void Foam::multiply << abort(FatalError); } - ans = scalarRectangularMatrix(A.m(), C.n(), Zero); + ans = scalarRectangularMatrix(A.m(), C.n(), Foam::zero{}); for (label i = 0; i < A.m(); ++i) { diff --git a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.H b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.H index d6ba156a2bcaa6479fd82f12d9c12415ca39f3a8..8035cdfebfe01854b606a7c68fec852a3e5c53bd 100644 --- a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.H +++ b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.H @@ -74,19 +74,21 @@ void solve const List<Type>& source ); -//- LU decompose the matrix with pivoting +//- LU decompose the matrix with pivoting. void LUDecompose ( scalarSquareMatrix& matrix, + //! [out] size is adjusted as required labelList& pivotIndices ); //- LU decompose the matrix with pivoting. -//- sign is -1 for odd number of row interchanges and 1 for even number. void LUDecompose ( scalarSquareMatrix& matrix, + //! [out] size is adjusted as required labelList& pivotIndices, + //! [out] is -1 for odd number of row interchanges and 1 for even number label& sign ); diff --git a/src/OpenFOAM/matrices/scalarMatrices/scalarMatricesTemplates.C b/src/OpenFOAM/matrices/scalarMatrices/scalarMatricesTemplates.C index 0c3ae682287d35e9666a09d32407975a65780643..7a66cbe6d3459f5bdeef62d2cb0649dd655053f2 100644 --- a/src/OpenFOAM/matrices/scalarMatrices/scalarMatricesTemplates.C +++ b/src/OpenFOAM/matrices/scalarMatrices/scalarMatricesTemplates.C @@ -216,7 +216,7 @@ void Foam::LUsolve List<Type>& sourceSol ) { - labelList pivotIndices(matrix.m()); + labelList pivotIndices; LUDecompose(matrix, pivotIndices); LUBacksubstitute(matrix, pivotIndices, sourceSol); } diff --git a/src/OpenFOAM/matrices/solution/solution.C b/src/OpenFOAM/matrices/solution/solution.C index 27b0eac1df3d9d2bcedde7d96f7e0cba7ec705b6..401b35393e787b8b71d747b0ee65539d81d9b690 100644 --- a/src/OpenFOAM/matrices/solution/solution.C +++ b/src/OpenFOAM/matrices/solution/solution.C @@ -36,6 +36,7 @@ License namespace Foam { defineDebugSwitchWithName(solution, "solution", 0); + registerDebugSwitchWithName(solution, solution, "solution"); } // List of sub-dictionaries to rewrite @@ -106,26 +107,28 @@ void Foam::solution::read(const dictionary& dict) fieldRelaxDefault_ = Function1<scalar>::NewIfPresent ( "default", - fieldRelaxDict_ + fieldRelaxDict_, + &db() ); if (!fieldRelaxDefault_) { fieldRelaxDefault_.reset ( - new Function1Types::Constant<scalar>("default", 0) + new Function1Types::Constant<scalar>("default", 0, &db()) ); } eqnRelaxDefault_ = Function1<scalar>::NewIfPresent ( "default", - eqnRelaxDict_ + eqnRelaxDict_, + &db() ); if (!eqnRelaxDefault_) { eqnRelaxDefault_.reset ( - new Function1Types::Constant<scalar>("default", 0) + new Function1Types::Constant<scalar>("default", 0, &db()) ); } @@ -239,7 +242,7 @@ Foam::label Foam::solution::upgradeSolverDict // recast primitive entries into dictionary entries for (const entry& dEntry : dict) { - if (!dEntry.isDict()) + if (dEntry.isStream()) { ITstream& is = dEntry.stream(); word name(is); @@ -254,11 +257,12 @@ Foam::label Foam::solution::upgradeSolverDict // transform primitiveEntry with settings -> dictionaryEntry for (const word& dictName : subDictNames) { - entry* eptr = subdict.findEntry(dictName, keyType::LITERAL); + ITstream* streamPtr = + subdict.findStream(dictName, keyType::LITERAL); - if (eptr && !eptr->isDict()) + if (streamPtr) { - ITstream& is = eptr->stream(); + auto& is = *streamPtr; is >> name; if (!is.eof()) @@ -341,18 +345,33 @@ bool Foam::solution::relaxField(const word& name, scalar& factor) const fieldRelaxCache_, // cache name, fieldRelaxDict_, - keyType::REGEX + keyType::REGEX, + &db() )().value(time().timeOutputValue()); + DebugInfo + << "Field relaxation factor for " << name + << " is " << factor + << " (from Function1)" << endl; + return true; } else if (fieldRelaxDict_.found("default") && fieldRelaxDefault_) { factor = fieldRelaxDefault_->value(time().timeOutputValue()); + + DebugInfo + << "Field relaxation factor for " << name + << " is " << factor + << " (from default " << eqnRelaxDefault_->type() << ')' << endl; + return true; } // Fallthrough - nothing found + + DebugInfo<< "No field relaxation factor for " << name << endl; + return false; } @@ -368,18 +387,33 @@ bool Foam::solution::relaxEquation(const word& name, scalar& factor) const eqnRelaxCache_, // cache name, eqnRelaxDict_, - keyType::REGEX + keyType::REGEX, + &db() )().value(time().timeOutputValue()); + DebugInfo + << "Equation relaxation factor for " << name + << " is " << factor + << " (from Function1)" << endl; + return true; } else if (eqnRelaxDict_.found("default") && eqnRelaxDefault_) { factor = eqnRelaxDefault_->value(time().timeOutputValue()); + + DebugInfo + << "Equation relaxation factor for " << name + << " is " << factor + << " (from default " << eqnRelaxDefault_->type() << ')' << endl; + return true; } // Fallthrough - nothing found + + DebugInfo<< "No equation relaxation factor for " << name << endl; + return false; } diff --git a/src/OpenFOAM/meshes/MeshObject/MeshObject.C b/src/OpenFOAM/meshes/MeshObject/MeshObject.C index 26bbf42e81a33220821171415e71f34b6c652a59..0551457350e3ef58fab1d28969b4889e8eb80ca6 100644 --- a/src/OpenFOAM/meshes/MeshObject/MeshObject.C +++ b/src/OpenFOAM/meshes/MeshObject/MeshObject.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -74,8 +74,8 @@ const Type& Foam::MeshObject<Mesh, MeshObjectType, Type>::New if (meshObject::debug) { Pout<< "MeshObject::New(const " << Mesh::typeName - << "&, ...) : constructing " << Type::typeName - << " for region " << mesh.name() << endl; + << "&, ...) : constructing <" << Type::typeName + << ">, region=" << mesh.name() << endl; } ptr = new Type(mesh, std::forward<Args>(args)...); @@ -108,9 +108,8 @@ const Type& Foam::MeshObject<Mesh, MeshObjectType, Type>::New { Pout<< "MeshObject::New('" << objName << "', const " << Mesh::typeName - << "&, ...) : constructing " << objName - << " of type " << Type::typeName - << " for region " << mesh.name() << endl; + << "&, ...) : constructing <" << Type::typeName + << ">, region=" << mesh.name() << endl; } ptr = new Type(objName, mesh, std::forward<Args>(args)...); @@ -138,8 +137,8 @@ bool Foam::MeshObject<Mesh, MeshObjectType, Type>::Delete { if (meshObject::debug) { - Pout<< "MeshObject::Delete(const Mesh&) : deleting " - << objName << endl; + Pout<< "MeshObject::Delete() : deleting <" << Type::typeName + << "> " << objName << endl; } return mesh.thisDb().checkOut(static_cast<MeshObjectType<Mesh>*>(ptr)); @@ -149,31 +148,114 @@ bool Foam::MeshObject<Mesh, MeshObjectType, Type>::Delete } +template<class Mesh, template<class> class MeshObjectType, class Type> +std::unique_ptr<Type> Foam::MeshObject<Mesh, MeshObjectType, Type>::Release +( + const word& objName, + const Mesh& mesh, + const bool checkout +) +{ + Type* ptr = + mesh.thisDb().objectRegistry::template + getObjectPtr<Type>(objName); + + std::unique_ptr<Type> released; + + if (ptr) + { + auto* casted = static_cast<MeshObjectType<Mesh>*>(ptr); + + if (casted->regIOobject::ownedByRegistry()) + { + // Release ownership from registry and transfer to unique_ptr + casted->regIOobject::release(); + released.reset(ptr); + + // Allow removal from the registry (ie, checkOut) but leave its + // 'registered' status untouched since this is equivalent to + // IOobject::registerObject(). + // + // Do not use regIOobject::release(unregister) since this + // will prevent later re-storing + + if (checkout) + { + casted->regIOobject::checkOut(); + } + } + + if (meshObject::debug) + { + Pout<< "MeshObject::Release() : release <" << Type::typeName + << "> " << objName << ", owned=" << bool(released) << endl; + } + } + + return released; +} + + +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +template<class Mesh, template<class> class MeshObjectType, class Type> +bool Foam::MeshObject<Mesh, MeshObjectType, Type>::Store +( + std::unique_ptr<Type>&& ptr +) +{ + bool ok = false; + + if (ptr) + { + auto* casted = static_cast<MeshObjectType<Mesh>*>(ptr.get()); + + ok = casted->regIOobject::store(); + + if (ok) + { + // Took ownership + (void) ptr.release(); + } + + if (meshObject::debug) + { + Pout<< "MeshObject::Store() : store <" << Type::typeName + << ">, owned=" << ok << endl; + } + } + + return ok; +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + template<class Mesh> void Foam::meshObject::movePoints(objectRegistry& obr) { - HashTable<GeometricMeshObject<Mesh>*> meshObjects + UPtrList<GeometricMeshObject<Mesh>> meshObjects ( - obr.lookupClass<GeometricMeshObject<Mesh>>() + obr.sorted<GeometricMeshObject<Mesh>>() ); if (meshObject::debug) { - Pout<< "meshObject::movePoints(objectRegistry&) :" - << " moving " << Mesh::typeName - << " meshObjects for region " << obr.name() << endl; + Pout<< "meshObject::movePoints() : moving " + << meshObjects.size() << " <" << Mesh::typeName + << "> meshObjects, region=" << obr.name() << endl; } - forAllIters(meshObjects, iter) + for (auto& item : meshObjects) { - // isA<MoveableMeshObject<Mesh>> - auto* objectPtr = dynamic_cast<MoveableMeshObject<Mesh>*>(*iter); + // isA_constCast<MoveableMeshObject<Mesh>> + auto* objectPtr = dynamic_cast<MoveableMeshObject<Mesh>*>(&item); if (objectPtr) { if (meshObject::debug) { - Pout<< " Moving " << (*iter)->name() << endl; + Pout<< " Moving " << item.name() << endl; } objectPtr->movePoints(); } @@ -181,9 +263,9 @@ void Foam::meshObject::movePoints(objectRegistry& obr) { if (meshObject::debug) { - Pout<< " Destroying " << (*iter)->name() << endl; + Pout<< " Destroying " << item.name() << endl; } - obr.checkOut(*iter); + obr.checkOut(item); } } } @@ -192,28 +274,28 @@ void Foam::meshObject::movePoints(objectRegistry& obr) template<class Mesh> void Foam::meshObject::updateMesh(objectRegistry& obr, const mapPolyMesh& mpm) { - HashTable<GeometricMeshObject<Mesh>*> meshObjects + UPtrList<GeometricMeshObject<Mesh>> meshObjects ( - obr.lookupClass<GeometricMeshObject<Mesh>>() + obr.sorted<GeometricMeshObject<Mesh>>() ); if (meshObject::debug) { - Pout<< "meshObject::updateMesh(objectRegistry&, " - "const mapPolyMesh& mpm) : updating " << Mesh::typeName - << " meshObjects for region " << obr.name() << endl; + Pout<< "meshObject::updateMesh() : updating " + << meshObjects.size() << " <" << Mesh::typeName + << "> meshObjects, region=" << obr.name() << endl; } - forAllIters(meshObjects, iter) + for (auto& item : meshObjects) { - // isA<UpdateableMeshObject<Mesh>> - auto* objectPtr = dynamic_cast<UpdateableMeshObject<Mesh>*>(*iter); + // isA_constCast<UpdateableMeshObject<Mesh>> + auto* objectPtr = dynamic_cast<UpdateableMeshObject<Mesh>*>(&item); if (objectPtr) { if (meshObject::debug) { - Pout<< " Updating " << (*iter)->name() << endl; + Pout<< " Updating " << item.name() << endl; } objectPtr->updateMesh(mpm); } @@ -221,9 +303,9 @@ void Foam::meshObject::updateMesh(objectRegistry& obr, const mapPolyMesh& mpm) { if (meshObject::debug) { - Pout<< " Destroying " << (*iter)->name() << endl; + Pout<< " Destroying " << item.name() << endl; } - obr.checkOut(*iter); + obr.checkOut(item); } } } @@ -232,25 +314,25 @@ void Foam::meshObject::updateMesh(objectRegistry& obr, const mapPolyMesh& mpm) template<class Mesh, template<class> class MeshObjectType> void Foam::meshObject::clear(objectRegistry& obr) { - HashTable<MeshObjectType<Mesh>*> meshObjects + UPtrList<MeshObjectType<Mesh>> meshObjects ( - obr.lookupClass<MeshObjectType<Mesh>>() + obr.sorted<MeshObjectType<Mesh>>() ); if (meshObject::debug) { - Pout<< "meshObject::clear(objectRegistry&) :" - << " clearing " << Mesh::typeName - << " meshObjects for region " << obr.name() << endl; + Pout<< "meshObject::clear() : clearing " + << meshObjects.size() << " <" << Mesh::typeName + << "> meshObjects, region=" << obr.name() << endl; } - forAllIters(meshObjects, iter) + for (auto& item : meshObjects) { if (meshObject::debug) { - Pout<< " Destroying " << (*iter)->name() << endl; + Pout<< " Destroying " << item.name() << endl; } - obr.checkOut(*iter); + obr.checkOut(item); } } @@ -263,30 +345,30 @@ template > void Foam::meshObject::clearUpto(objectRegistry& obr) { - HashTable<FromType<Mesh>*> meshObjects + UPtrList<FromType<Mesh>> meshObjects ( - obr.lookupClass<FromType<Mesh>>() + obr.sorted<FromType<Mesh>>() ); if (meshObject::debug) { - Pout<< "meshObject::clearUpto(objectRegistry&) :" - << " clearing " << Mesh::typeName - << " meshObjects for region " << obr.name() << endl; + Pout<< "meshObject::clearUpto() : clearing " + << meshObjects.size() << " <" << Mesh::typeName + << "> meshObjects, region=" << obr.name() << endl; } - forAllIters(meshObjects, iter) + for (auto& item : meshObjects) { - // isA<ToType<Mesh>> - auto* objectPtr = dynamic_cast<ToType<Mesh>*>(*iter); + // isA_constCast<ToType<Mesh>> + auto* objectPtr = dynamic_cast<ToType<Mesh>*>(&item); if (!objectPtr) { if (meshObject::debug) { - Pout<< " Destroying " << (*iter)->name() << endl; + Pout<< " Destroying " << item.name() << endl; } - obr.checkOut(*iter); + obr.checkOut(item); } } } diff --git a/src/OpenFOAM/meshes/MeshObject/MeshObject.H b/src/OpenFOAM/meshes/MeshObject/MeshObject.H index 11554ee3dac86bd40a6546bffa2014678d6988b3..a5d0577ade925e35af888515c04c54f073a247c5 100644 --- a/src/OpenFOAM/meshes/MeshObject/MeshObject.H +++ b/src/OpenFOAM/meshes/MeshObject/MeshObject.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,8 +34,9 @@ Description MeshObject is templated on the type of mesh it is allocated to, the type of the mesh object (TopologicalMeshObject, GeometricMeshObject, MoveableMeshObject, UpdateableMeshObject) and the type of the actual object - it is created for example: + it is created for. + Example usage, \verbatim class leastSquaresVectors : @@ -49,13 +50,15 @@ Description }; \endverbatim - MeshObject types: - - - TopologicalMeshObject: mesh object to be deleted on topology change - - GeometricMeshObject: mesh object to be deleted on geometry change - - MoveableMeshObject: mesh object to be updated in movePoints - - UpdateableMeshObject: mesh object to be updated in updateMesh or - movePoints + The MeshObject types: + - TopologicalMeshObject: + mesh object to be deleted on topology change + - GeometricMeshObject: + mesh object to be deleted on geometry change + - MoveableMeshObject: + mesh object to be updated in movePoints + - UpdateableMeshObject: + mesh object to be updated in movePoints or updateMesh Note movePoints must be provided for MeshObjects of type MoveableMeshObject @@ -82,6 +85,55 @@ namespace Foam // Forward Declarations class mapPolyMesh; +/*---------------------------------------------------------------------------*\ + Class meshObject Declaration +\*---------------------------------------------------------------------------*/ + +//- The meshObject is a concrete regIOobject to register MeshObject items +class meshObject +: + public regIOobject +{ +public: + + //- Runtime declaration and debug switch + ClassName("meshObject"); + + + // Constructors + + //- Construct with given object name on a registry + meshObject(const word& objName, const objectRegistry& obr); + + + // Static Member Functions + + //- Update for mesh motion + template<class Mesh> + static void movePoints(objectRegistry& obr); + + //- Update topology using the given map + template<class Mesh> + static void updateMesh(objectRegistry& obr, const mapPolyMesh& mpm); + + //- Clear/remove all meshObject of MeshObjectType + //- via objectRegistry::checkOut() + template<class Mesh, template<class> class MeshObjectType> + static void clear(objectRegistry& obr); + + //- Clear all meshObject derived from FromType up to + //- (but not including) ToType. + // Used to clear e.g. all non-updateable meshObjects + template + < + class Mesh, + template<class> class FromType, + template<class> class ToType + > + static void clearUpto(objectRegistry& obr); +}; + + /*---------------------------------------------------------------------------*\ Class MeshObject Declaration \*---------------------------------------------------------------------------*/ @@ -108,14 +160,17 @@ public: MeshObject(const word& objName, const Mesh& mesh); + //- Destructor + virtual ~MeshObject() = default; + + // Factory Methods - //- Get existing or create a new MeshObject. Registered with typeName + //- Get existing or create MeshObject registered with typeName template<class... Args> static const Type& New(const Mesh& mesh, Args&&... args); - //- Get existing or create a new MeshObject using supplied - //- registration name + //- Get existing or create MeshObject with given registration name template<class... Args> static const Type& New ( @@ -124,11 +179,10 @@ public: Args&&... args ); + //- Transfer ownership of meshObject to registry. + static bool Store(std::unique_ptr<Type>&& ptr); - //- Destructor - virtual ~MeshObject() = default; - - //- Static destructor using supplied registration name + //- Static destructor using given registration name static bool Delete(const word& objName, const Mesh& mesh); //- Static destructor using Type::typeName @@ -137,6 +191,29 @@ public: return Delete(Type::typeName, mesh); } + //- Release ownership of meshObject (with given registration name) + //- from registry. Returns nullptr if not found or not owned. + static std::unique_ptr<Type> Release + ( + const word& objName, + const Mesh& mesh, + //! optionally perform checkOut() from the registry + const bool checkout = false + ); + + + //- Release ownership of meshObject (with Type::typeName name) + //- from registry. + static std::unique_ptr<Type> Release + ( + const Mesh& mesh, + //! optionally perform checkOut() from the registry + const bool checkout = false + ) + { + return Release(Type::typeName, mesh, checkout); + } + // Member Functions @@ -154,51 +231,6 @@ public: }; -/*---------------------------------------------------------------------------*\ - Class meshObject Declaration -\*---------------------------------------------------------------------------*/ - -//- The meshObject is a concrete regIOobject -class meshObject -: - public regIOobject -{ -public: - - //- Runtime declaration and debug switch - ClassName("meshObject"); - - - // Constructors - - //- Construct with given object name on a registry - meshObject(const word& objName, const objectRegistry& obr); - - - // Static Member Functions - - template<class Mesh> - static void movePoints(objectRegistry& obr); - - template<class Mesh> - static void updateMesh(objectRegistry& obr, const mapPolyMesh& mpm); - - template<class Mesh, template<class> class MeshObjectType> - static void clear(objectRegistry& obr); - - //- Clear all meshObject derived from FromType up to - //- (but not including) ToType. - // Used to clear e.g. all non-updateable meshObjects - template - < - class Mesh, - template<class> class FromType, - template<class> class ToType - > - static void clearUpto(objectRegistry& obr); -}; - - /*---------------------------------------------------------------------------*\ Class TopologicalMeshObject Declaration \*---------------------------------------------------------------------------*/ @@ -254,6 +286,7 @@ public: GeometricMeshObject<Mesh>(objName, obr) {} + //- Update for mesh motion virtual bool movePoints() = 0; }; @@ -275,6 +308,7 @@ public: MoveableMeshObject<Mesh>(objName, obr) {} + //- Update topology using the given map virtual void updateMesh(const mapPolyMesh& mpm) = 0; }; diff --git a/src/OpenFOAM/meshes/bandCompression/bandCompression.C b/src/OpenFOAM/meshes/bandCompression/bandCompression.C index ffcb574f48a4fdb80ff65519736f27ce4cdb18d2..b03596db79718503c36cb51b1eed485bdf0207a2 100644 --- a/src/OpenFOAM/meshes/bandCompression/bandCompression.C +++ b/src/OpenFOAM/meshes/bandCompression/bandCompression.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,6 +28,8 @@ License #include "bandCompression.H" #include "bitSet.H" +#include "polyMesh.H" +#include "globalMeshData.H" #include "CircularBuffer.H" #include "CompactListList.H" #include "DynamicList.H" @@ -157,6 +159,13 @@ Foam::labelList cuthill_mckee_algorithm } } + // Debug: + // - the peak capacity of queuedCells approximates the + // maximum intermediate bandwidth + #if 0 + Pout<< "bandCompression: peak-capacity=" << queuedCells.capacity() << nl; + #endif + // Now we have new-to-old in newOrder. return newOrder; } @@ -173,10 +182,10 @@ Foam::labelList Foam::meshTools::bandCompression ) { // Protect against zero-sized offset list - const label nOldCells = max(0, (offsets.size()-1)); + const label nOldCells = Foam::max(0, (offsets.size()-1)); // Count number of neighbours - labelList numNbrs(nOldCells, Zero); + labelList numNbrs(nOldCells, Foam::zero{}); for (label celli = 0; celli < nOldCells; ++celli) { const label beg = offsets[celli]; @@ -304,14 +313,30 @@ Foam::labelList Foam::meshTools::bandCompression } } - // Now we have new-to-old in newOrder. + // Debug: + // - the peak capacity of queuedCells approximates the + // maximum intermediate bandwidth + #if 0 + Pout<< "bandCompression: peak-capacity=" << queuedCells.capacity() << nl; + #endif + // Now we have new-to-old in newOrder. return newOrder; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +Foam::labelList Foam::meshTools::bandCompression(const polyMesh& mesh) +{ + // Local mesh connectivity + CompactListList<label> cellCells; + globalMeshData::calcCellCells(mesh, cellCells); + + return cuthill_mckee_algorithm(cellCells); +} + + Foam::labelList Foam::meshTools::bandCompression ( const CompactListList<label>& cellCellAddressing diff --git a/src/OpenFOAM/meshes/bandCompression/bandCompression.H b/src/OpenFOAM/meshes/bandCompression/bandCompression.H index 805a0783bfcb5ff4fdecdf1c17343bb3dd194607..00553c7a22c8cf1a0f1fbd0706027154ea1a5553 100644 --- a/src/OpenFOAM/meshes/bandCompression/bandCompression.H +++ b/src/OpenFOAM/meshes/bandCompression/bandCompression.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,6 +50,7 @@ namespace Foam { // Forward Declarations +class polyMesh; template<class T> class CompactListList; } // End namespace Foam @@ -64,6 +65,12 @@ namespace meshTools // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +//- Renumber (mesh) addressing to reduce the band of the mesh connectivity, +//- using the Cuthill-McKee algorithm. +// +// \returns order in which the cells are to be visited (ordered to original) +labelList bandCompression(const polyMesh& mesh); + //- Renumber (mesh) addressing to reduce the band of the matrix, //- using the Cuthill-McKee algorithm. // @@ -96,13 +103,17 @@ labelList bandCompression namespace Foam { -//- Forward to meshTools::bandCompression +//- Deprecated - prefer meshTools::bandCompression() +// \deprecated(2022-03) prefer meshTools::bandCompression() +FOAM_DEPRECATED_FOR(2022-03, "meshTools::bandCompression()") inline labelList bandCompression(const labelListList& cellCellAddressing) { return meshTools::bandCompression(cellCellAddressing); } -//- Forward to meshTools::bandCompression +//- Deprecated - prefer meshTools::bandCompression() +// \deprecated(2022-03) prefer meshTools::bandCompression() +FOAM_DEPRECATED_FOR(2022-03, "meshTools::bandCompression()") inline labelList bandCompression ( const labelUList& cellCells, diff --git a/src/OpenFOAM/meshes/lduMesh/lduMesh.C b/src/OpenFOAM/meshes/lduMesh/lduMesh.C index 16e73ddf7c1242e33ed9ebe326fc14479c18de9c..a6c62c3811b41625335965823dd7560e32dcafde 100644 --- a/src/OpenFOAM/meshes/lduMesh/lduMesh.C +++ b/src/OpenFOAM/meshes/lduMesh/lduMesh.C @@ -42,8 +42,7 @@ namespace Foam const Foam::objectRegistry& Foam::lduMesh::thisDb() const { NotImplemented; - const objectRegistry* orPtr_ = nullptr; - return *orPtr_; + return NullObjectRef<objectRegistry>(); } diff --git a/src/OpenFOAM/meshes/lduMesh/lduPrimitiveMesh.C b/src/OpenFOAM/meshes/lduMesh/lduPrimitiveMesh.C index 935c20d3707842494d3f10d3e7d88e469e74291e..40a5975794e0197594d5ef65b7693747560f4a87 100644 --- a/src/OpenFOAM/meshes/lduMesh/lduPrimitiveMesh.C +++ b/src/OpenFOAM/meshes/lduMesh/lduPrimitiveMesh.C @@ -105,12 +105,14 @@ Foam::labelListList Foam::lduPrimitiveMesh::globalCellCells const lduAddressing& addr = mesh.lduAddr(); lduInterfacePtrsList interfaces = mesh.interfaces(); + const label myProci = UPstream::myProcNo(mesh.comm()); + const labelList globalIndices ( - identity + Foam::identity ( addr.size(), - globalNumbering.localStart(UPstream::myProcNo(mesh.comm())) + globalNumbering.localStart(myProci) ) ); @@ -1342,12 +1344,7 @@ void Foam::lduPrimitiveMesh::gather (void)mesh.lduAddr().patchSchedule(); // Use PstreamBuffers - PstreamBuffers pBufs - ( - Pstream::commsTypes::nonBlocking, - UPstream::msgType(), - comm - ); + PstreamBuffers pBufs(comm); // Send to master if (!Pstream::master(comm)) diff --git a/src/OpenFOAM/meshes/meshShapes/face/face.H b/src/OpenFOAM/meshes/meshShapes/face/face.H index b103c0256e27878b2708c76e8a7a3706bef435c0..7d9a1bd170bc8ca90790b97d5eec9711f046b08f 100644 --- a/src/OpenFOAM/meshes/meshShapes/face/face.H +++ b/src/OpenFOAM/meshes/meshShapes/face/face.H @@ -395,7 +395,7 @@ public: // Face splitting utilities //- Number of triangles after splitting - inline label nTriangles() const; + inline label nTriangles() const noexcept; //- Number of triangles after splitting label nTriangles(const UList<point>& unused) const; diff --git a/src/OpenFOAM/meshes/meshShapes/face/faceI.H b/src/OpenFOAM/meshes/meshShapes/face/faceI.H index 320b05e6c7ae247d42a957acc53f958c33821f0e..36c535a9ce6e2823bbc931f2c3d6b1bf6d53c156 100644 --- a/src/OpenFOAM/meshes/meshShapes/face/faceI.H +++ b/src/OpenFOAM/meshes/meshShapes/face/faceI.H @@ -199,9 +199,9 @@ inline Foam::label Foam::face::prevLabel(const label i) const } -inline Foam::label Foam::face::nTriangles() const +inline Foam::label Foam::face::nTriangles() const noexcept { - return size() - 2; + return labelList::size() - 2; } diff --git a/src/OpenFOAM/meshes/meshShapes/triFace/triFace.H b/src/OpenFOAM/meshes/meshShapes/triFace/triFace.H index cee935febc7d8d85fb043d38599e6b958f43ad7c..3145dca25adebf7bddedf42cec8ac66163848e54 100644 --- a/src/OpenFOAM/meshes/meshShapes/triFace/triFace.H +++ b/src/OpenFOAM/meshes/meshShapes/triFace/triFace.H @@ -93,7 +93,7 @@ public: //- Construct from an initializer list of three vertex labels inline explicit triFace(std::initializer_list<label> list); - //- Copy construct from a list of three vertex labels. + //- Copy construct from a list of three vertex labels. inline explicit triFace(const labelUList& list); //- Copy construct from a subset of vertex labels diff --git a/src/OpenFOAM/meshes/pointMesh/pointBoundaryMesh/pointBoundaryMesh.C b/src/OpenFOAM/meshes/pointMesh/pointBoundaryMesh/pointBoundaryMesh.C index 83b28ba35bf05edbdf4cbe350495ef5606dab086..266583000abf2c357680f7c3805c5bdd6c7b6d4a 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointBoundaryMesh/pointBoundaryMesh.C +++ b/src/OpenFOAM/meshes/pointMesh/pointBoundaryMesh/pointBoundaryMesh.C @@ -111,7 +111,7 @@ void Foam::pointBoundaryMesh::calcGeometry() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -157,7 +157,7 @@ void Foam::pointBoundaryMesh::movePoints(const pointField& p) if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -203,7 +203,7 @@ void Foam::pointBoundaryMesh::updateMesh() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { diff --git a/src/OpenFOAM/meshes/pointMesh/pointMesh.C b/src/OpenFOAM/meshes/pointMesh/pointMesh.C index fec7502d4bdcc57e0864069f7a94540851fca30c..3f36c56332a6f6130742e649b9b97a357f2fcd32 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMesh.C +++ b/src/OpenFOAM/meshes/pointMesh/pointMesh.C @@ -37,9 +37,10 @@ License namespace Foam { -defineTypeNameAndDebug(pointMesh, 0); + defineTypeNameAndDebug(pointMesh, 0); } + // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // void Foam::pointMesh::mapFields(const mapPolyMesh& mpm) @@ -72,7 +73,7 @@ void Foam::pointMesh::mapFields(const mapPolyMesh& mpm) Foam::pointMesh::pointMesh(const polyMesh& pMesh) : - MeshObject<polyMesh, Foam::UpdateableMeshObject, pointMesh>(pMesh), + MeshObject_type(pMesh), GeoMesh<polyMesh>(pMesh), boundary_(*this, pMesh.boundaryMesh()) { diff --git a/src/OpenFOAM/meshes/pointMesh/pointMesh.H b/src/OpenFOAM/meshes/pointMesh/pointMesh.H index e28905ea80e653f03f0013f36b9644dbdb918e01..58462132078c368185b71681c61b17bd3ce6a2bf 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMesh.H +++ b/src/OpenFOAM/meshes/pointMesh/pointMesh.H @@ -54,6 +54,16 @@ class pointMesh public MeshObject<polyMesh, UpdateableMeshObject, pointMesh>, public GeoMesh<polyMesh> { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + UpdateableMeshObject, + pointMesh + > MeshObject_type; + + // Permanent Data //- Boundary mesh diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointBoundaryMeshMapper.H b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointBoundaryMeshMapper.H index 6c155b54016858de99344a213d25c1955e261ec1..f45bc5942a547dc03dce84e814355ffb12dba8ea 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointBoundaryMeshMapper.H +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointBoundaryMeshMapper.H @@ -31,8 +31,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef pointBoundaryMeshMapper_H -#define pointBoundaryMeshMapper_H +#ifndef Foam_pointBoundaryMeshMapper_H +#define Foam_pointBoundaryMeshMapper_H #include "PtrList.H" #include "pointPatchMapper.H" diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.C b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.C index 3fba1b2c166282d327f28e2988d416ffaab8ba96..2daa81872c5a216a7d9b36eff9dacc0b2f9357e7 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.C +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "pointMapper.H" -#include "demandDrivenData.H" #include "pointMesh.H" #include "mapPolyMesh.H" @@ -37,9 +37,9 @@ void Foam::pointMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ - || insertedPointLabelsPtr_ + || insertedObjectsPtr_ ) { FatalErrorInFunction @@ -51,160 +51,226 @@ void Foam::pointMapper::calcAddressing() const { // Direct addressing, no weights - directAddrPtr_ = new labelList(mpm_.pointMap()); - labelList& directAddr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList> + ( + // No retired points, so pointMap().size() == mapperLen_ anyhow + labelList::subList(mpm_.pointMap(), mapperLen_) + ); + auto& directAddr = *directAddrPtr_; - // Not necessary to resize the list as there are no retired points - // directAddr.setSize(pMesh_.size()); + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - insertedPointLabelsPtr_ = new labelList(pMesh_.size()); - labelList& insertedPoints = *insertedPointLabelsPtr_; - - label nInsertedPoints = 0; - - forAll(directAddr, pointi) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (directAddr[pointi] < 0) + inserted.resize(nInsertedObjects_); + + label nInserted = 0; + forAll(directAddr, i) { - // Found inserted point - directAddr[pointi] = 0; - insertedPoints[nInsertedPoints] = pointi; - nInsertedPoints++; + if (directAddr[i] < 0) + { + // Found inserted + directAddr[i] = 0; + inserted[nInserted] = i; + ++nInserted; + + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) + { + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; + } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedPoints.setSize(nInsertedPoints); } else { // Interpolative addressing - interpolationAddrPtr_ = new labelListList(pMesh_.size()); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList>(mapperLen_); + auto& addr = *interpAddrPtr_; - weightsPtr_ = new scalarListList(pMesh_.size()); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList>(mapperLen_); + auto& wght = *weightsPtr_; - // Points created from other points (i.e. points merged into it). - const List<objectMap>& cfc = mpm_.pointsFromPointsMap(); - forAll(cfc, cfcI) + // Set the addressing and uniform weight + const auto setAddrWeights = [&] + ( + const List<objectMap>& maps, + const char * const nameOfMap + ) { - // Get addressing - const labelList& mo = cfc[cfcI].masterObjects(); - - label pointi = cfc[cfcI].index(); - - if (addr[pointi].size()) + for (const objectMap& map : maps) { - FatalErrorInFunction - << "Master point " << pointi - << " mapped from points " << mo - << " already destination of mapping." << abort(FatalError); + // Get index, addressing + const label pointi = map.index(); + const labelList& mo = map.masterObjects(); + if (mo.empty()) continue; // safety + + if (addr[pointi].size()) + { + FatalErrorInFunction + << "Master point " << pointi + << " already mapped, cannot apply " + << nameOfMap + << flatOutput(mo) << abort(FatalError); + } + + // Map from masters, uniform weights + addr[pointi] = mo; + wght[pointi] = scalarList(mo.size(), 1.0/mo.size()); } + }; - // Map from masters, uniform weights - addr[pointi] = mo; - w[pointi] = scalarList(mo.size(), 1.0/mo.size()); - } + // Points created from other points (i.e. points merged into it). + + setAddrWeights(mpm_.pointsFromPointsMap(), "point points"); - // Do mapped points. Note that can already be set from pointsFromPoints - // so check if addressing size still zero. - const labelList& cm = mpm_.pointMap(); + // Do mapped points. + // - may already have been set, so check if addressing still empty(). - forAll(cm, pointi) { - if (cm[pointi] > -1 && addr[pointi].empty()) + const labelList& map = mpm_.pointMap(); + + for (label pointi = 0; pointi < mapperLen_; ++pointi) { - // Mapped from a single point - addr[pointi] = labelList(1, cm[pointi]); - w[pointi] = scalarList(1, scalar(1)); + const label mappedi = map[pointi]; + + if (mappedi >= 0 && addr[pointi].empty()) + { + // Mapped from a single point + addr[pointi].resize(1, mappedi); + wght[pointi].resize(1, 1.0); + } } } // Grab inserted points (for them the size of addressing is still zero) - insertedPointLabelsPtr_ = new labelList(pMesh_.size()); - labelList& insertedPoints = *insertedPointLabelsPtr_; - - label nInsertedPoints = 0; + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - forAll(addr, pointi) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (addr[pointi].empty()) - { - // Mapped from a dummy point. Take point 0 with weight 1. - addr[pointi] = labelList(1, Zero); - w[pointi] = scalarList(1, scalar(1)); + inserted.resize(nInsertedObjects_); - insertedPoints[nInsertedPoints] = pointi; - nInsertedPoints++; + label nInserted = 0; + forAll(addr, i) + { + if (addr[i].empty()) + { + // Mapped from dummy point 0 + addr[i].resize(1, 0); + wght[i].resize(1, 1.0); + + inserted[nInserted] = i; + ++nInserted; + + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) + { + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; + } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedPoints.setSize(nInsertedPoints); } } -void Foam::pointMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - deleteDemandDrivenData(insertedPointLabelsPtr_); -} +// void Foam::pointMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// insertedObjectsPtr_.reset(nullptr); +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::pointMapper::pointMapper(const pointMesh& pMesh, const mapPolyMesh& mpm) : - pMesh_(pMesh), mpm_(mpm), - insertedPoints_(true), - direct_(false), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr), - insertedPointLabelsPtr_(nullptr) + mapperLen_(pMesh.size()), + nInsertedObjects_(0), + direct_ + ( + // Mapping without interpolation? + mpm.pointsFromPointsMap().empty() + ) { - // Check for possibility of direct mapping - if (mpm_.pointsFromPointsMap().empty()) + const auto& directMap = mpm_.pointMap(); + + if (!mapperLen_) { + // Empty mesh direct_ = true; + nInsertedObjects_ = 0; } - else - { - direct_ = false; - } - - // Check for inserted points - if (direct_ && (mpm_.pointMap().empty() || min(mpm_.pointMap()) > -1)) + else if (direct_) { - insertedPoints_ = false; + // Number of inserted points (-ve values) + nInsertedObjects_ = std::count_if + ( + directMap.cbegin(), + directMap.cbegin(mapperLen_), + [](label i) { return (i < 0); } + ); } else { - //Check if there are inserted points with no owner + // Check if there are inserted points with no owner + // (check all lists) - // Make a copy of the point map, add the entries for points from points - // and check for left-overs - labelList cm(pMesh_.size(), -1); + bitSet unmapped(mapperLen_, true); - const List<objectMap>& cfc = mpm_.pointsFromPointsMap(); + unmapped.unset(directMap); // direct mapped - forAll(cfc, cfcI) + for (const objectMap& map : mpm_.pointsFromPointsMap()) { - cm[cfc[cfcI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - if (min(cm) < 0) - { - insertedPoints_ = true; - } + nInsertedObjects_ = label(unmapped.count()); } } @@ -212,15 +278,14 @@ Foam::pointMapper::pointMapper(const pointMesh& pMesh, const mapPolyMesh& mpm) // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::pointMapper::~pointMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::pointMapper::size() const { + // OR: return mapperLen_; return mpm_.pointMap().size(); } @@ -266,12 +331,12 @@ const Foam::labelListList& Foam::pointMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } @@ -295,30 +360,19 @@ const Foam::scalarListList& Foam::pointMapper::weights() const const Foam::labelList& Foam::pointMapper::insertedObjectLabels() const { - if (!insertedPointLabelsPtr_) + if (!insertedObjectsPtr_) { - if (!insertedObjects()) + if (!nInsertedObjects_) { - // There are no inserted points - insertedPointLabelsPtr_ = new labelList(0); - } - else - { - calcAddressing(); + // No inserted objects will be created + return labelList::null(); } + + calcAddressing(); } - return *insertedPointLabelsPtr_; + return *insertedObjectsPtr_; } -// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // - - -// * * * * * * * * * * * * * * * Friend Functions * * * * * * * * * * * * * // - - -// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * // - - // ************************************************************************* // diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.H b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.H index 1e33711871a7b257185ff4b30d1a1284a516e075..7783e6b36162ee38bdcedd0c2967801791c94c5f 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.H +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef pointMapper_H -#define pointMapper_H +#ifndef Foam_pointMapper_H +#define Foam_pointMapper_H #include "morphFieldMapper.H" @@ -46,10 +47,9 @@ SourceFiles namespace Foam { -// Forward declaration of classes -class pointMesh; +// Forward Declarations class mapPolyMesh; -class polyMesh; +class pointMesh; /*---------------------------------------------------------------------------*\ Class pointMapper Declaration @@ -59,38 +59,45 @@ class pointMapper : public morphFieldMapper { - // Private data - - //- Reference to pointMesh - const pointMesh& pMesh_; + // Private Data //- Reference to mapPolyMesh const mapPolyMesh& mpm_; - //- Are there any inserted (unmapped) points - bool insertedPoints_; + //- The size of the mapper = pointMesh::size() + const label mapperLen_; + + //- Number of inserted (unmapped) points + label nInsertedObjects_; //- Is the mapping direct bool direct_; - // Demand-driven private data + // Demand-Driven Data //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; //- Inserted points - mutable labelList* insertedPointLabelsPtr_; + mutable std::unique_ptr<labelList> insertedObjectsPtr_; // Private Member Functions + //- Calculate addressing for mapping with inserted points + void calcAddressing() const; + +public: + + // Generated Methods + //- No copy construct pointMapper(const pointMapper&) = delete; @@ -98,28 +105,20 @@ class pointMapper void operator=(const pointMapper&) = delete; - //- Calculate addressing for mapping with inserted points - void calcAddressing() const; - - //- Clear out local storage - void clearOut(); - - -public: - // Constructors //- Construct from mapPolyMesh pointMapper(const pointMesh&, const mapPolyMesh& mpm); + //- Destructor virtual ~pointMapper(); // Member Functions - //- Return size + //- The mapper size virtual label size() const; //- Return size before mapping @@ -131,8 +130,7 @@ public: return direct_; } - //- Are there unmapped values? I.e. do all size() elements get - // get value + //- Are there unmapped values? i.e. do all size() elements get value virtual bool hasUnmapped() const { return insertedObjects(); @@ -148,9 +146,9 @@ public: virtual const scalarListList& weights() const; //- Are there any inserted points - bool insertedObjects() const + bool insertedObjects() const noexcept { - return insertedPoints_; + return bool(nInsertedObjects_); } //- Return list of inserted points diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMeshMapper.H b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMeshMapper.H index 54e18c664ea2d130149d815bd12749273d607a60..f6cb2592620d7e28b10c612b3032218a0e577698 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMeshMapper.H +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointMeshMapper.H @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef pointMeshMapper_H -#define pointMeshMapper_H +#ifndef Foam_pointMeshMapper_H +#define Foam_pointMeshMapper_H #include "pointMapper.H" #include "pointBoundaryMeshMapper.H" @@ -46,7 +46,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes +// Forward Declarations class pointMesh; class mapPolyMesh; @@ -56,7 +56,7 @@ class mapPolyMesh; class pointMeshMapper { - // Private data + // Private Data //- Reference to mesh const pointMesh& mesh_; @@ -92,28 +92,27 @@ public: // Member Functions - //- Return reference to mesh fields belong to - const pointMesh& mesh() const + const pointMesh& mesh() const noexcept { return mesh_; } //- Return reference to objectRegistry storing fields. Can be // removed once fields stored on pointMesh. - const objectRegistry& thisDb() const + const objectRegistry& thisDb() const noexcept { return mesh_(); } //- Return point mapper - const morphFieldMapper& pointMap() const + const morphFieldMapper& pointMap() const noexcept { return pointMap_; } //- Return boundary mapper - const pointBoundaryMeshMapper& boundaryMap() const + const pointBoundaryMeshMapper& boundaryMap() const noexcept { return boundaryMap_; } diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.C b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.C index e9a18985c0ed0bae221660c8daa33df6fd48da1b..2e6a2d7c4ffbb06c2020073e430e3b20f00c928a 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.C +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,7 +30,6 @@ License #include "pointPatch.H" #include "mapPolyMesh.H" #include "faceMapper.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -38,7 +38,7 @@ void Foam::pointPatchMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ ) { @@ -52,8 +52,11 @@ void Foam::pointPatchMapper::calcAddressing() const if (direct()) { // Direct mapping. - directAddrPtr_ = new labelList(mpm_.patchPointMap()[patch_.index()]); - labelList& addr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList> + ( + mpm_.patchPointMap()[patch_.index()] + ); + auto& addr = *directAddrPtr_; forAll(addr, i) { @@ -73,11 +76,11 @@ void Foam::pointPatchMapper::calcAddressing() const // patch points. Problem is we don't know what points were in the patch // for points that were merged. - interpolationAddrPtr_ = new labelListList(size()); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList>(size()); + auto& addr = *interpAddrPtr_; - weightsPtr_ = new scalarListList(addr.size()); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList>(addr.size()); + auto& wght = *weightsPtr_; const labelList& ppm = mpm_.patchPointMap()[patch_.index()]; @@ -85,15 +88,15 @@ void Foam::pointPatchMapper::calcAddressing() const { if (ppm[i] >= 0) { - addr[i] = labelList(1, ppm[i]); - w[i] = scalarList(1, scalar(1)); + addr[i].resize(1, ppm[i]); + wght[i].resize(1, 1.0); } else { // Inserted point. ///// Map from point0 (arbitrary choice) - //addr[i] = labelList(1, Zero); - //w[i] = scalarList(1, scalar(1)); + //addr[i].resize(1, 0); + //wght[i].resize(1, 1.0); hasUnmapped_ = true; } } @@ -101,13 +104,13 @@ void Foam::pointPatchMapper::calcAddressing() const } -void Foam::pointPatchMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - hasUnmapped_ = false; -} +// void Foam::pointPatchMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// hasUnmapped_ = false; +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -129,19 +132,14 @@ Foam::pointPatchMapper::pointPatchMapper ? mpm_.oldPatchNMeshPoints()[patch_.index()] : 0 ), - hasUnmapped_(false), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr) + hasUnmapped_(false) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::pointPatchMapper::~pointPatchMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -173,12 +171,12 @@ const Foam::labelListList& Foam::pointPatchMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } diff --git a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.H b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.H index c79491970f2b9f06a176e07da2fc6542969d7047..e9570dbad3b859b5ec3c80977baa296209ef8c85 100644 --- a/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.H +++ b/src/OpenFOAM/meshes/pointMesh/pointMeshMapper/pointPatchMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef pointPatchMapper_H -#define pointPatchMapper_H +#ifndef Foam_pointPatchMapper_H +#define Foam_pointPatchMapper_H #include "pointMapper.H" #include "pointPatchFieldMapper.H" @@ -47,7 +48,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes +// Forward Declarations class pointPatch; class mapPolyMesh; @@ -59,7 +60,7 @@ class pointPatchMapper : public pointPatchFieldMapper { - // Private data + // Private Data //- Reference to patch const pointPatch& patch_; @@ -74,18 +75,18 @@ class pointPatchMapper const label sizeBeforeMapping_; - // Demand-driven private data + // Demand-driven Data mutable bool hasUnmapped_; //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; // Private Member Functions @@ -100,9 +101,6 @@ class pointPatchMapper //- Calculate addressing for mapping with inserted cells void calcAddressing() const; - //- Clear out local storage - void clearOut(); - public: @@ -156,7 +154,6 @@ public: //- Return interpolaion weights virtual const scalarListList& weights() const; - }; diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C index 6ad4372c6bdc096a43485f250fd2e7ba4f9ea496..c46241ecebaf2cf703b33d711f962f3dda13b375 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,6 +35,7 @@ License #include "processorPolyPatch.H" #include "processorTopologyNew.H" #include "globalIndexAndTransform.H" +#include "ListOps.H" #include "Pstream.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -85,14 +86,9 @@ void Foam::globalMeshData::initProcAddr() processorPatches_.resize(nNeighbours); - if (Pstream::parRun()) + if (UPstream::parRun()) { - PstreamBuffers pBufs - ( - Pstream::commsTypes::nonBlocking, - UPstream::msgType(), - mesh_.comm() - ); + PstreamBuffers pBufs(mesh_.comm()); // Send indices of my processor patches to my neighbours for (const label patchi : processorPatches_) @@ -179,15 +175,11 @@ void Foam::globalMeshData::calcSharedPoints() const if (pPoints.size()+transPPoints.size() > 0) { master[i] = masterNumbering.toGlobal(nMaster); - forAll(pPoints, j) - { - master[pPoints[j]] = master[i]; - } - forAll(transPPoints, j) - { - master[transPPoints[j]] = master[i]; - } - nMaster++; + + labelUIndList(master, pPoints) = master[i]; + labelUIndList(master, transPPoints) = master[i]; + + ++nMaster; } } @@ -314,11 +306,8 @@ void Foam::globalMeshData::calcSharedEdges() const // Since don't want to construct pointEdges for whole mesh create // Map for all shared points. - Map<label> meshToShared(2*sharedPtLabels.size()); - forAll(sharedPtLabels, i) - { - meshToShared.insert(sharedPtLabels[i], i); - } + Map<label> meshToShared(invertToMap(sharedPtLabels)); + // Find edges using shared points. Store correspondence to local edge // numbering. Note that multiple local edges can have the same shared @@ -327,9 +316,9 @@ void Foam::globalMeshData::calcSharedEdges() const const edgeList& edges = mesh_.edges(); - forAll(edges, edgeI) + forAll(edges, edgei) { - const edge& e = edges[edgeI]; + const edge& e = edges[edgei]; const auto e0Fnd = meshToShared.cfind(e[0]); @@ -345,26 +334,12 @@ void Foam::globalMeshData::calcSharedEdges() const // of the shared points) edge sharedEdge ( - sharedPtAddr[e0Fnd()], - sharedPtAddr[e1Fnd()] + sharedPtAddr[e0Fnd.val()], + sharedPtAddr[e1Fnd.val()] ); - auto iter = localShared.find(sharedEdge); - - if (!iter.good()) - { - // First occurrence of this point combination. Store. - localShared.insert(sharedEdge, labelList(1, edgeI)); - } - else - { - // Add this edge to list of edge labels. - labelList& edgeLabels = iter(); - - const label sz = edgeLabels.size(); - edgeLabels.setSize(sz+1); - edgeLabels[sz] = edgeI; - } + // Add this edge to list of edge labels + localShared(sharedEdge).push_back(edgei); } } } @@ -379,9 +354,9 @@ void Foam::globalMeshData::calcSharedEdges() const // used). But then this only gets done once so not too bothered about the // extra global communication. - EdgeMap<label> globalShared(nGlobalPoints()); + EdgeMap<label> globalShared(2*nGlobalPoints()); - if (Pstream::master()) + if (UPstream::master()) { label sharedEdgeI = 0; @@ -394,13 +369,13 @@ void Foam::globalMeshData::calcSharedEdges() const countSharedEdges(localShared, globalShared, sharedEdgeI); // Receive data and insert - if (Pstream::parRun()) + if (UPstream::parRun()) { - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { // Receive the edges using shared points from the slave. - IPstream fromProc(Pstream::commsTypes::blocking, proci); - EdgeMap<labelList> procSharedEdges(fromProc); + EdgeMap<labelList> procSharedEdges; + IPstream::recv(procSharedEdges, proci); if (debug) { @@ -417,17 +392,17 @@ void Foam::globalMeshData::calcSharedEdges() const // These were only used once so are not proper shared edges. // Remove them. { - EdgeMap<label> oldSharedEdges(globalShared); - + EdgeMap<label> oldSharedEdges(std::move(globalShared)); globalShared.clear(); forAllConstIters(oldSharedEdges, iter) { - if (iter() != -1) + if (iter.val() != -1) { - globalShared.insert(iter.key(), iter()); + globalShared.insert(iter.key(), iter.val()); } } + if (debug) { Pout<< "globalMeshData::calcSharedEdges : Filtered " @@ -438,15 +413,10 @@ void Foam::globalMeshData::calcSharedEdges() const } else { - if (Pstream::parRun()) + if (UPstream::parRun()) { - // Send local edges to master - OPstream toMaster - ( - Pstream::commsTypes::blocking, - Pstream::masterNo() - ); - toMaster << localShared; + // send local edges to master + OPstream::send(localShared, UPstream::masterNo()); } } @@ -472,7 +442,7 @@ void Foam::globalMeshData::calcSharedEdges() const { // My local edge is indeed a shared one. Go through all local edge // labels with this point combination. - const labelList& edgeLabels = iter(); + const labelList& edgeLabels = iter.val(); for (const label edgei : edgeLabels) { @@ -486,21 +456,23 @@ void Foam::globalMeshData::calcSharedEdges() const } - sharedEdgeLabelsPtr_.reset(new labelList()); - labelList& sharedEdgeLabels = sharedEdgeLabelsPtr_(); - sharedEdgeLabels.transfer(dynSharedEdgeLabels); + sharedEdgeLabelsPtr_.reset + ( + new labelList(std::move(dynSharedEdgeLabels)) + ); - sharedEdgeAddrPtr_.reset(new labelList()); - labelList& sharedEdgeAddr = sharedEdgeAddrPtr_(); - sharedEdgeAddr.transfer(dynSharedEdgeAddr); + sharedEdgeAddrPtr_.reset + ( + new labelList(std::move(dynSharedEdgeAddr)) + ); if (debug) { Pout<< "globalMeshData : nGlobalEdges_:" << nGlobalEdges_ << nl - << "globalMeshData : sharedEdgeLabels:" << sharedEdgeLabels.size() - << nl - << "globalMeshData : sharedEdgeAddr:" << sharedEdgeAddr.size() - << endl; + << "globalMeshData : sharedEdgeLabels:" + << sharedEdgeLabelsPtr_().size() << nl + << "globalMeshData : sharedEdgeAddr:" + << sharedEdgeAddrPtr_().size() << endl; } } @@ -978,7 +950,7 @@ void Foam::globalMeshData::calcGlobalEdgeSlaves() const } allEdgeConnectivity[edgeI].transfer(eEdges); - sort + Foam::sort ( allEdgeConnectivity[edgeI], globalIndexAndTransform::less(transforms) @@ -1288,6 +1260,8 @@ void Foam::globalMeshData::calcGlobalPointBoundaryFaces() const << endl; } + const label myProci = UPstream::myProcNo(); + // Construct local point to (uncoupled)boundaryfaces. labelListList pointBoundaryFaces; calcPointBoundaryFaces(pointBoundaryFaces); @@ -1298,7 +1272,7 @@ void Foam::globalMeshData::calcGlobalPointBoundaryFaces() const ( new globalIndex(mesh_.nBoundaryFaces()) ); - globalIndex& globalIndices = globalBoundaryFaceNumberingPtr_(); + const auto& globalIndices = *globalBoundaryFaceNumberingPtr_; // Convert local boundary faces to global numbering @@ -1306,17 +1280,15 @@ void Foam::globalMeshData::calcGlobalPointBoundaryFaces() const ( new labelListList(globalPointSlavesMap().constructSize()) ); - labelListList& globalPointBoundaryFaces = globalPointBoundaryFacesPtr_(); + auto& globalPointBoundaryFaces = *globalPointBoundaryFacesPtr_; forAll(pointBoundaryFaces, pointi) { - const labelList& bFaces = pointBoundaryFaces[pointi]; - labelList& globalFaces = globalPointBoundaryFaces[pointi]; - globalFaces.setSize(bFaces.size()); - forAll(bFaces, i) - { - globalFaces[i] = globalIndices.toGlobal(bFaces[i]); - } + globalPointBoundaryFaces[pointi] = globalIndices.toGlobal + ( + myProci, + pointBoundaryFaces[pointi] + ); } @@ -1479,6 +1451,8 @@ void Foam::globalMeshData::calcGlobalPointBoundaryCells() const << endl; } + const label myProci = UPstream::myProcNo(); + // Create map of boundary cells and point-cell addressing // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -1528,24 +1502,23 @@ void Foam::globalMeshData::calcGlobalPointBoundaryCells() const ( new globalIndex(boundaryCells.size()) ); - globalIndex& globalIndices = globalBoundaryCellNumberingPtr_(); + const auto& globalIndices = *globalBoundaryCellNumberingPtr_; + // Convert local boundary cells to global numbering globalPointBoundaryCellsPtr_.reset ( new labelListList(globalPointSlavesMap().constructSize()) ); - labelListList& globalPointBoundaryCells = globalPointBoundaryCellsPtr_(); + auto& globalPointBoundaryCells = *globalPointBoundaryCellsPtr_; forAll(pointBoundaryCells, pointi) { - const labelList& pCells = pointBoundaryCells[pointi]; - labelList& globalCells = globalPointBoundaryCells[pointi]; - globalCells.setSize(pCells.size()); - forAll(pCells, i) - { - globalCells[i] = globalIndices.toGlobal(pCells[i]); - } + globalPointBoundaryCells[pointi] = globalIndices.toGlobal + ( + myProci, + pointBoundaryCells[pointi] + ); } @@ -1735,9 +1708,9 @@ void Foam::globalMeshData::calcGlobalCoPointSlaves() const Foam::globalMeshData::globalMeshData(const polyMesh& mesh) : mesh_(mesh), - nTotalPoints_(-1), - nTotalFaces_(-1), - nTotalCells_(-1), + globalMeshPointAddr_(), + globalMeshFaceAddr_(), + globalMeshCellAddr_(), processorTopology_ ( processorTopology::New<processorPolyPatch> @@ -1881,7 +1854,7 @@ Foam::pointField Foam::globalMeshData::sharedPoints() const const labelList& pointAddr = sharedPointAddr(); const labelList& pointLabels = sharedPointLabels(); - if (Pstream::master()) + if (UPstream::master()) { // Master: // insert my own data first @@ -1893,9 +1866,9 @@ Foam::pointField Foam::globalMeshData::sharedPoints() const } // Receive data and insert - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, proci); + IPstream fromProc(UPstream::commsTypes::scheduled, proci); labelList nbrSharedPointAddr; pointField nbrSharedPoints; @@ -1911,13 +1884,13 @@ Foam::pointField Foam::globalMeshData::sharedPoints() const } else { - if (Pstream::parRun()) + if (UPstream::parRun()) { // Send address and points OPstream toMaster ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); toMaster << pointAddr @@ -2105,13 +2078,10 @@ const { const labelList& me = coupledPatchMeshEdges(); - coupledPatchMeshEdgeMapPtr_.reset(new Map<label>(2*me.size())); - Map<label>& em = coupledPatchMeshEdgeMapPtr_(); - - forAll(me, i) - { - em.insert(me[i], i); - } + coupledPatchMeshEdgeMapPtr_.reset + ( + new Map<label>(invertToMap(me)) + ); } return *coupledPatchMeshEdgeMapPtr_; } @@ -2717,37 +2687,64 @@ void Foam::globalMeshData::updateMesh() Pout<< "globalMeshData : merge dist:" << tolDim << endl; } - // *** Temporary hack to avoid problems with overlapping communication - // *** between these reductions and the calculation of deltaCoeffs - - UPstream::communicator dupComm - ( - UPstream::worldComm, - labelRange(UPstream::nProcs(UPstream::worldComm)) - ); - const label comm = dupComm.comm(); + const label comm = mesh_.comm(); const label oldWarnComm = UPstream::commWarn(comm); - FixedList<label, 3> totals; + if (UPstream::is_parallel(comm)) + { + const label myProci = UPstream::myProcNo(comm); + const label numProc = UPstream::nProcs(comm); + + // Gather all three sizes together + labelList allSizes(3*numProc); + { + label* tup = allSizes.begin(3*myProci); + tup[0] = mesh_.nPoints(); + tup[1] = mesh_.nFaces(); + tup[2] = mesh_.nCells(); + } - totals[0] = mesh_.nPoints(); - totals[1] = mesh_.nFaces(); - totals[2] = mesh_.nCells(); + UPstream::mpiAllGather(allSizes.data(), 3, comm); + + // Extract counts per mesh entity + // TBD: check for label overflow? + + labelList counts(numProc); + for (label proci = 0, idx = 0; proci < numProc; ++proci, idx += 3) + { + counts[proci] = allSizes[idx]; + } + globalMeshPointAddr_.reset(counts); - reduce(totals, sumOp<label>(), UPstream::msgType(), comm); + for (label proci = 0, idx = 1; proci < numProc; ++proci, idx += 3) + { + counts[proci] = allSizes[idx]; + } + globalMeshFaceAddr_.reset(counts); - nTotalPoints_ = totals[0]; - nTotalFaces_ = totals[1]; - nTotalCells_ = totals[2]; + for (label proci = 0, idx = 2; proci < numProc; ++proci, idx += 3) + { + counts[proci] = allSizes[idx]; + } + globalMeshCellAddr_.reset(counts); + } + else + { + globalMeshPointAddr_.reset(globalIndex::gatherNone{}, mesh_.nPoints()); + globalMeshFaceAddr_.reset(globalIndex::gatherNone{}, mesh_.nFaces()); + globalMeshCellAddr_.reset(globalIndex::gatherNone{}, mesh_.nCells()); + } // Restore communicator settings UPstream::commWarn(oldWarnComm); if (debug) { - Info<< "globalMeshData : Total points/faces/cells : " - << totals << endl; + Info<< "globalMeshData : Total points/faces/cells : (" + << nTotalPoints() << ' ' + << nTotalFaces() << ' ' + << nTotalCells() << ')' << endl; } } diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.H b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.H index a1228f654511133f0e10201205bac91d28492e69..306ca8344d5f777ab6b2894ae2af4a1dbed38952 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.H +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -85,6 +85,7 @@ SourceFiles #define Foam_globalMeshData_H #include "processorTopology.H" +#include "globalIndex.H" #include "labelPair.H" #include "indirectPrimitivePatch.H" @@ -98,7 +99,6 @@ class polyMesh; class mapDistribute; template<class T> class CompactListList; template<class T> class EdgeMap; -class globalIndex; class globalIndexAndTransform; class bitSet; @@ -114,16 +114,18 @@ class globalMeshData const polyMesh& mesh_; - // Data related to the complete mesh + // Data related to the complete mesh - //- Total number of points in the complete mesh - label nTotalPoints_; + //- Global numbering for mesh points. + //- Not compensated for duplicate points! + globalIndex globalMeshPointAddr_; - //- Total number of faces in the complete mesh - label nTotalFaces_; + //- Global numbering for mesh faces. + //- Not compensated for duplicate faces! + globalIndex globalMeshFaceAddr_; - //- Total number of cells in the complete mesh - label nTotalCells_; + //- Global numbering for mesh cells. + globalIndex globalMeshCellAddr_; // Processor patch addressing (be careful if not running in parallel!) @@ -357,24 +359,44 @@ public: return !processorPatches_.empty(); } - //- Return total number of points in decomposed mesh. + //- Global numbering for \b mesh points. + //- Not compensated for duplicate points! + const globalIndex& globalMeshPointAddr() const noexcept + { + return globalMeshPointAddr_; + } + + //- Global numbering for \b mesh faces. + //- Not compensated for duplicate faces! + const globalIndex& globalMeshFaceAddr() const noexcept + { + return globalMeshFaceAddr_; + } + + //- Global numbering for \b mesh cells. + const globalIndex& globalMeshCellAddr() const noexcept + { + return globalMeshCellAddr_; + } + + //- Total global number of \b mesh points. //- Not compensated for duplicate points! label nTotalPoints() const noexcept { - return nTotalPoints_; + return globalMeshPointAddr_.totalSize(); } - //- Return total number of faces in decomposed mesh. + //- Total global number of \b mesh faces. //- Not compensated for duplicate faces! label nTotalFaces() const noexcept { - return nTotalFaces_; + return globalMeshFaceAddr_.totalSize(); } - //- Return total number of cells in decomposed mesh. + //- Total global number of \b mesh cells. label nTotalCells() const noexcept { - return nTotalCells_; + return globalMeshCellAddr_.totalSize(); } @@ -425,7 +447,7 @@ public: const labelList& sharedPointLabels() const; //- Return addressing into the complete globally shared points - // list + //- list // Note: It is assumed that a (never constructed) complete // list of globally shared points exists. The set of shared // points on the current processor is a subset of all shared @@ -435,27 +457,28 @@ public: const labelList& sharedPointAddr() const; //- Return shared point global labels. Tries to read - // 'pointProcAddressing' and returns list or -1 if none - // available. + //- 'pointProcAddressing' and returns list or -1 if none + //- available. const labelList& sharedPointGlobalLabels() const; //- Collect coordinates of shared points on all processors. - // (does parallel communication!) + //- (does parallel communication!) // Note: not valid for cyclicParallel since shared cyclic points // are merged into single global point. (use geometricSharedPoints // instead) pointField sharedPoints() const; //- Like sharedPoints but keeps cyclic points separate. - // (does geometric merging; uses matchTol_*bb as merging tolerance) - // Use sharedPoints() instead. + //- (does geometric merging; uses matchTol_*bb as merging tolerance) + //- Use sharedPoints() instead. pointField geometricSharedPoints() const; // Globally shared edge addressing - //- Return number of globally shared edges. Demand-driven + //- Return number of globally shared edges. + // Demand-driven // calculation so call needs to be synchronous among processors! label nGlobalEdges() const; @@ -464,8 +487,8 @@ public: // calculation so call needs to be synchronous among processors! const labelList& sharedEdgeLabels() const; - //- Return addressing into the complete globally shared edge - // list. The set of shared + //- Return addressing into the complete globally shared edge list. + // The set of shared // edges on the current processor is a subset of all shared // edges. Shared edge addressing gives the index in the // list of all globally shared edges for each of the locally @@ -614,6 +637,7 @@ public: //- Determine (local or global) cellCells from mesh agglomeration. // Agglomeration is local to the processor. + // // - parallel = false // Resulting connections are in local cell indices. // Coupled across cyclics but not processor patches. @@ -623,9 +647,14 @@ public: static void calcCellCells ( const polyMesh& mesh, - const labelList& agglom, + //! The cell agglomeration, negative agglomeration are excluded + //! from the sub-mesh + const labelUList& agglom, + //! The number of unique, agglomerated cells const label nLocalCoarse, - const bool parallel, //!< Use global cell ids in parallel + //! Use global cell ids in parallel + const bool parallel, + //! [out] the mesh connectivity as CSR CompactListList<label>& cellCells ); @@ -635,12 +664,77 @@ public: static void calcCellCells ( const polyMesh& mesh, - const labelList& agglom, + //! The cell agglomeration, negative agglomeration are excluded + //! from the sub-mesh + const labelUList& agglom, + //! The number of unique, agglomerated cells const label nLocalCoarse, - const bool parallel, //!< Use global cell ids in parallel + //! Use global cell ids in parallel + const bool parallel, + //! [out] the mesh connectivity as CSR CompactListList<label>& cellCells, + //! [out] the connectivity weights (face area) CompactListList<scalar>& cellCellWeights ); + + //- Determine (local or global) mesh connectivity + // + // - parallel = false + // Resulting connections are in local cell indices. + // Coupled across cyclics but not processor patches. + // - parallel = true + // Resulting connections are in global cell indices. + // Coupled across cyclics and processor patches. + static void calcCellCells + ( + const polyMesh& mesh, + //! [out] the mesh connectivity as CSR + CompactListList<label>& cellCells, + //! Use global cell ids in parallel + const bool parallel = false + ); + + //- Determine (local or global) sub-mesh connectivity + // + // - parallel = false + // Resulting connections are in local cell indices. + // Coupled across cyclics but not processor patches. + // - parallel = true + // Resulting connections are in global cell indices. + // Coupled across cyclics and processor patches. + // + // \return the cellMap + static labelList calcCellCells + ( + const polyMesh& mesh, + //! The cell-subset + const bitSet& selectedCells, + //! [out] the mesh connectivity as CSR + CompactListList<label>& cellCells, + //! Use global cell ids in parallel + const bool parallel = false + ); + + //- Determine (local or global) sub-mesh connectivity + // + // - parallel = false + // Resulting connections are in local cell indices. + // Coupled across cyclics but not processor patches. + // - parallel = true + // Resulting connections are in global cell indices. + // Coupled across cyclics and processor patches. + // + // \return the cellMap + static labelList calcCellCells + ( + const polyMesh& mesh, + //! The cell-subset + const labelUList& selectedCells, + //! [out] the mesh connectivity as CSR + CompactListList<label>& cellCells, + //! Use global cell ids in parallel + const bool parallel = false + ); }; diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshDataTopology.C b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshDataTopology.C index 7743b757143fe5371d39ed1c35b6b0ca5875c71c..edb79ea7df8bd600babf21ed58b3cee56df973b6 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshDataTopology.C +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshDataTopology.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,47 +32,78 @@ License #include "processorPolyPatch.H" #include "syncTools.H" -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // -void Foam::globalMeshData::calcCellCells +namespace Foam +{ + +// NOTE: the AgglomerationType is anything that behaves like a List with +// an operator[] and provides coverage in the (0-nCells) range. +// - identityOp() does this + +template<class AgglomerationType> +static void calcCellCellsImpl ( const polyMesh& mesh, - const labelList& agglom, + const AgglomerationType& agglom, const label nLocalCoarse, const bool parallel, - CompactListList<label>& cellCells + CompactListList<label>& cellCells, + CompactListList<scalar>* cellCellWeightsPtr = nullptr ) { const labelList& faceOwner = mesh.faceOwner(); const labelList& faceNeigh = mesh.faceNeighbour(); const polyBoundaryMesh& pbm = mesh.boundaryMesh(); - // FUTURE? treat empty agglomeration like an identity map - // Global cell numbers (agglomerated numbering) const label myProci = UPstream::myProcNo(UPstream::worldComm); const globalIndex globalAgglom(nLocalCoarse, UPstream::worldComm, parallel); - // The agglomerated owner per boundary faces (global numbering) // from the other side (of coupled patches) - labelList globalNeighbour(agglom, pbm.faceOwner()); - globalAgglom.inplaceToGlobal(myProci, globalNeighbour); - syncTools::swapBoundaryFaceList(mesh, globalNeighbour); + labelList globalNeighbour; + { + const label myAgglomOffset = globalAgglom.localStart(myProci); + + const labelList::subList bndFaceOwner = pbm.faceOwner(); + + const label nBoundaryFaces = bndFaceOwner.size(); + + globalNeighbour.resize(nBoundaryFaces); + + for (label bfacei = 0; bfacei < nBoundaryFaces; ++bfacei) + { + label val = agglom[bndFaceOwner[bfacei]]; + if (val >= 0) + { + // Only offset 'real' (non-negative) agglomerations + val += myAgglomOffset; + } + globalNeighbour[bfacei] = val; + } + } + + // Swap boundary neighbour information: + // - cyclics and (optionally) processor + syncTools::swapBoundaryFaceList(mesh, globalNeighbour, parallel); // Count number of faces (internal + coupled) // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Number of faces per coarse cell - labelList nFacesPerCell(nLocalCoarse, Zero); + labelList nFacesPerCell(nLocalCoarse, Foam::zero{}); for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { const label own = agglom[faceOwner[facei]]; const label nei = agglom[faceNeigh[facei]]; + // Negative agglomeration (exclude from subset) + if (own < 0 || nei < 0) continue; + ++nFacesPerCell[own]; ++nFacesPerCell[nei]; } @@ -81,12 +112,15 @@ void Foam::globalMeshData::calcCellCells { if (pp.coupled() && (parallel || !isA<processorPolyPatch>(pp))) { - label bFacei = pp.start()-mesh.nInternalFaces(); + const label bndOffset = mesh.nInternalFaces(); for (const label facei : pp.range()) { const label own = agglom[faceOwner[facei]]; - const label globalNei = globalNeighbour[bFacei]; + const label globalNei = globalNeighbour[facei-bndOffset]; + + // Negative agglomeration (exclude from subset) + if (own < 0 || globalNei < 0) continue; if ( @@ -96,8 +130,6 @@ void Foam::globalMeshData::calcCellCells { ++nFacesPerCell[own]; } - - ++bFacei; } } } @@ -107,23 +139,45 @@ void Foam::globalMeshData::calcCellCells // ~~~~~~~~~~~~~~~~~~~~~~~ cellCells.resize_nocopy(nFacesPerCell); - nFacesPerCell = 0; // Restart the count - labelList& m = cellCells.values(); + + // CSR indexing const labelList& offsets = cellCells.offsets(); + // CSR connections + labelList& connect = cellCells.values(); + + + // CSR connection weights + scalarList weights; + if (cellCellWeightsPtr) + { + cellCellWeightsPtr->clear(); + weights.resize(cellCells.totalSize()); + } + + // For internal faces is just offsetted owner and neighbour for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { const label own = agglom[faceOwner[facei]]; const label nei = agglom[faceNeigh[facei]]; + // Negative agglomeration (exclude from subset) + if (own < 0 || nei < 0) continue; + const label ownIndex = offsets[own] + nFacesPerCell[own]++; const label neiIndex = offsets[nei] + nFacesPerCell[nei]++; - m[ownIndex] = globalAgglom.toGlobal(myProci, nei); - m[neiIndex] = globalAgglom.toGlobal(myProci, own); + connect[ownIndex] = globalAgglom.toGlobal(myProci, nei); + connect[neiIndex] = globalAgglom.toGlobal(myProci, own); + + if (!weights.empty()) + { + weights[ownIndex] = Foam::mag(mesh.faceAreas()[facei]); + weights[neiIndex] = weights[ownIndex]; + } } // For boundary faces is offsetted coupled neighbour @@ -131,12 +185,15 @@ void Foam::globalMeshData::calcCellCells { if (pp.coupled() && (parallel || !isA<processorPolyPatch>(pp))) { - label bFacei = pp.start()-mesh.nInternalFaces(); + const label bndOffset = mesh.nInternalFaces(); for (const label facei : pp.range()) { const label own = agglom[faceOwner[facei]]; - const label globalNei = globalNeighbour[bFacei]; + const label globalNei = globalNeighbour[facei-bndOffset]; + + // Negative agglomeration (exclude from subset) + if (own < 0 || globalNei < 0) continue; if ( @@ -146,10 +203,13 @@ void Foam::globalMeshData::calcCellCells { const label ownIndex = offsets[own] + nFacesPerCell[own]++; - m[ownIndex] = globalNei; - } + connect[ownIndex] = globalNei; - ++bFacei; + if (!weights.empty()) + { + weights[ownIndex] = Foam::mag(mesh.faceAreas()[facei]); + } + } } } } @@ -164,13 +224,12 @@ void Foam::globalMeshData::calcCellCells if (!cellCells.empty()) { - label newIndex = 0; - labelHashSet nbrCells; - - labelList& m = cellCells.values(); + // Need non-const access to CSR indexing labelList& offsets = cellCells.offsets(); label startIndex = offsets[0]; + label newIndex = 0; + labelHashSet nbrCells; const label nCellCells = cellCells.size(); @@ -189,9 +248,15 @@ void Foam::globalMeshData::calcCellCells for (label i = startIndex; i < endIndex; ++i) { - if (nbrCells.insert(m[i])) + if (nbrCells.insert(connect[i])) { - m[newIndex] = m[i]; + connect[newIndex] = connect[i]; + + if (!weights.empty()) + { + weights[newIndex] = weights[i]; + } + ++newIndex; } } @@ -199,9 +264,23 @@ void Foam::globalMeshData::calcCellCells offsets[celli+1] = newIndex; } - m.resize(newIndex); + connect.resize(newIndex); + if (!weights.empty()) + { + weights.resize(newIndex); + } } + + // CSR connection weights + // - addressing is identical to the connections + if (cellCellWeightsPtr) + { + cellCellWeightsPtr->offsets() = cellCells.offsets(); + cellCellWeightsPtr->values() = std::move(weights); + } + + //forAll(cellCells, celli) //{ // Pout<< "Original: Coarse cell " << celli << endl; @@ -218,183 +297,194 @@ void Foam::globalMeshData::calcCellCells //} } +} // End namespace Foam + + +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // void Foam::globalMeshData::calcCellCells ( const polyMesh& mesh, - const labelList& agglom, + const labelUList& agglom, const label nLocalCoarse, const bool parallel, - CompactListList<label>& cellCells, - CompactListList<scalar>& cellCellWeights + CompactListList<label>& cellCells ) { - const labelList& faceOwner = mesh.faceOwner(); - const labelList& faceNeigh = mesh.faceNeighbour(); - const polyBoundaryMesh& pbm = mesh.boundaryMesh(); + calcCellCellsImpl + ( + mesh, + agglom, + nLocalCoarse, + parallel, + cellCells + ); +} - // FUTURE? treat empty agglomeration like an identity map - // Global cell numbers (agglomerated numbering) - const label myProci = UPstream::myProcNo(UPstream::worldComm); - const globalIndex globalAgglom(nLocalCoarse, UPstream::worldComm, parallel); +void Foam::globalMeshData::calcCellCells +( + const polyMesh& mesh, + const labelUList& agglom, + const label nLocalCoarse, + const bool parallel, + CompactListList<label>& cellCells, + CompactListList<scalar>& cellCellWeights +) +{ + calcCellCellsImpl + ( + mesh, + agglom, + nLocalCoarse, + parallel, + cellCells, + &cellCellWeights + ); +} - // The agglomerated owner per boundary faces (global numbering) - // from the other side (of coupled patches) +// Convenience forms - labelList globalNeighbour(agglom, pbm.faceOwner()); - globalAgglom.inplaceToGlobal(myProci, globalNeighbour); - syncTools::swapBoundaryFaceList(mesh, globalNeighbour); +void Foam::globalMeshData::calcCellCells +( + const polyMesh& mesh, + CompactListList<label>& cellCells, + const bool parallel +) +{ + calcCellCellsImpl + ( + mesh, + Foam::identityOp{}, + mesh.nCells(), + parallel, + cellCells + ); +} - // Count number of faces (internal + coupled) - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Foam::labelList Foam::globalMeshData::calcCellCells +( + const polyMesh& mesh, + const bitSet& selectedCells, + CompactListList<label>& cellCells, + const bool parallel +) +{ + const label nCells = mesh.nCells(); - // Number of faces per coarse cell - labelList nFacesPerCell(nLocalCoarse, Zero); + labelList agglom(nCells, -1); + labelList cellMap; - for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) + // First pass - sorted order without duplicates + label nCompact = 0; + for (const label celli : selectedCells) { - const label own = agglom[faceOwner[facei]]; - const label nei = agglom[faceNeigh[facei]]; - - ++nFacesPerCell[own]; - ++nFacesPerCell[nei]; + // A bitSet has no negatives/duplicates, so just check the upper range + if (celli >= nCells) + { + break; + } + else + { + agglom[celli] = celli; + ++nCompact; + } } - for (const polyPatch& pp : pbm) + // Second pass - finalize mappings + if (nCompact) { - if (pp.coupled() && (parallel || !isA<processorPolyPatch>(pp))) - { - label bFacei = pp.start()-mesh.nInternalFaces(); + cellMap.resize(nCompact); + nCompact = 0; - for (const label facei : pp.range()) + for (label& celli : agglom) + { + if (celli >= 0) { - const label own = agglom[faceOwner[facei]]; - const label globalNei = globalNeighbour[bFacei]; + cellMap[nCompact] = celli; + celli = nCompact; + ++nCompact; - if - ( - !globalAgglom.isLocal(myProci, globalNei) - || globalAgglom.toLocal(myProci, globalNei) != own - ) + if (nCompact == cellMap.size()) { - ++nFacesPerCell[own]; + break; // Early termination } - - ++bFacei; } } } + globalMeshData::calcCellCells + ( + mesh, + agglom, + nCompact, // == cellMap.size() + parallel, + cellCells + ); - // Fill in offset and data - // ~~~~~~~~~~~~~~~~~~~~~~~ - - cellCells.resize_nocopy(nFacesPerCell); - cellCellWeights.resize_nocopy(nFacesPerCell); - - nFacesPerCell = 0; // Restart the count - - labelList& m = cellCells.values(); - scalarList& w = cellCellWeights.values(); - const labelList& offsets = cellCells.offsets(); + return cellMap; +} - // For internal faces is just offsetted owner and neighbour - for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) - { - const label own = agglom[faceOwner[facei]]; - const label nei = agglom[faceNeigh[facei]]; - const label ownIndex = offsets[own] + nFacesPerCell[own]++; - const label neiIndex = offsets[nei] + nFacesPerCell[nei]++; +Foam::labelList Foam::globalMeshData::calcCellCells +( + const polyMesh& mesh, + const labelUList& selectedCells, + CompactListList<label>& cellCells, + const bool parallel +) +{ + const label nCells = mesh.nCells(); - m[ownIndex] = globalAgglom.toGlobal(myProci, nei); - m[neiIndex] = globalAgglom.toGlobal(myProci, own); + labelList agglom(nCells, -1); + labelList cellMap; - w[ownIndex] = mag(mesh.faceAreas()[facei]); - w[neiIndex] = w[ownIndex]; - } - - // For boundary faces is offsetted coupled neighbour - for (const polyPatch& pp : pbm) + // First pass - creates a sorted order without duplicates + label nCompact = 0; + for (const label celli : selectedCells) { - if (pp.coupled() && (parallel || !isA<processorPolyPatch>(pp))) + // Check cell is in range, and squash out duplicates + if (celli >= 0 && celli < nCells && agglom[celli] < 0) { - label bFacei = pp.start()-mesh.nInternalFaces(); - - for (const label facei : pp.range()) - { - const label own = agglom[faceOwner[facei]]; - const label globalNei = globalNeighbour[bFacei]; - - if - ( - !globalAgglom.isLocal(myProci, globalNei) - || globalAgglom.toLocal(myProci, globalNei) != own - ) - { - const label ownIndex = offsets[own] + nFacesPerCell[own]++; - - m[ownIndex] = globalNei; - w[ownIndex] = mag(mesh.faceAreas()[facei]); - } - - ++bFacei; - } + agglom[celli] = celli; + ++nCompact; } } - - // Check for duplicates connections between cells - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - // Done as postprocessing step since we now have cellCells. - - // NB: Because of agglomeration, self-connections will occur - // and must be filtered out. - - if (!cellCells.empty()) + // Second pass - finalize mappings + if (nCompact) { - label newIndex = 0; - labelHashSet nbrCells; - - labelList& m = cellCells.values(); - scalarList& w = cellCellWeights.values(); - labelList& offsets = cellCells.offsets(); - - label startIndex = offsets[0]; + cellMap.resize(nCompact); + nCompact = 0; - const label nCellCells = cellCells.size(); - - for (label celli = 0; celli < nCellCells; ++celli) + for (label& celli : agglom) { - const label self = globalAgglom.toGlobal(myProci, celli); - - nbrCells.clear(); - nbrCells.insert(self); - - const label endIndex = offsets[celli+1]; - - for (label i = startIndex; i < endIndex; ++i) + if (celli >= 0) { - if (nbrCells.insert(m[i])) + cellMap[nCompact] = celli; + celli = nCompact; + ++nCompact; + + if (nCompact == cellMap.size()) { - m[newIndex] = m[i]; - w[newIndex] = w[i]; - ++newIndex; + break; // Early termination } } - startIndex = endIndex; - offsets[celli+1] = newIndex; } + } - m.resize(newIndex); - w.resize(newIndex); + globalMeshData::calcCellCells + ( + mesh, + agglom, + nCompact, // == cellMap.size() + parallel, + cellCells + ); - // Weights has identical offsets as cellCells - cellCellWeights.offsets() = cellCells.offsets(); - } + return cellMap; } diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C index 25ce60d1c8f656d9577a5ff85bbc52bf10e91f05..bdd3993d817e106e115346469ce7301958f20aba 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C @@ -1136,8 +1136,8 @@ Foam::globalPoints::globalPoints meshToProcPoint_(nPatchPoints_) { // Empty patch maps to signal storing mesh point labels - Map<label> meshToPatchPoint(0); - labelList patchToMeshPoint(0); + Map<label> meshToPatchPoint; + labelList patchToMeshPoint; calculateSharedPoints ( diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.H b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.H index 84fdd21f677941bd2e9cdb8f5793779ae48f46c8..3d2cb5947039eb78c62a48d522dd86e94f706762 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.H +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.H @@ -76,8 +76,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef globalPoints_H -#define globalPoints_H +#ifndef Foam_globalPoints_H +#define Foam_globalPoints_H #include "DynamicList.H" #include "indirectPrimitivePatch.H" @@ -309,39 +309,41 @@ public: // Access //- Global numbering of untransformed (mesh or patch) points - const globalIndex& globalIndices() const + const globalIndex& globalIndices() const noexcept { return globalIndices_; } //- Global numbering of transformed (mesh or patch) points - const globalIndexAndTransform& globalTransforms() const + const globalIndexAndTransform& globalTransforms() const noexcept { return globalTransforms_; } - //- Non-transformed connected points per point (in mapDistribute - // indices) - const labelListList& pointPoints() const + //- Non-transformed connected points per point + //- (in mapDistribute indices) + const labelListList& pointPoints() const noexcept { return pointPoints_; } - //- Non-transformed connected points per point (in mapDistribute - // indices) - labelListList& pointPoints() + //- Non-transformed connected points per point + //- (in mapDistribute indices) + labelListList& pointPoints() noexcept { return pointPoints_; } - //- Transformed points per point (in mapDistribute indices) - const labelListList& transformedPointPoints() const + //- Transformed points per point + //- (in mapDistribute indices) + const labelListList& transformedPointPoints() const noexcept { return transformedPointPoints_; } - //- Transformed points per point (in mapDistribute indices) - labelListList& transformedPointPoints() + //- Transformed points per point + //- (in mapDistribute indices) + labelListList& transformedPointPoints() noexcept { return transformedPointPoints_; } @@ -359,14 +361,14 @@ public: } //- From (mesh or patch) point to index in procPoints - const Map<label>& meshToProcPoint() const + const Map<label>& meshToProcPoint() const noexcept { return meshToProcPoint_; } - //- procPoints is per point the connected points (in - // globalTransformAndIndex point numbers) - const DynamicList<labelPairList>& procPoints() const + //- The procPoints are per point the connected points + //- (in globalTransformAndIndex point numbers) + const DynamicList<labelPairList>& procPoints() const noexcept { return procPoints_; } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.C index fd277b511dfb546f74ffae2f7ec37fe2758bc09d..4ac6c44ad107e44141d00a100bc0977f0afca0ba 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "cellMapper.H" -#include "demandDrivenData.H" #include "polyMesh.H" #include "mapPolyMesh.H" @@ -37,9 +37,9 @@ void Foam::cellMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ - || insertedCellLabelsPtr_ + || insertedObjectsPtr_ ) { FatalErrorInFunction @@ -51,129 +51,105 @@ void Foam::cellMapper::calcAddressing() const { // Direct addressing, no weights - directAddrPtr_ = new labelList(mpm_.cellMap()); - labelList& directAddr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList> + ( + // No retired cells, so cellMap().size() == mapperLen_ anyhow + labelList::subList(mpm_.cellMap(), mapperLen_) + ); + auto& directAddr = *directAddrPtr_; - // Not necessary to resize the list as there are no retired cells - // directAddr.setSize(mesh_.nCells()); + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - insertedCellLabelsPtr_ = new labelList(mesh_.nCells()); - labelList& insertedCells = *insertedCellLabelsPtr_; - - label nInsertedCells = 0; - - forAll(directAddr, celli) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (directAddr[celli] < 0) + inserted.resize(nInsertedObjects_); + + label nInserted = 0; + forAll(directAddr, i) + { + if (directAddr[i] < 0) + { + // Found inserted + directAddr[i] = 0; + inserted[nInserted] = i; + ++nInserted; + + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } + } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) { - // Found inserted cell - directAddr[celli] = 0; - insertedCells[nInsertedCells] = celli; - nInsertedCells++; + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedCells.setSize(nInsertedCells); } else { // Interpolative addressing - interpolationAddrPtr_ = new labelListList(mesh_.nCells()); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList>(mapperLen_); + auto& addr = *interpAddrPtr_; - weightsPtr_ = new scalarListList(mesh_.nCells()); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList>(mapperLen_); + auto& wght = *weightsPtr_; - const List<objectMap>& cfp = mpm_.cellsFromPointsMap(); - forAll(cfp, cfpI) + // Set the addressing and uniform weight + const auto setAddrWeights = [&] + ( + const List<objectMap>& maps, + const char * const nameOfMap + ) { - // Get addressing - const labelList& mo = cfp[cfpI].masterObjects(); - - label celli = cfp[cfpI].index(); - - if (addr[celli].size()) + for (const objectMap& map : maps) { - FatalErrorInFunction - << "Master cell " << celli - << " mapped from point cells " << mo - << " already destination of mapping." << abort(FatalError); - } - - // Map from masters, uniform weights - addr[celli] = mo; - w[celli] = scalarList(mo.size(), 1.0/mo.size()); - } - - const List<objectMap>& cfe = mpm_.cellsFromEdgesMap(); - - forAll(cfe, cfeI) - { - // Get addressing - const labelList& mo = cfe[cfeI].masterObjects(); + // Get index, addressing + const label celli = map.index(); + const labelList& mo = map.masterObjects(); + if (mo.empty()) continue; // safety - label celli = cfe[cfeI].index(); + if (addr[celli].size()) + { + FatalErrorInFunction + << "Master cell " << celli + << " already mapped, cannot apply " + << nameOfMap + << flatOutput(mo) << abort(FatalError); + } - if (addr[celli].size()) - { - FatalErrorInFunction - << "Master cell " << celli - << " mapped from edge cells " << mo - << " already destination of mapping." << abort(FatalError); + // Map from masters, uniform weights + addr[celli] = mo; + wght[celli] = scalarList(mo.size(), 1.0/mo.size()); } + }; - // Map from masters, uniform weights - addr[celli] = mo; - w[celli] = scalarList(mo.size(), 1.0/mo.size()); - } - - const List<objectMap>& cff = mpm_.cellsFromFacesMap(); - - forAll(cff, cffI) - { - // Get addressing - const labelList& mo = cff[cffI].masterObjects(); - - label celli = cff[cffI].index(); - - if (addr[celli].size()) - { - FatalErrorInFunction - << "Master cell " << celli - << " mapped from face cells " << mo - << " already destination of mapping." << abort(FatalError); - } - // Map from masters, uniform weights - addr[celli] = mo; - w[celli] = scalarList(mo.size(), 1.0/mo.size()); - } + setAddrWeights(mpm_.cellsFromPointsMap(), "point cells"); + setAddrWeights(mpm_.cellsFromEdgesMap(), "edge cells"); + setAddrWeights(mpm_.cellsFromFacesMap(), "face cells"); // Volume conservative mapping if possible - const List<objectMap>& cfc = mpm_.cellsFromCellsMap(); - - forAll(cfc, cfcI) - { - // Get addressing - const labelList& mo = cfc[cfcI].masterObjects(); - - label celli = cfc[cfcI].index(); - - if (addr[celli].size()) - { - FatalErrorInFunction - << "Master cell " << celli - << " mapped from cell cells " << mo - << " already destination of mapping." - << abort(FatalError); - } - - // Map from masters - addr[celli] = mo; - } + const List<objectMap>& cellsFromCells = mpm_.cellsFromCellsMap(); + setAddrWeights(cellsFromCells, "cell cells"); if (mpm_.hasOldCellVolumes()) { @@ -185,182 +161,188 @@ void Foam::cellMapper::calcAddressing() const { FatalErrorInFunction << "cellVolumes size " << V.size() - << " is not the old number of cells " << sizeBeforeMapping() + << " != old number of cells " << sizeBeforeMapping() << ". Are your cellVolumes already mapped?" << " (new number of cells " << size() << ")" << abort(FatalError); } - forAll(cfc, cfcI) + for (const auto& map : cellsFromCells) { - const labelList& mo = cfc[cfcI].masterObjects(); - - label celli = cfc[cfcI].index(); + // Get index, addressing + const label celli = map.index(); + const labelList& mo = map.masterObjects(); + if (mo.empty()) continue; // safety - w[celli].setSize(mo.size()); + // wght[celli] is already sized and uniform weighted + auto& wght_cell = wght[celli]; - if (mo.size()) + scalar sumV = 0; + forAll(mo, ci) { - scalar sumV = 0; - forAll(mo, ci) - { - w[celli][ci] = V[mo[ci]]; - sumV += V[mo[ci]]; - } - if (sumV > VSMALL) - { - forAll(mo, ci) - { - w[celli][ci] /= sumV; - } - } - else + wght_cell[ci] = V[mo[ci]]; + sumV += V[mo[ci]]; + } + if (sumV > VSMALL) + { + for (auto& w : wght_cell) { - // Exception: zero volume. Use uniform mapping - w[celli] = scalarList(mo.size(), 1.0/mo.size()); + w /= sumV; } } + else + { + // Exception: zero volume. Use uniform mapping + wght_cell = (1.0/mo.size()); + } } } - else + + + // Do mapped cells. + // - may already have been set, so check if addressing still empty(). + { - // Uniform weighted + const labelList& map = mpm_.cellMap(); - forAll(cfc, cfcI) + // The cellMap.size() == nCells() anyhow + for (label celli = 0; celli < mapperLen_; ++celli) { - const labelList& mo = cfc[cfcI].masterObjects(); - - label celli = cfc[cfcI].index(); + const label mappedi = map[celli]; - w[celli] = scalarList(mo.size(), 1.0/mo.size()); + if (mappedi >= 0 && addr[celli].empty()) + { + // Mapped from a single cell + addr[celli].resize(1, mappedi); + wght[celli].resize(1, 1.0); + } } } - // Do mapped faces. Note that can already be set from cellsFromCells - // so check if addressing size still zero. + // Grab inserted points (for them the size of addressing is still zero) - const labelList& cm = mpm_.cellMap(); + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - forAll(cm, celli) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (cm[celli] > -1 && addr[celli].empty()) - { - // Mapped from a single cell - addr[celli] = labelList(1, cm[celli]); - w[celli] = scalarList(1, 1.0); - } - } - - // Grab inserted points (for them the size of addressing is still zero) + inserted.resize(nInsertedObjects_); - insertedCellLabelsPtr_ = new labelList(mesh_.nCells()); - labelList& insertedCells = *insertedCellLabelsPtr_; + label nInserted = 0; + forAll(addr, i) + { + if (addr[i].empty()) + { + // Mapped from dummy cell 0 + addr[i].resize(1, 0); + wght[i].resize(1, 1.0); - label nInsertedCells = 0; + inserted[nInserted] = i; + ++nInserted; - forAll(addr, celli) - { - if (addr[celli].empty()) + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } + } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) { - // Mapped from a dummy cell - addr[celli] = labelList(1, Zero); - w[celli] = scalarList(1, scalar(1)); - - insertedCells[nInsertedCells] = celli; - nInsertedCells++; + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedCells.setSize(nInsertedCells); } } -void Foam::cellMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - deleteDemandDrivenData(insertedCellLabelsPtr_); -} +// void Foam::cellMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// insertedObjectsPtr_.reset(nullptr); +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::cellMapper::cellMapper(const mapPolyMesh& mpm) : - mesh_(mpm.mesh()), mpm_(mpm), - insertedCells_(true), - direct_(false), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr), - insertedCellLabelsPtr_(nullptr) -{ - // Check for possibility of direct mapping - if + mapperLen_(mpm.mesh().nCells()), + nInsertedObjects_(0), + direct_ ( - mpm_.cellsFromPointsMap().empty() - && mpm_.cellsFromEdgesMap().empty() - && mpm_.cellsFromFacesMap().empty() - && mpm_.cellsFromCellsMap().empty() + // Mapping without interpolation? + mpm.cellsFromPointsMap().empty() + && mpm.cellsFromEdgesMap().empty() + && mpm.cellsFromFacesMap().empty() + && mpm.cellsFromCellsMap().empty() ) +{ + const auto& directMap = mpm_.cellMap(); + + if (!mapperLen_) { + // Empty mesh direct_ = true; + nInsertedObjects_ = 0; } - else - { - direct_ = false; - } - - // Check for inserted cells - if (direct_ && (mpm_.cellMap().empty() || min(mpm_.cellMap()) > -1)) + else if (direct_) { - insertedCells_ = false; + // Number of inserted cells (-ve values) + nInsertedObjects_ = std::count_if + ( + directMap.cbegin(), + directMap.cbegin(mapperLen_), + [](label i) { return (i < 0); } + ); } else { - // Need to check all 3 lists to see if there are inserted cells - // with no owner + // Check if there are inserted cells with no owner + // (check all lists) - // Make a copy of the cell map, add the entried for cells from points, - // cells from edges and cells from faces and check for left-overs - labelList cm(mesh_.nCells(), -1); + bitSet unmapped(mapperLen_, true); - const List<objectMap>& cfp = mpm_.cellsFromPointsMap(); + unmapped.unset(directMap); // direct mapped - forAll(cfp, cfpI) + for (const auto& map : mpm_.cellsFromPointsMap()) { - cm[cfp[cfpI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - const List<objectMap>& cfe = mpm_.cellsFromEdgesMap(); - - forAll(cfe, cfeI) + for (const auto& map : mpm_.cellsFromEdgesMap()) { - cm[cfe[cfeI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - const List<objectMap>& cff = mpm_.cellsFromFacesMap(); - - forAll(cff, cffI) + for (const auto& map : mpm_.cellsFromFacesMap()) { - cm[cff[cffI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - const List<objectMap>& cfc = mpm_.cellsFromCellsMap(); - - forAll(cfc, cfcI) + for (const auto& map : mpm_.cellsFromCellsMap()) { - cm[cfc[cfcI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - if (min(cm) < 0) - { - insertedCells_ = true; - } + nInsertedObjects_ = label(unmapped.count()); } } @@ -368,15 +350,14 @@ Foam::cellMapper::cellMapper(const mapPolyMesh& mpm) // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::cellMapper::~cellMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::cellMapper::size() const { + // OR: return mapperLen_; return mpm_.cellMap().size(); } @@ -422,12 +403,12 @@ const Foam::labelListList& Foam::cellMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } @@ -451,20 +432,18 @@ const Foam::scalarListList& Foam::cellMapper::weights() const const Foam::labelList& Foam::cellMapper::insertedObjectLabels() const { - if (!insertedCellLabelsPtr_) + if (!insertedObjectsPtr_) { - if (!insertedObjects()) + if (!nInsertedObjects_) { - // There are no inserted cells - insertedCellLabelsPtr_ = new labelList(0); - } - else - { - calcAddressing(); + // No inserted objects will be created + return labelList::null(); } + + calcAddressing(); } - return *insertedCellLabelsPtr_; + return *insertedObjectsPtr_; } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.H index 60eaedd82a36efaaf4bd660eed608a6b11f9e903..649b70dab99f4096806ac55307d752c38f4775a9 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/cellMapper/cellMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cellMapper_H -#define cellMapper_H +#ifndef Foam_cellMapper_H +#define Foam_cellMapper_H #include "morphFieldMapper.H" @@ -46,8 +47,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes -class polyMesh; +// Forward Declarations class mapPolyMesh; /*---------------------------------------------------------------------------*\ @@ -58,60 +58,56 @@ class cellMapper : public morphFieldMapper { - // Private data - - //- Reference to polyMesh - const polyMesh& mesh_; + // Private Data //- Reference to mapPolyMesh const mapPolyMesh& mpm_; - //- Are there any inserted (unmapped) cells - bool insertedCells_; + //- The size of the mapper = polyMesh::nCells() + const label mapperLen_; + + //- Number of inserted (unmapped) cells + label nInsertedObjects_; //- Is the mapping direct bool direct_; - // Demand-driven private data + // Demand-Driven Data //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; //- Inserted cells - mutable labelList* insertedCellLabelsPtr_; + mutable std::unique_ptr<labelList> insertedObjectsPtr_; // Private Member Functions - //- No copy construct - cellMapper(const cellMapper&) = delete; - - //- No copy assignment - void operator=(const cellMapper&) = delete; - - //- Calculate addressing for mapping with inserted cells void calcAddressing() const; - //- Clear out local storage - void clearOut(); +public: + // Generated Methods -public: + //- No copy construct + cellMapper(const cellMapper&) = delete; + + //- No copy assignment + void operator=(const cellMapper&) = delete; - // Static data members // Constructors //- Construct from mapPolyMesh - cellMapper(const mapPolyMesh& mpm); + explicit cellMapper(const mapPolyMesh& mpm); //- Destructor @@ -120,7 +116,7 @@ public: // Member Functions - //- Return size + //- The mapper size virtual label size() const; //- Return size before mapping @@ -132,6 +128,7 @@ public: return direct_; } + //- Are there unmapped values? virtual bool hasUnmapped() const { return insertedObjects(); @@ -149,7 +146,7 @@ public: //- Are there any inserted cells virtual bool insertedObjects() const { - return insertedCells_; + return bool(nInsertedObjects_); } //- Return list of inserted cells diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.C index 7745f659049607657d722c56e6253eb901c45526..d638fe3efc655e9fd51ba9a7afb3618da82e400f 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "faceMapper.H" -#include "demandDrivenData.H" #include "polyMesh.H" #include "mapPolyMesh.H" @@ -37,9 +37,9 @@ void Foam::faceMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ - || insertedFaceLabelsPtr_ + || insertedObjectsPtr_ ) { FatalErrorInFunction @@ -51,223 +51,240 @@ void Foam::faceMapper::calcAddressing() const { // Direct addressing, no weights - directAddrPtr_ = new labelList(mpm_.faceMap()); - labelList& directAddr = *directAddrPtr_; + // Restrict addressing list to contain only live faces + directAddrPtr_ = std::make_unique<labelList> + ( + labelList::subList(mpm_.faceMap(), mapperLen_) + ); + auto& directAddr = *directAddrPtr_; - // Reset the size of addressing list to contain only live faces - directAddr.setSize(mesh_.nFaces()); + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - insertedFaceLabelsPtr_ = new labelList(mesh_.nFaces()); - labelList& insertedFaces = *insertedFaceLabelsPtr_; - - label nInsertedFaces = 0; - - forAll(directAddr, facei) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (directAddr[facei] < 0) + inserted.resize(nInsertedObjects_); + + label nInserted = 0; + forAll(directAddr, i) { - // Found inserted face - directAddr[facei] = 0; - insertedFaces[nInsertedFaces] = facei; - nInsertedFaces++; + if (directAddr[i] < 0) + { + // Found inserted + directAddr[i] = 0; + inserted[nInserted] = i; + ++nInserted; + + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) + { + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; + } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedFaces.setSize(nInsertedFaces); } else { // Interpolative addressing - interpolationAddrPtr_ = new labelListList(mesh_.nFaces()); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList>(mapperLen_); + auto& addr = *interpAddrPtr_; - weightsPtr_ = new scalarListList(mesh_.nFaces()); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList>(mapperLen_); + auto& wght = *weightsPtr_; - const List<objectMap>& ffp = mpm_.facesFromPointsMap(); - forAll(ffp, ffpI) + // Set the addressing and uniform weight + const auto setAddrWeights = [&] + ( + const List<objectMap>& maps, + const char * const nameOfMap + ) { - // Get addressing - const labelList& mo = ffp[ffpI].masterObjects(); - - label facei = ffp[ffpI].index(); - - if (addr[facei].size()) + for (const objectMap& map : maps) { - FatalErrorInFunction - << "Master face " << facei - << " mapped from point faces " << mo - << " already destination of mapping." << abort(FatalError); + // Get index, addressing + const label facei = map.index(); + const labelList& mo = map.masterObjects(); + if (mo.empty()) continue; // safety + + if (addr[facei].size()) + { + FatalErrorInFunction + << "Master face " << facei + << " already mapped, cannot apply " + << nameOfMap + << flatOutput(mo) << abort(FatalError); + } + + // Map from masters, uniform weights + addr[facei] = mo; + wght[facei] = scalarList(mo.size(), 1.0/mo.size()); } + }; - // Map from masters, uniform weights - addr[facei] = mo; - w[facei] = scalarList(mo.size(), 1.0/mo.size()); - } - - const List<objectMap>& ffe = mpm_.facesFromEdgesMap(); - - forAll(ffe, ffeI) - { - // Get addressing - const labelList& mo = ffe[ffeI].masterObjects(); - - label facei = ffe[ffeI].index(); - if (addr[facei].size()) - { - FatalErrorInFunction - << "Master face " << facei - << " mapped from edge faces " << mo - << " already destination of mapping." << abort(FatalError); - } + setAddrWeights(mpm_.facesFromPointsMap(), "point faces"); + setAddrWeights(mpm_.facesFromEdgesMap(), "edge faces"); + setAddrWeights(mpm_.facesFromFacesMap(), "face faces"); - // Map from masters, uniform weights - addr[facei] = mo; - w[facei] = scalarList(mo.size(), 1.0/mo.size()); - } - const List<objectMap>& fff = mpm_.facesFromFacesMap(); + // Do mapped faces. + // - may already have been set, so check if addressing still empty(). - forAll(fff, fffI) { - // Get addressing - const labelList& mo = fff[fffI].masterObjects(); - - label facei = fff[fffI].index(); + const labelList& map = mpm_.faceMap(); - if (addr[facei].size()) + // NB: faceMap can be longer than nFaces() + for (label facei = 0; facei < mapperLen_; ++facei) { - FatalErrorInFunction - << "Master face " << facei - << " mapped from face faces " << mo - << " already destination of mapping." << abort(FatalError); - } - - // Map from masters, uniform weights - addr[facei] = mo; - w[facei] = scalarList(mo.size(), 1.0/mo.size()); - } - - - // Do mapped faces. Note that can already be set from facesFromFaces - // so check if addressing size still zero. - const labelList& fm = mpm_.faceMap(); - - forAll(fm, facei) - { - if (fm[facei] > -1 && addr[facei].empty()) - { - // Mapped from a single face - addr[facei] = labelList(1, fm[facei]); - w[facei] = scalarList(1, 1.0); + const label mappedi = map[facei]; + + if (mappedi >= 0 && addr[facei].empty()) + { + // Mapped from a single face + addr[facei].resize(1, mappedi); + wght[facei].resize(1, 1.0); + } } } // Grab inserted faces (for them the size of addressing is still zero) - insertedFaceLabelsPtr_ = new labelList(mesh_.nFaces()); - labelList& insertedFaces = *insertedFaceLabelsPtr_; - - label nInsertedFaces = 0; + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; - forAll(addr, facei) + // The nInsertedObjects_ already counted in the constructor + if (nInsertedObjects_) { - if (addr[facei].empty()) - { - // Mapped from a dummy face - addr[facei] = labelList(1, Zero); - w[facei] = scalarList(1, scalar(1)); + inserted.resize(nInsertedObjects_); - insertedFaces[nInsertedFaces] = facei; - nInsertedFaces++; + label nInserted = 0; + forAll(addr, i) + { + if (addr[i].empty()) + { + // Mapped from dummy face 0 + addr[i].resize(1, 0); + wght[i].resize(1, 1.0); + + inserted[nInserted] = i; + ++nInserted; + + // TBD: check (nInsertedObjects_ < nInserted)? + #ifdef FULLDEBUG + if (nInsertedObjects_ < nInserted) + { + FatalErrorInFunction + << "Unexpected insert of more than " + << nInsertedObjects_ << " items\n" + << abort(FatalError); + } + #endif + } + } + // TBD: check (nInserted < nInsertedObjects_)? + #ifdef FULLDEBUG + if (nInserted < nInsertedObjects_) + { + WarningInFunction + << "Found " << nInserted << " instead of " + << nInsertedObjects_ << " items to insert\n"; } + #endif + // The resize should be unnecessary + inserted.resize(nInserted); } - - insertedFaces.setSize(nInsertedFaces); } } -void Foam::faceMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - deleteDemandDrivenData(insertedFaceLabelsPtr_); -} +// void Foam::faceMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// insertedObjectsPtr_.reset(nullptr); +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::faceMapper::faceMapper(const mapPolyMesh& mpm) : - mesh_(mpm.mesh()), mpm_(mpm), - insertedFaces_(true), - direct_(false), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr), - insertedFaceLabelsPtr_(nullptr) -{ - // Check for possibility of direct mapping - if + mapperLen_(mpm.mesh().nFaces()), + nInsertedObjects_(0), + direct_ ( - mpm_.facesFromPointsMap().empty() - && mpm_.facesFromEdgesMap().empty() - && mpm_.facesFromFacesMap().empty() + // Mapping without interpolation? + mpm.facesFromPointsMap().empty() + && mpm.facesFromEdgesMap().empty() + && mpm.facesFromFacesMap().empty() ) +{ + const auto& directMap = mpm_.faceMap(); + + if (!mapperLen_) { + // Empty mesh direct_ = true; + nInsertedObjects_ = 0; } - else - { - direct_ = false; - } - - // Check for inserted faces - if (direct_ && (mpm_.faceMap().empty() || min(mpm_.faceMap()) > -1)) + else if (direct_) { - insertedFaces_ = false; + // Number of inserted faces (-ve values) + nInsertedObjects_ = std::count_if + ( + directMap.cbegin(), + directMap.cbegin(mapperLen_), + [](label i) { return (i < 0); } + ); } else { - // Need to check all 3 lists to see if there are inserted faces - // with no owner + // Check if there are inserted faces with no owner + // (check all lists) - // Make a copy of the face map, add the entries for faces from points - // and faces from edges and check for left-overs - labelList fm(mesh_.nFaces(), -1); + bitSet unmapped(mapperLen_, true); - const List<objectMap>& ffp = mpm_.facesFromPointsMap(); + unmapped.unset(directMap); // direct mapped - forAll(ffp, ffpI) + for (const auto& map : mpm_.facesFromPointsMap()) { - fm[ffp[ffpI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - const List<objectMap>& ffe = mpm_.facesFromEdgesMap(); - - forAll(ffe, ffeI) + for (const auto& map : mpm_.facesFromEdgesMap()) { - fm[ffe[ffeI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - const List<objectMap>& fff = mpm_.facesFromFacesMap(); - - forAll(fff, fffI) + for (const auto& map : mpm_.facesFromFacesMap()) { - fm[fff[fffI].index()] = 0; + if (!map.empty()) unmapped.unset(map.index()); } - if (min(fm) < 0) - { - insertedFaces_ = true; - } + nInsertedObjects_ = label(unmapped.count()); } } @@ -275,16 +292,14 @@ Foam::faceMapper::faceMapper(const mapPolyMesh& mpm) // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::faceMapper::~faceMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::faceMapper::size() const { - return mesh_.nFaces(); + return mapperLen_; } @@ -335,12 +350,12 @@ const Foam::labelListList& Foam::faceMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } @@ -364,20 +379,18 @@ const Foam::scalarListList& Foam::faceMapper::weights() const const Foam::labelList& Foam::faceMapper::insertedObjectLabels() const { - if (!insertedFaceLabelsPtr_) + if (!insertedObjectsPtr_) { - if (!insertedObjects()) - { - // There are no inserted faces - insertedFaceLabelsPtr_ = new labelList(0); - } - else + if (!nInsertedObjects_) { - calcAddressing(); + // No inserted objects will be created + return labelList::null(); } + + calcAddressing(); } - return *insertedFaceLabelsPtr_; + return *insertedObjectsPtr_; } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.H index b5f43bad230ade7f5951bed0a5674dfb6c3ddf62..a1b331835d7d5b586442f05521bf190b5bd06fa9 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/faceMapper/faceMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faceMapper_H -#define faceMapper_H +#ifndef Foam_faceMapper_H +#define Foam_faceMapper_H #include "morphFieldMapper.H" #include "HashSet.H" @@ -47,8 +48,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes -class polyMesh; +// Forward Declarations class mapPolyMesh; /*---------------------------------------------------------------------------*\ @@ -59,60 +59,56 @@ class faceMapper : public morphFieldMapper { - // Private data - - //- Reference to polyMesh - const polyMesh& mesh_; + // Private Data //- Reference to mapPolyMesh const mapPolyMesh& mpm_; - //- Are there any inserted (unmapped) faces - bool insertedFaces_; + //- The size of the mapper = polyMesh::nFaces() + const label mapperLen_; + + //- Number of inserted (unmapped) faces + label nInsertedObjects_; //- Is the mapping direct bool direct_; - // Demand-driven private data + // Demand-Driven Data //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; //- Inserted faces - mutable labelList* insertedFaceLabelsPtr_; + mutable std::unique_ptr<labelList> insertedObjectsPtr_; // Private Member Functions - //- No copy construct - faceMapper(const faceMapper&) = delete; - - //- No copy assignment - void operator=(const faceMapper&) = delete; - - //- Calculate addressing for mapping with inserted faces void calcAddressing() const; - //- Clear out local storage - void clearOut(); +public: + // Generated Methods -public: + //- No copy construct + faceMapper(const faceMapper&) = delete; + + //- No copy assignment + void operator=(const faceMapper&) = delete; - // Static data members // Constructors //- Construct from mapPolyMesh - faceMapper(const mapPolyMesh& mpm); + explicit faceMapper(const mapPolyMesh& mpm); //- Destructor @@ -121,7 +117,7 @@ public: // Member Functions - //- Return size + //- The mapper size virtual label size() const; //- Return size of field before mapping @@ -165,7 +161,7 @@ public: //- Are there any inserted faces virtual bool insertedObjects() const { - return insertedFaces_; + return bool(nInsertedObjects_); } //- Return list of inserted faces diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.C index de98bcf8791d5a69df48d7f19e8ff499c273eb28..65e2b70443a55f2ae762d4e13831d1b93aef32d5 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014-2015 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +38,7 @@ namespace Foam // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -bool Foam::IOmapDistribute::readContents() +bool Foam::IOmapDistribute::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -60,7 +60,7 @@ Foam::IOmapDistribute::IOmapDistribute(const IOobject& io) // Warn for MUST_READ_IF_MODIFIED warnNoRereading<IOmapDistribute>(); - readContents(); + readIOcontents(); } @@ -75,7 +75,7 @@ Foam::IOmapDistribute::IOmapDistribute // Warn for MUST_READ_IF_MODIFIED warnNoRereading<IOmapDistribute>(); - if (!readContents()) + if (!readIOcontents()) { mapDistribute::operator=(map); } @@ -95,7 +95,7 @@ Foam::IOmapDistribute::IOmapDistribute mapDistribute::transfer(map); - readContents(); + readIOcontents(); } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.H index eee7b25883d1b2c6584f6b210d5d0783814ff850..59cc1cc141f8426964c4435ac92b6fc08c1eb1b3 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,7 @@ class IOmapDistribute // Private Member Functions //- Read if IOobject flags set. Return true if read. - bool readContents(); + bool readIOcontents(); public: diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.C index d4dd4c6f076f960bcb46c26d8dca0d0fbbdf34c0..8f35bbedaa269eabeecda102e895ea3311108a03 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +38,7 @@ namespace Foam // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -bool Foam::IOmapDistributePolyMesh::readContents() +bool Foam::IOmapDistributePolyMesh::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -60,7 +60,7 @@ Foam::IOmapDistributePolyMesh::IOmapDistributePolyMesh(const IOobject& io) // Warn for MUST_READ_IF_MODIFIED warnNoRereading<IOmapDistributePolyMesh>(); - readContents(); + readIOcontents(); } @@ -75,7 +75,7 @@ Foam::IOmapDistributePolyMesh::IOmapDistributePolyMesh // Warn for MUST_READ_IF_MODIFIED warnNoRereading<IOmapDistributePolyMesh>(); - if (!readContents()) + if (!readIOcontents()) { mapDistributePolyMesh::operator=(map); } @@ -95,7 +95,7 @@ Foam::IOmapDistributePolyMesh::IOmapDistributePolyMesh mapDistributePolyMesh::transfer(map); - readContents(); + readIOcontents(); } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.H index 5dd4a45b1114914eda2cd7bd00fe473599ad348f..b0d85a2afd79d8ee9aa947958ac3905eb8c6d908 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistributePolyMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,7 @@ class IOmapDistributePolyMesh // Private Member Functions //- Read if IOobject flags set. Return true if read. - bool readContents(); + bool readIOcontents(); public: diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBase.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBase.C index 42905a08d1d4decea6eaea7df65f9c4f7d1fa45c..87d8da09133b3e976296405d227d849a49fe518f 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBase.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBase.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -227,15 +227,8 @@ Foam::List<Foam::labelPair> Foam::mapDistributeBase::schedule // Receive and merge for (const int proci : UPstream::subProcs(comm)) { - IPstream fromProc - ( - UPstream::commsTypes::scheduled, - proci, - 0, - tag, - comm - ); - List<labelPair> nbrData(fromProc); + List<labelPair> nbrData; + IPstream::recv(nbrData, proci, tag, comm); for (const labelPair& connection : nbrData) { @@ -247,15 +240,7 @@ Foam::List<Foam::labelPair> Foam::mapDistributeBase::schedule { if (UPstream::parRun()) { - OPstream toMaster - ( - UPstream::commsTypes::scheduled, - UPstream::masterNo(), - 0, - tag, - comm - ); - toMaster << allComms; + OPstream::send(allComms, UPstream::masterNo(), tag, comm); } } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBaseTemplates.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBaseTemplates.C index a7279cfd2413e55c1be2f45fa7673ef03dca8f82..ce75d448405bb4cb3bfee157c84a20d4f6d29e58 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBaseTemplates.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/mapDistributeBaseTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -349,7 +349,10 @@ void Foam::mapDistributeBase::receive { FatalErrorInFunction << "From processor " << proci - << " : unallocated receive field" << nl + << " : unallocated receive field." + << " Expected size " << map.size() + << " on comm " << comm + << " with procs " << UPstream::nProcs(comm) << nl << exit(FatalError); } } @@ -491,7 +494,7 @@ void Foam::mapDistributeBase::distribute return; } - if (commsType == UPstream::commsTypes::blocking) + if (commsType == UPstream::commsTypes::buffered) { // Since buffered sending can reuse the field to collect the // received data. @@ -503,19 +506,13 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - OPstream os - ( - UPstream::commsTypes::blocking, - proci, - 0, - tag, - comm - ); List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); + // buffered send + OPstream os(commsType, proci, 0, tag, comm); os << subField; } } @@ -552,15 +549,8 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - IPstream is - ( - UPstream::commsTypes::blocking, - proci, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, proci, tag, comm); checkReceivedSize(proci, map.size(), subField.size()); @@ -620,15 +610,6 @@ void Foam::mapDistributeBase::distribute const label nbrProc = twoProcs.second(); { - OPstream os - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - const labelList& map = subMap[nbrProc]; List<T> subField @@ -636,18 +617,12 @@ void Foam::mapDistributeBase::distribute accessAndFlip(field, map, subHasFlip, negOp) ); - os << subField; + OPstream::send(subField, nbrProc, tag, comm); } { - IPstream is - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, nbrProc, tag, comm); + const labelList& map = constructMap[nbrProc]; checkReceivedSize(nbrProc, map.size(), subField.size()); @@ -669,15 +644,9 @@ void Foam::mapDistributeBase::distribute const label nbrProc = twoProcs.first(); { - IPstream is - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, nbrProc, tag, comm); + const labelList& map = constructMap[nbrProc]; checkReceivedSize(nbrProc, map.size(), subField.size()); @@ -693,15 +662,6 @@ void Foam::mapDistributeBase::distribute ); } { - OPstream os - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - const labelList& map = subMap[nbrProc]; List<T> subField @@ -709,7 +669,7 @@ void Foam::mapDistributeBase::distribute accessAndFlip(field, map, subHasFlip, negOp) ); - os << subField; + OPstream::send(subField, nbrProc, tag, comm); } } } @@ -721,7 +681,7 @@ void Foam::mapDistributeBase::distribute if (!is_contiguous<T>::value) { - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking, tag, comm); + PstreamBuffers pBufs(comm, tag); // Stream data into buffer for (const int proci : UPstream::allProcs(comm)) @@ -730,13 +690,12 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - UOPstream os(proci, pBufs); - List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); + UOPstream os(proci, pBufs); os << subField; } } @@ -980,7 +939,7 @@ void Foam::mapDistributeBase::distribute return; } - if (commsType == UPstream::commsTypes::blocking) + if (commsType == UPstream::commsTypes::buffered) { // Since buffered sending can reuse the field to collect the // received data. @@ -992,20 +951,13 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - OPstream os - ( - UPstream::commsTypes::blocking, - proci, - 0, - tag, - comm - ); - List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); + // buffered send + OPstream os(commsType, proci, 0, tag, comm); os << subField; } } @@ -1041,15 +993,8 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - IPstream is - ( - UPstream::commsTypes::blocking, - proci, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, proci, tag, comm); checkReceivedSize(proci, map.size(), subField.size()); @@ -1107,33 +1052,17 @@ void Foam::mapDistributeBase::distribute const label nbrProc = twoProcs.second(); { - OPstream os - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - const labelList& map = subMap[nbrProc]; List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); - os << subField; + OPstream::send(subField, nbrProc, tag, comm); } { - IPstream is - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, nbrProc, tag, comm); const labelList& map = constructMap[nbrProc]; @@ -1156,15 +1085,8 @@ void Foam::mapDistributeBase::distribute const label nbrProc = twoProcs.first(); { - IPstream is - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - List<T> subField(is); + List<T> subField; + IPstream::recv(subField, nbrProc, tag, comm); const labelList& map = constructMap[nbrProc]; @@ -1181,22 +1103,13 @@ void Foam::mapDistributeBase::distribute ); } { - OPstream os - ( - UPstream::commsTypes::scheduled, - nbrProc, - 0, - tag, - comm - ); - const labelList& map = subMap[nbrProc]; List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); - os << subField; + OPstream::send(subField, nbrProc, tag, comm); } } } @@ -1208,7 +1121,7 @@ void Foam::mapDistributeBase::distribute if (!is_contiguous<T>::value) { - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking, tag, comm); + PstreamBuffers pBufs(comm, tag); // Stream data into buffer for (const int proci : UPstream::allProcs(comm)) @@ -1217,13 +1130,12 @@ void Foam::mapDistributeBase::distribute if (proci != myRank && map.size()) { - UOPstream os(proci, pBufs); - List<T> subField ( accessAndFlip(field, map, subHasFlip, negOp) ); + UOPstream os(proci, pBufs); os << subField; } } @@ -1433,13 +1345,12 @@ void Foam::mapDistributeBase::send if (map.size()) { - UOPstream os(proci, pBufs); - List<T> subField ( accessAndFlip(field, map, subHasFlip_, flipOp()) ); + UOPstream os(proci, pBufs); os << subField; } } diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.C b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.C index ee7694bb1129257ad2e34219cb3d8c0a88fb73f4..5baa1ac33fde4356673163039280e46071e5fd6a 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.C @@ -257,7 +257,7 @@ Foam::mapPolyMesh::mapPolyMesh oldCellVolumesPtr_ = oldCellVolumesPtr.clone(); } - if (oldPatchStarts_.size() > 0) + if (oldPatchStarts_.size()) { // Calculate old patch sizes for (label patchi = 0; patchi < oldPatchStarts_.size() - 1; patchi++) diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.H index a7b8f955a5e55a2487b7a97379f2b80259b2cfb1..38bb76e580af9d0326cde6cb3d840c4087546831 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapPolyMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -153,6 +153,7 @@ SourceFiles namespace Foam { +// Forward Declarations class polyMesh; /*---------------------------------------------------------------------------*\ @@ -161,7 +162,7 @@ class polyMesh; class mapPolyMesh { - // Private data + // Private Data //- Reference to polyMesh const polyMesh& mesh_; @@ -273,7 +274,9 @@ class mapPolyMesh autoPtr<scalarField> oldCellVolumesPtr_; - // Private Member Functions +public: + + // Generated Methods //- No copy construct mapPolyMesh(const mapPolyMesh&) = delete; @@ -282,14 +285,13 @@ class mapPolyMesh void operator=(const mapPolyMesh&) = delete; -public: - // Constructors //- Construct from mesh mapPolyMesh(const polyMesh& mesh); - //- Construct from components. Copy (except for oldCellVolumes). + //- Copy construct from components, + //- except for oldCellVolumes which is move construct mapPolyMesh ( const polyMesh& mesh, @@ -356,18 +358,19 @@ public: const bool reuse ); + // Member Functions // Access //- Return polyMesh - const polyMesh& mesh() const + const polyMesh& mesh() const noexcept { return mesh_; } //- Number of old points - label nOldPoints() const + label nOldPoints() const noexcept { return nOldPoints_; } @@ -379,13 +382,13 @@ public: } //- Number of old faces - label nOldFaces() const + label nOldFaces() const noexcept { return nOldFaces_; } //- Number of old cells - label nOldCells() const + label nOldCells() const noexcept { return nOldCells_; } @@ -394,13 +397,13 @@ public: // Contains the old point label for all new points. // For preserved points this is the old point label. // For added points this is the master point ID - const labelList& pointMap() const + const labelList& pointMap() const noexcept { return pointMap_; } //- Points originating from points - const List<objectMap>& pointsFromPointsMap() const + const List<objectMap>& pointsFromPointsMap() const noexcept { return pointsFromPointsMap_; } @@ -408,56 +411,56 @@ public: //- Old face map. // Contains a list of old face labels for every new face. // Warning: this map contains invalid entries for new faces - const labelList& faceMap() const + const labelList& faceMap() const noexcept { return faceMap_; } //- Faces inflated from points - const List<objectMap>& facesFromPointsMap() const + const List<objectMap>& facesFromPointsMap() const noexcept { return facesFromPointsMap_; } //- Faces inflated from edges - const List<objectMap>& facesFromEdgesMap() const + const List<objectMap>& facesFromEdgesMap() const noexcept { return facesFromEdgesMap_; } //- Faces originating from faces - const List<objectMap>& facesFromFacesMap() const + const List<objectMap>& facesFromFacesMap() const noexcept { return facesFromFacesMap_; } //- Old cell map. // Contains old cell label for all preserved cells. - const labelList& cellMap() const + const labelList& cellMap() const noexcept { return cellMap_; } //- Cells inflated from points - const List<objectMap>& cellsFromPointsMap() const + const List<objectMap>& cellsFromPointsMap() const noexcept { return cellsFromPointsMap_; } //- Cells inflated from edges - const List<objectMap>& cellsFromEdgesMap() const + const List<objectMap>& cellsFromEdgesMap() const noexcept { return cellsFromEdgesMap_; } //- Cells inflated from faces - const List<objectMap>& cellsFromFacesMap() const + const List<objectMap>& cellsFromFacesMap() const noexcept { return cellsFromFacesMap_; } //- Cells originating from cells - const List<objectMap>& cellsFromCellsMap() const + const List<objectMap>& cellsFromCellsMap() const noexcept { return cellsFromCellsMap_; } @@ -467,7 +470,7 @@ public: //- Reverse point map // Contains new point label for all old and added points - const labelList& reversePointMap() const + const labelList& reversePointMap() const noexcept { return reversePointMap_; } @@ -499,7 +502,7 @@ public: //- Reverse face map // Contains new face label for all old and added faces - const labelList& reverseFaceMap() const + const labelList& reverseFaceMap() const noexcept { return reverseFaceMap_; } @@ -530,7 +533,7 @@ public: //- Reverse cell map // Contains new cell label for all old and added cells - const labelList& reverseCellMap() const + const labelList& reverseCellMap() const noexcept { return reverseCellMap_; } @@ -560,7 +563,7 @@ public: } //- Map of flipped face flux faces - const labelHashSet& flipFaceFlux() const + const labelHashSet& flipFaceFlux() const noexcept { return flipFaceFlux_; } @@ -568,7 +571,7 @@ public: //- Patch point renumbering // For every preserved point on a patch give the old position. // For added points, the index is set to -1 - const labelListList& patchPointMap() const + const labelListList& patchPointMap() const noexcept { return patchPointMap_; } @@ -579,7 +582,7 @@ public: //- Point zone renumbering // For every preserved point in zone give the old position. // For added points, the index is set to -1 - const labelListList& pointZoneMap() const + const labelListList& pointZoneMap() const noexcept { return pointZoneMap_; } @@ -587,7 +590,7 @@ public: //- Face zone point renumbering // For every preserved point in zone give the old position. // For added points, the index is set to -1 - const labelListList& faceZonePointMap() const + const labelListList& faceZonePointMap() const noexcept { return faceZonePointMap_; } @@ -595,7 +598,7 @@ public: //- Face zone face renumbering // For every preserved face in zone give the old position. // For added faces, the index is set to -1 - const labelListList& faceZoneFaceMap() const + const labelListList& faceZoneFaceMap() const noexcept { return faceZoneFaceMap_; } @@ -603,7 +606,7 @@ public: //- Cell zone renumbering // For every preserved cell in zone give the old position. // For added cells, the index is set to -1 - const labelListList& cellZoneMap() const + const labelListList& cellZoneMap() const noexcept { return cellZoneMap_; } @@ -611,49 +614,48 @@ public: //- Pre-motion point positions. // This specifies the correct way of blowing up // zero-volume objects - const pointField& preMotionPoints() const + const pointField& preMotionPoints() const noexcept { return preMotionPoints_; } //- Has valid preMotionPoints? - bool hasMotionPoints() const + bool hasMotionPoints() const noexcept { - return preMotionPoints_.size() > 0; + return !preMotionPoints_.empty(); } //- Return list of the old patch sizes - const labelList& oldPatchSizes() const + const labelList& oldPatchSizes() const noexcept { return oldPatchSizes_; } //- Return list of the old patch start labels - const labelList& oldPatchStarts() const + const labelList& oldPatchStarts() const noexcept { return oldPatchStarts_; } //- Return numbers of mesh points per old patch - const labelList& oldPatchNMeshPoints() const + const labelList& oldPatchNMeshPoints() const noexcept { return oldPatchNMeshPoints_; } - // Geometric mapping data - - bool hasOldCellVolumes() const - { - return bool(oldCellVolumesPtr_); - } + // Geometric mapping data - const scalarField& oldCellVolumes() const - { - return *oldCellVolumesPtr_; - } + bool hasOldCellVolumes() const noexcept + { + return bool(oldCellVolumesPtr_); + } + const scalarField& oldCellVolumes() const + { + return *oldCellVolumesPtr_; + } }; diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMap.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMap.H index 676ae1372974cb66fbb9f389a76ff3a0b287a3bc..4b739eeafeea22a23036f7a14d27fb661c345aec 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMap.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMap.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,10 +36,10 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef objectMap_H -#define objectMap_H +#ifndef Foam_objectMap_H +#define Foam_objectMap_H -#include "labelList.H" +#include "List.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -46,7 +47,6 @@ namespace Foam { // Forward Declarations - class objectMap; inline bool operator==(const objectMap& a, const objectMap& b); inline bool operator!=(const objectMap& a, const objectMap& b); @@ -60,38 +60,51 @@ inline Istream& operator>>(Istream&, objectMap&); class objectMap { - // Private data + // Private Data //- Object index label index_; - //- Master object index - labelList masterObjects_; + //- Master object indices + labelList objects_; public: // Constructors - //- Null constructor, with index=-1 and no objects - inline objectMap(); + //- Default construct, with index=-1 and no objects + objectMap() noexcept : index_(-1) {} + + //- Copy construct from components + inline objectMap(const label index, const labelUList& master); - //- Construct from components - inline objectMap(const label index, const UList<label>& master); + //- Move construct from components + inline objectMap(const label index, labelList&& master); //- Construct from Istream - inline objectMap(Istream& is); + inline explicit objectMap(Istream& is); // Member Functions - //- Return object index - inline label& index(); - inline label index() const; + //- True if there are no objects + bool empty() const noexcept { return objects_.empty(); } + + //- The number of objects + label size() const noexcept { return objects_.size(); } + + //- The object index + label& index() noexcept { return index_; } + + //- The object index + label index() const noexcept { return index_; } + + //- The master object indices + labelList& masterObjects() noexcept { return objects_; } - //- Return master object index - inline labelList& masterObjects(); - inline const labelList& masterObjects() const; + //- The master object indices + const labelList& masterObjects() const noexcept { return objects_; } // Friend Operators diff --git a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMapI.H b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMapI.H index 43f4dadc5eaa3ec152f9718adf825d5ac6fb6c2a..3c5167a8cdf72b299547885d066ecbdb38d1e2c9 100644 --- a/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMapI.H +++ b/src/OpenFOAM/meshes/polyMesh/mapPolyMesh/objectMap/objectMapI.H @@ -29,17 +29,17 @@ License // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -inline Foam::objectMap::objectMap() +inline Foam::objectMap::objectMap(const label index, const labelUList& master) : - index_(-1), - masterObjects_() + index_(index), + objects_(master) {} -inline Foam::objectMap::objectMap(const label index, const UList<label>& master) +inline Foam::objectMap::objectMap(const label index, labelList&& master) : index_(index), - masterObjects_(master) + objects_(std::move(master)) {} @@ -47,46 +47,20 @@ inline Foam::objectMap::objectMap(Istream& is) { is.readBegin("objectMap"); - is >> index_ >> static_cast<labelList&>(masterObjects_); + is >> index_ >> objects_; is.readEnd("objectMap"); is.check(FUNCTION_NAME); } -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::label& Foam::objectMap::index() -{ - return index_; -} - - -inline Foam::label Foam::objectMap::index() const -{ - return index_; -} - - -inline Foam::labelList& Foam::objectMap::masterObjects() -{ - return masterObjects_; -} - - -inline const Foam::labelList& Foam::objectMap::masterObjects() const -{ - return masterObjects_; -} - - // * * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * // inline bool Foam::operator==(const objectMap& a, const objectMap& b) { return ( - (a.index_ == b.index_) && (a.masterObjects_ == b.masterObjects_) + (a.index_ == b.index_) && (a.objects_ == b.objects_) ); } @@ -103,7 +77,7 @@ inline Foam::Ostream& Foam::operator<<(Ostream& os, const objectMap& a) { os << token::BEGIN_LIST << a.index_ << token::SPACE - << a.masterObjects_ + << a.objects_ << token::END_LIST; os.check(FUNCTION_NAME); @@ -114,7 +88,7 @@ inline Foam::Ostream& Foam::operator<<(Ostream& os, const objectMap& a) inline Foam::Istream& Foam::operator>>(Istream& is, objectMap& a) { is.readBegin("objectMap"); - is >> a.index_ >> a.masterObjects_; + is >> a.index_ >> a.objects_; is.readEnd("objectMap"); is.check(FUNCTION_NAME); diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C index 38751f59c6f5bb11858413d871724860bdcd24aa..5d096e36f6ad1e91c02e9dfc89630fe083472829 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -134,7 +134,7 @@ void Foam::polyBoundaryMesh::populate(PtrList<entry>&& entries) } -bool Foam::polyBoundaryMesh::readContents(const bool allowOptionalRead) +bool Foam::polyBoundaryMesh::readIOcontents(const bool allowOptionalRead) { bool updated = false; PtrList<entry> entries; @@ -180,7 +180,7 @@ Foam::polyBoundaryMesh::polyBoundaryMesh regIOobject(io), mesh_(mesh) { - readContents(false); // allowOptionalRead = false + readIOcontents(false); // allowOptionalRead = false } @@ -221,7 +221,7 @@ Foam::polyBoundaryMesh::polyBoundaryMesh regIOobject(io), mesh_(pm) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { // Nothing read. Use supplied patches polyPatchList& patches = *this; @@ -246,7 +246,7 @@ Foam::polyBoundaryMesh::polyBoundaryMesh regIOobject(io), mesh_(pm) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { populate(std::move(entries)); } @@ -304,7 +304,7 @@ void Foam::polyBoundaryMesh::calcGeometry() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -1297,7 +1297,7 @@ void Foam::polyBoundaryMesh::movePoints(const pointField& p) if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -1347,7 +1347,7 @@ void Foam::polyBoundaryMesh::updateMesh() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -1440,7 +1440,7 @@ void Foam::polyBoundaryMesh::writeEntry(Ostream& os) const void Foam::polyBoundaryMesh::writeEntry ( - const keyType& keyword, + const word& keyword, Ostream& os ) const { diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H index 169db86464c713fc6d3062f2c79e53a34b92bf29..d21d9cf0b59d7ea8f27cab3bb22056acd521fc5a 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,7 +101,7 @@ class polyBoundaryMesh //- Return true if contents were read //- (controlled by IOobject readOption flags). - bool readContents(const bool allowOptionalRead); + bool readIOcontents(const bool allowOptionalRead); public: @@ -379,7 +379,7 @@ public: //- Write as a primitive entry with given name. //- If the keyword is empty, revert to a plain list. - void writeEntry(const keyType& keyword, Ostream& os) const; + void writeEntry(const word& keyword, Ostream& os) const; //- The writeData member function required by regIOobject virtual bool writeData(Ostream& os) const; diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.C b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.C index 9c8cb756004e9ea354edb573188a7373a7ad6ceb..e8c4cfe61c5a92f1dc1919f77d4bc6d8094c2fe4 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.C +++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.C @@ -46,8 +46,7 @@ Foam::polyBoundaryMeshEntries::polyBoundaryMeshEntries(const IOobject& io) IOobject(io, IOobjectOption::NO_REGISTER) ) { - // readContents() - + // readIOcontents() if (isReadRequired() || (isReadOptional() && headerOk())) { // Read as entries @@ -215,7 +214,7 @@ void Foam::polyBoundaryMeshEntries::writeEntry(Ostream& os) const void Foam::polyBoundaryMeshEntries::writeEntry ( - const keyType& keyword, + const word& keyword, Ostream& os ) const { diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.H b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.H index 2fb5c6feae2e6c20d52267ebe46ab52df0192843..e614c0929ab954516382dc93d350a16e06dbbeab 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.H +++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMeshEntries.H @@ -121,7 +121,7 @@ public: //- Write as a primitive entry with given name. //- If the keyword is empty, revert to a plain list. - void writeEntry(const keyType& keyword, Ostream& os) const; + void writeEntry(const word& keyword, Ostream& os) const; //- The writeData member function required by regIOobject virtual bool writeData(Ostream& os) const; diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMesh.C index 00480e7669db546e5701e3cea89c840d08db0449..ea17e4c706fa3c89c8edc284edc19b96e07f7ceb 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.C @@ -1195,19 +1195,19 @@ void Foam::polyMesh::movePoints(const pointField& newPoints) { if (debug) { - Info<< "tmp<scalarField> polyMesh::movePoints(const pointField&) : " + Info<< "void polyMesh::movePoints(const pointField&) : " << " Storing current points for time " << time().value() << " index " << time().timeIndex() << endl; } if (storeOldCellCentres_) { - oldCellCentresPtr_.clear(); + oldCellCentresPtr_.reset(nullptr); oldCellCentresPtr_.reset(new pointField(cellCentres())); } // Mesh motion in the new time step - oldPointsPtr_.clear(); + oldPointsPtr_.reset(nullptr); oldPointsPtr_.reset(new pointField(points_)); curMotionTimeIndex_ = time().timeIndex(); } @@ -1276,7 +1276,7 @@ void Foam::polyMesh::movePoints(const pointField& newPoints) // have to clear any geometry. However your critical path still stays the // same so no time would be gained (unless the decomposition gets weighted). // Small benefit for lots of scope for problems so not done. - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); // Reset valid directions (could change with rotation) geometricD_ = Zero; @@ -1304,8 +1304,8 @@ void Foam::polyMesh::movePoints(const pointField& newPoints) void Foam::polyMesh::resetMotion() const { curMotionTimeIndex_ = 0; - oldPointsPtr_.clear(); - oldCellCentresPtr_.clear(); + oldPointsPtr_.reset(nullptr); + oldCellCentresPtr_.reset(nullptr); } diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.H b/src/OpenFOAM/meshes/polyMesh/polyMesh.H index d4d6c0c15ec79c2c9e0b5ea25209dc39428442d2..534c4c5786c0980cc94cf609409480e319a4abbd 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017, 2020 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,6 +55,7 @@ SourceFiles #include "labelIOList.H" #include "polyBoundaryMesh.H" #include "boundBox.H" +#include "globalIndex.H" #include "pointZoneMesh.H" #include "faceZoneMesh.H" #include "cellZoneMesh.H" @@ -695,8 +696,8 @@ public: //- Clear addressing void clearAddressing(const bool isMeshUpdate = false); - //- Clear all geometry and addressing unnecessary for CFD - void clearOut(); + //- Clear all geometry and addressing + void clearOut(const bool isMeshUpdate = false); //- Clear primitive data (points, faces and cells) void clearPrimitives(); diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshClear.C b/src/OpenFOAM/meshes/polyMesh/polyMeshClear.C index a7d76831b7e8fc64715aea5b26226494e809f7cf..abf8ddea7405f468bbde573db6e3f00dd78c7ef6 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMeshClear.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMeshClear.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -65,7 +65,7 @@ void Foam::polyMesh::clearGeom() solutionD_ = Zero; // Remove the cell tree - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); } @@ -119,7 +119,7 @@ void Foam::polyMesh::updateGeomPoints solutionD_ = Zero; // Remove the cell tree - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); // Update local data points_.instance() = newPoints.instance(); @@ -150,12 +150,12 @@ void Foam::polyMesh::updateGeomPoints void Foam::polyMesh::clearAddressing(const bool isMeshUpdate) { DebugInFunction - << "Clearing topology isMeshUpdate:" << isMeshUpdate << endl; + << "isMeshUpdate:" << isMeshUpdate << endl; if (isMeshUpdate) { - // Part of a mesh update. Keep meshObjects that have an updateMesh - // callback + // Part of a mesh update. + // Keep meshObjects that have an updateMesh callback meshObject::clearUpto < pointMesh, @@ -197,10 +197,10 @@ void Foam::polyMesh::clearAddressing(const bool isMeshUpdate) cellZones_.clearAddressing(); // Remove the stored tet base points - tetBasePtIsPtr_.clear(); + tetBasePtIsPtr_.reset(nullptr); // Remove the cell tree - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); } @@ -217,10 +217,10 @@ void Foam::polyMesh::clearPrimitives() } -void Foam::polyMesh::clearOut() +void Foam::polyMesh::clearOut(const bool isMeshUpdate) { - clearGeom(); - clearAddressing(); + clearGeom(); // not implementable? isMeshUpdate + clearAddressing(isMeshUpdate); } @@ -228,15 +228,15 @@ void Foam::polyMesh::clearTetBasePtIs() { DebugInFunction << "Clearing tet base points" << endl; - tetBasePtIsPtr_.clear(); + tetBasePtIsPtr_.reset(nullptr); } void Foam::polyMesh::clearCellTree() { - DebugInFunction << "Clearing cell tree" << endl; + DebugInFunction << endl; - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); } diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshUpdate.C b/src/OpenFOAM/meshes/polyMesh/polyMeshUpdate.C index 2d89a7ef049ff4a139f4c1ef236f33b27a321bbd..f75b83302a30cc61d5295272fa222806b8d6e48f 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMeshUpdate.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMeshUpdate.C @@ -24,9 +24,6 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Description - Update the polyMesh corresponding to the given map. - \*---------------------------------------------------------------------------*/ #include "polyMesh.H" @@ -54,9 +51,10 @@ void Foam::polyMesh::updateMesh(const mapPolyMesh& mpm) cellZones_.clearAddressing(); // Remove the stored tet base points - tetBasePtIsPtr_.clear(); + tetBasePtIsPtr_.reset(nullptr); + // Remove the cell tree - cellTreePtr_.clear(); + cellTreePtr_.reset(nullptr); // Update parallel data if (globalMeshDataPtr_) diff --git a/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/processor/processorPolyPatch.C b/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/processor/processorPolyPatch.C index 9341a5ad12924147115c4646fbd19eb738a61588..5813f534cf47a3ca1c8cf3eda939d4da9fcd16fd 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/processor/processorPolyPatch.C +++ b/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/processor/processorPolyPatch.C @@ -289,10 +289,12 @@ void Foam::processorPolyPatch::calcGeometry(PstreamBuffers& pBufs) label vertI = 0; - forAll(faceCentres(), facej) + const vectorField::subField ownFaceCentres = faceCentres(); + + forAll(ownFaceCentres, facej) { const point& c0 = neighbFaceCentres_[facej]; - const point& c1 = faceCentres()[facej]; + const point& c1 = ownFaceCentres[facej]; writeOBJ(ccStr, c0, c1, vertI); } diff --git a/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.C b/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.C index 1a5e79754c9bad7b293ecdff0d7572a0086cdbdb..db304f4b2ec840287e5ec7888e7c26c77fd42cd9 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.C +++ b/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -95,9 +95,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(start), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) { if (constraintType(patchType)) { @@ -124,9 +122,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(start), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) {} @@ -151,9 +147,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(dict.get<label>("startFace")), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) { if (constraintType(patchType)) { @@ -180,9 +174,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(pp.start()), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) {} @@ -207,9 +199,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(newStart), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) {} @@ -234,9 +224,7 @@ Foam::polyPatch::polyPatch bm.mesh().points() ), start_(newStart), - boundaryMesh_(bm), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(bm) {} @@ -245,9 +233,7 @@ Foam::polyPatch::polyPatch(const polyPatch& p) patchIdentifier(p), primitivePatch(p), start_(p.start_), - boundaryMesh_(p.boundaryMesh_), - faceCellsPtr_(nullptr), - mePtr_(nullptr) + boundaryMesh_(p.boundaryMesh_) {} @@ -333,8 +319,8 @@ const Foam::vectorField::subField Foam::polyPatch::faceAreas() const Foam::tmp<Foam::vectorField> Foam::polyPatch::faceCellCentres() const { - tmp<vectorField> tcc(new vectorField(size())); - vectorField& cc = tcc.ref(); + auto tcc = tmp<vectorField>::New(size()); + auto& cc = tcc.ref(); // get reference to global cell centres const vectorField& gcc = boundaryMesh_.mesh().cellCentres(); @@ -350,25 +336,56 @@ Foam::tmp<Foam::vectorField> Foam::polyPatch::faceCellCentres() const } -Foam::tmp<Foam::scalarField> Foam::polyPatch::areaFraction() const +Foam::tmp<Foam::scalarField> Foam::polyPatch::areaFraction +( + const pointField& points +) const { - tmp<scalarField> tfraction(new scalarField(size())); - scalarField& fraction = tfraction.ref(); + auto tfraction = tmp<scalarField>::New(size()); + auto& fraction = tfraction.ref(); const vectorField::subField faceAreas = this->faceAreas(); - const pointField& points = this->points(); forAll(*this, facei) { - const face& curFace = this->operator[](facei); - fraction[facei] = - mag(faceAreas[facei])/(curFace.mag(points) + ROOTVSMALL); + const face& f = this->operator[](facei); + fraction[facei] = faceAreas[facei].mag()/(f.mag(points) + ROOTVSMALL); } return tfraction; } +Foam::tmp<Foam::scalarField> Foam::polyPatch::areaFraction() const +{ + if (areaFractionPtr_) + { + return tmp<scalarField>(*areaFractionPtr_); + } + return nullptr; +} + + +void Foam::polyPatch::areaFraction(const scalar fraction) +{ + areaFractionPtr_ = std::make_unique<scalarField>(size(), fraction); +} + + +void Foam::polyPatch::areaFraction(const tmp<scalarField>& fraction) +{ + if (fraction) + { + // Steal or clone + areaFractionPtr_.reset(fraction.ptr()); + } + else + { + areaFractionPtr_.reset(nullptr); + } +} + + const Foam::labelUList& Foam::polyPatch::faceCells() const { if (!faceCellsPtr_) @@ -413,6 +430,7 @@ void Foam::polyPatch::clearAddressing() primitivePatch::clearPatchMeshAddr(); faceCellsPtr_.reset(nullptr); mePtr_.reset(nullptr); + areaFractionPtr_.reset(nullptr); } diff --git a/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.H b/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.H index c6761791975e4a8890d6c58945c727ce339b15d8..02f9901e20fc8210f00ed43962ab3a285a9a0939 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.H +++ b/src/OpenFOAM/meshes/polyMesh/polyPatches/polyPatch/polyPatch.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -88,6 +88,9 @@ class polyPatch //- Demand-driven: global edge addressing mutable std::unique_ptr<labelList> mePtr_; + //- Cached area fraction + std::unique_ptr<scalarField> areaFractionPtr_; + protected: @@ -441,10 +444,20 @@ public: //- Return face cell centres tmp<vectorField> faceCellCentres() const; - //- Return the area fraction as the ratio of the stored face area - //- and the area given by the face points + //- Calculate the area fraction as the ratio of the stored face + //- area and the area given by the face points. + tmp<scalarField> areaFraction(const pointField& points) const; + + //- Return the cached area fraction. + //- Usually only set for the non-overlap patches on ACMI. tmp<scalarField> areaFraction() const; + //- Set uniform cached area fraction + void areaFraction(const scalar fraction); + + //- Set cached area fraction (non-uniform) + void areaFraction(const tmp<scalarField>& fraction); + // Addressing into mesh diff --git a/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.C b/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.C index c4e0c9fef5e91b03f01732a9d75c676f1be6d265..2f1f1c85de710339a1d239d49e9cc0c4066ab75f 100644 --- a/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.C +++ b/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,34 +34,34 @@ void Foam::syncTools::swapBoundaryCellPositions ( const polyMesh& mesh, const UList<point>& cellData, - List<point>& neighbourCellData + List<point>& neighbourCellData, + const bool parRun ) { if (cellData.size() != mesh.nCells()) { FatalErrorInFunction - << "Number of cell values " << cellData.size() - << " is not equal to the number of cells in the mesh " - << mesh.nCells() << abort(FatalError); + << "Number of values " << cellData.size() + << " != number of cells " << mesh.nCells() << nl + << abort(FatalError); } - const polyBoundaryMesh& patches = mesh.boundaryMesh(); - neighbourCellData.resize(mesh.nBoundaryFaces()); - for (const polyPatch& pp : patches) + for (const polyPatch& pp : mesh.boundaryMesh()) { - label bFacei = pp.start()-mesh.nInternalFaces(); - - const labelUList& faceCells = pp.faceCells(); - - for (const label celli : faceCells) - { - neighbourCellData[bFacei] = cellData[celli]; - ++bFacei; - } + const auto& faceCells = pp.faceCells(); + + // ie, boundarySlice() = patchInternalList() + SubList<point> + ( + neighbourCellData, + faceCells.size(), + pp.offset() + ) = UIndirectList<point>(cellData, faceCells); } - syncTools::swapBoundaryFacePositions(mesh, neighbourCellData); + + syncTools::swapBoundaryFacePositions(mesh, neighbourCellData, parRun); } @@ -127,9 +127,7 @@ Foam::bitSet Foam::syncTools::getMasterFaces(const polyMesh& mesh) { bitSet isMaster(mesh.nFaces(), true); - const polyBoundaryMesh& patches = mesh.boundaryMesh(); - - for (const polyPatch& pp : patches) + for (const polyPatch& pp : mesh.boundaryMesh()) { if (pp.coupled()) { @@ -151,9 +149,7 @@ Foam::bitSet Foam::syncTools::getInternalOrMasterFaces { bitSet isMaster(mesh.nFaces(), true); - const polyBoundaryMesh& patches = mesh.boundaryMesh(); - - for (const polyPatch& pp : patches) + for (const polyPatch& pp : mesh.boundaryMesh()) { if (pp.coupled()) { @@ -179,9 +175,7 @@ Foam::bitSet Foam::syncTools::getInternalOrCoupledFaces { bitSet isMaster(mesh.nFaces(), true); - const polyBoundaryMesh& patches = mesh.boundaryMesh(); - - for (const polyPatch& pp : patches) + for (const polyPatch& pp : mesh.boundaryMesh()) { if (!pp.coupled()) { diff --git a/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.H b/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.H index 43b5fb8af41acc4ca5415a804c0b0f2a4a128a9b..053cdb910338410ec8a60fccbc6f905e1f74669b 100644 --- a/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.H +++ b/src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2021 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -69,6 +69,7 @@ class syncTools // Private Member Functions //- Combine val with existing value in pointValues map at given index + // No communication template<class T, class CombineOp> static void combine ( @@ -79,6 +80,7 @@ class syncTools ); //- Combine val with existing value in edgeValues at edge index + // No communication template<class T, class CombineOp> static void combine ( @@ -95,6 +97,7 @@ public: // Preferably use specialisations below. //- Synchronize values on selected points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp> static void syncPointMap ( @@ -105,6 +108,7 @@ public: ); //- Synchronize values on selected edges. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp> static void syncEdgeMap ( @@ -115,6 +119,7 @@ public: ); //- Synchronize values on all mesh points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp> static void syncPointList ( @@ -126,6 +131,7 @@ public: ); //- Synchronize values on selected mesh points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp> static void syncPointList ( @@ -138,6 +144,7 @@ public: ); //- Synchronize values on all mesh edges. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp, class FlipOp> static void syncEdgeList ( @@ -150,11 +157,12 @@ public: ); //- Synchronize values on selected mesh edges. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp, class TransformOp, class FlipOp> static void syncEdgeList ( const polyMesh& mesh, - const labelList& meshEdges, + const labelUList& meshEdges, List<T>& edgeValues, const CombineOp& cop, const T& nullValue, @@ -170,6 +178,7 @@ public: UList<T>& faceValues, const CombineOp& cop, const TransformOp& top, + //! Allow parallel communication const bool parRun = UPstream::parRun() ); @@ -177,6 +186,7 @@ public: // Synchronise point-wise data //- Synchronize values on all mesh points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncPointList ( @@ -197,6 +207,7 @@ public: } //- Synchronize locations on all mesh points. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncPointPositions ( @@ -217,11 +228,12 @@ public: } //- Synchronize values on selected mesh points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncPointList ( const polyMesh& mesh, - const labelList& meshPoints, + const labelUList& meshPoints, List<T>& pointValues, const CombineOp& cop, const T& nullValue @@ -239,11 +251,12 @@ public: } //- Synchronize locations on selected mesh points. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncPointPositions ( const polyMesh& mesh, - const labelList& meshPoints, + const labelUList& meshPoints, List<point>& positions, const CombineOp& cop, const point& nullValue @@ -264,6 +277,7 @@ public: // Synchronise edge-wise data //- Synchronize values on all mesh edges. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncEdgeList ( @@ -285,6 +299,7 @@ public: } //- Synchronize locations on all mesh edges. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncEdgePositions ( @@ -306,11 +321,12 @@ public: } //- Synchronize values on selected mesh edges. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncEdgeList ( const polyMesh& mesh, - const labelList& meshEdges, + const labelUList& meshEdges, List<T>& edgeValues, const CombineOp& cop, const T& nullValue @@ -329,11 +345,12 @@ public: } //- Synchronize locations on selected mesh edges. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncEdgePositions ( const polyMesh& mesh, - const labelList& meshEdges, + const labelUList& meshEdges, List<point>& positions, const CombineOp& cop, const point& nullValue @@ -397,7 +414,9 @@ public: ( const polyMesh& mesh, UList<T>& faceValues, - const CombineOp& cop + const CombineOp& cop, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ) { SubList<T> bndValues @@ -412,7 +431,8 @@ public: mesh, bndValues, cop, - mapDistribute::transform() + mapDistribute::transform(), + parRun ); } @@ -422,7 +442,9 @@ public: ( const polyMesh& mesh, UList<point>& positions, - const CombineOp& cop + const CombineOp& cop, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ) { SubList<point> bndValues @@ -436,7 +458,8 @@ public: mesh, bndValues, cop, - mapDistribute::transformPosition() + mapDistribute::transformPosition(), + parRun ); } @@ -445,7 +468,9 @@ public: static void swapBoundaryFaceList ( const polyMesh& mesh, - UList<T>& faceValues + UList<T>& faceValues, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ) { syncBoundaryFaceList @@ -453,7 +478,8 @@ public: mesh, faceValues, eqOp<T>(), - mapDistribute::transform() + mapDistribute::transform(), + parRun ); } @@ -461,7 +487,9 @@ public: static void swapBoundaryFacePositions ( const polyMesh& mesh, - UList<point>& positions + UList<point>& positions, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ) { syncBoundaryFaceList @@ -469,7 +497,8 @@ public: mesh, positions, eqOp<point>(), - mapDistribute::transformPosition() + mapDistribute::transformPosition(), + parRun ); } @@ -478,7 +507,9 @@ public: static void swapFaceList ( const polyMesh& mesh, - UList<T>& faceValues + UList<T>& faceValues, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ) { SubList<T> bndValues @@ -492,31 +523,71 @@ public: mesh, bndValues, eqOp<T>(), - mapDistribute::transform() + mapDistribute::transform(), + parRun ); } - //- Swap to obtain neighbour cell values for all boundary faces + //- Extract and swap to obtain neighbour cell values + //- for all boundary faces template<class T> static void swapBoundaryCellList ( const polyMesh& mesh, const UList<T>& cellData, - List<T>& neighbourCellData + List<T>& neighbourCellData, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ); - //- Swap to obtain neighbour cell positions for all boundary faces + //- Extract and swap to obtain neighbour cell positions + //- for all boundary faces static void swapBoundaryCellPositions ( const polyMesh& mesh, const UList<point>& cellData, - List<point>& neighbourCellData + List<point>& neighbourCellData, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ); + //- Return neighbour cell values for all boundary faces + //- by swapping via boundary faces + template<class T> + FOAM_NODISCARD static List<T> swapBoundaryCellList + ( + const polyMesh& mesh, + const UList<T>& cellData, + //! Allow parallel communication + const bool parRun = UPstream::parRun() + ) + { + List<T> nbrCellData; + swapBoundaryCellList(mesh, cellData, nbrCellData, parRun); + return nbrCellData; + } + + //- Return neighbour cell positions for all boundary faces + //- by swapping via boundary faces + FOAM_NODISCARD static List<point> swapBoundaryCellPositions + ( + const polyMesh& mesh, + const UList<point>& cellData, + //! Allow parallel communication + const bool parRun = UPstream::parRun() + ) + { + List<point> nbrCellData; + swapBoundaryCellPositions(mesh, cellData, nbrCellData, parRun); + return nbrCellData; + } + + // Sparse versions //- Synchronize values on selected points. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncPointMap ( @@ -535,6 +606,7 @@ public: } //- Synchronize locations on selected points. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncPointPositions ( @@ -552,9 +624,10 @@ public: ); } - //- Synchronize values on selected edges. Edges are represented - // by the two vertices that make it up so global edges never get - // constructed. + //- Synchronize values on selected edges. + //- Edges are represented by the two vertices that make it up + //- so global edges never get constructed. + // Communication if UPstream::parRun() == true. template<class T, class CombineOp> static void syncEdgeMap ( @@ -573,6 +646,7 @@ public: } //- Synchronize locations on selected edges. + // Communication if UPstream::parRun() == true. template<class CombineOp> static void syncEdgePositions ( @@ -601,7 +675,7 @@ public: // offset when accessing values. // \param faceValues The face values to synchronize // \param cop The combine operation - // \param parRun True if this is a parallel simulation + // \param parRun Allow parallel communication template<unsigned Width, class CombineOp> static void syncFaceList ( @@ -619,6 +693,7 @@ public: const polyMesh& mesh, PackedList<Width>& faceValues, const CombineOp& cop, + //! Allow parallel communication const bool parRun = UPstream::parRun() ); @@ -629,6 +704,7 @@ public: const polyMesh& mesh, PackedList<Width>& faceValues, const CombineOp& cop, + //! Allow parallel communication const bool parRun = UPstream::parRun() ); @@ -637,7 +713,9 @@ public: static void swapFaceList ( const polyMesh& mesh, - PackedList<Width>& faceValues + PackedList<Width>& faceValues, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ); //- Swap coupled boundary face values. Uses eqOp @@ -645,7 +723,9 @@ public: static void swapBoundaryFaceList ( const polyMesh& mesh, - PackedList<Width>& faceValues + PackedList<Width>& faceValues, + //! Allow parallel communication + const bool parRun = UPstream::parRun() ); template<unsigned Width, class CombineOp> diff --git a/src/OpenFOAM/meshes/polyMesh/syncTools/syncToolsTemplates.C b/src/OpenFOAM/meshes/polyMesh/syncTools/syncToolsTemplates.C index dbd296f42167da9bf4b054ed69a01ad806f2fbf9..b23781865970512b0ebd79cc97a82e1996eb6fd1 100644 --- a/src/OpenFOAM/meshes/polyMesh/syncTools/syncToolsTemplates.C +++ b/src/OpenFOAM/meshes/polyMesh/syncTools/syncToolsTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -79,6 +79,8 @@ void Foam::syncTools::combine } +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + template<class T, class CombineOp, class TransformOp> void Foam::syncTools::syncPointMap ( @@ -94,7 +96,7 @@ void Foam::syncTools::syncPointMap const globalMeshData& pd = mesh.globalData(); // Values on shared points. Keyed on global shared index. - Map<T> sharedPointValues(0); + Map<T> sharedPointValues; if (pd.nGlobalPoints() > 0) { @@ -130,7 +132,7 @@ void Foam::syncTools::syncPointMap // Presize according to number of processor patches // (global topology information may not yet be available...) DynamicList<label> neighbProcs(patches.nProcessorPatches()); - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Reduce communication by only sending non-zero data, // but with multiply-connected processor/processor @@ -205,7 +207,7 @@ void Foam::syncTools::syncPointMap continue; } - Map<T> nbrPatchInfo(0); + Map<T> nbrPatchInfo; { UIPstream fromNbr(nbrProci, pBufs); fromNbr >> nbrPatchInfo; @@ -324,8 +326,8 @@ void Foam::syncTools::syncPointMap // Receive the edges using shared points from other procs for (const int proci : UPstream::subProcs()) { - IPstream fromProc(UPstream::commsTypes::scheduled, proci); - Map<T> nbrValues(fromProc); + Map<T> nbrValues; + IPstream::recv(nbrValues, proci); // Merge neighbouring values with my values forAllConstIters(nbrValues, iter) @@ -343,12 +345,7 @@ void Foam::syncTools::syncPointMap else { // Send to master - OPstream toMaster - ( - UPstream::commsTypes::scheduled, - UPstream::masterNo() - ); - toMaster << sharedPointValues; + OPstream::send(sharedPointValues, UPstream::masterNo()); } // Broadcast: send merged values to all @@ -359,11 +356,7 @@ void Foam::syncTools::syncPointMap // pointValues (keyed on mesh points). // Map from global shared index to meshpoint - Map<label> sharedToMeshPoint(2*sharedPtAddr.size()); - forAll(sharedPtAddr, i) - { - sharedToMeshPoint.insert(sharedPtAddr[i], sharedPtLabels[i]); - } + Map<label> sharedToMeshPoint(sharedPtAddr, sharedPtLabels); forAllConstIters(sharedToMeshPoint, iter) { @@ -403,7 +396,7 @@ void Foam::syncTools::syncEdgeMap // Presize according to number of processor patches // (global topology information may not yet be available...) DynamicList<label> neighbProcs(patches.nProcessorPatches()); - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Reduce communication by only sending non-zero data, // but with multiply-connected processor/processor @@ -481,7 +474,7 @@ void Foam::syncTools::syncEdgeMap continue; } - EdgeMap<T> nbrPatchInfo(0); + EdgeMap<T> nbrPatchInfo; { UIPstream fromNbr(nbrProci, pBufs); fromNbr >> nbrPatchInfo; @@ -497,7 +490,7 @@ void Foam::syncTools::syncEdgeMap forAllConstIters(nbrPatchInfo, nbrIter) { const edge& e = nbrIter.key(); - const edge meshEdge(meshPts[e[0]], meshPts[e[1]]); + const edge meshEdge(meshPts, e); combine ( @@ -544,7 +537,7 @@ void Foam::syncTools::syncEdgeMap { const edge& e0 = edgesA[twoEdges[0]]; - const edge meshEdge0(meshPtsA[e0[0]], meshPtsA[e0[1]]); + const edge meshEdge0(meshPtsA, e0); const auto iter = edgeValues.cfind(meshEdge0); @@ -555,7 +548,7 @@ void Foam::syncTools::syncEdgeMap } { const edge& e1 = edgesB[twoEdges[1]]; - const edge meshEdge1(meshPtsB[e1[0]], meshPtsB[e1[1]]); + const edge meshEdge1(meshPtsB, e1); const auto iter = edgeValues.cfind(meshEdge1); @@ -582,7 +575,7 @@ void Foam::syncTools::syncEdgeMap if (half1Fnd.good()) { const edge& e0 = edgesA[twoEdges[0]]; - const edge meshEdge0(meshPtsA[e0[0]], meshPtsA[e0[1]]); + const edge meshEdge0(meshPtsA, e0); combine ( @@ -598,7 +591,7 @@ void Foam::syncTools::syncEdgeMap if (half0Fnd.good()) { const edge& e1 = edgesB[twoEdges[1]]; - const edge meshEdge1(meshPtsB[e1[0]], meshPtsB[e1[1]]); + const edge meshEdge1(meshPtsB, e1); combine ( @@ -622,11 +615,7 @@ void Foam::syncTools::syncEdgeMap const labelList& sharedPtLabels = pd.sharedPointLabels(); // 1. Create map from meshPoint to globalShared index. - Map<label> meshToShared(2*sharedPtLabels.size()); - forAll(sharedPtLabels, i) - { - meshToShared.insert(sharedPtLabels[i], sharedPtAddr[i]); - } + Map<label> meshToShared(sharedPtLabels, sharedPtAddr); // Values on shared points. From two sharedPtAddr indices to a value. EdgeMap<T> sharedEdgeValues(meshToShared.size()); @@ -695,8 +684,8 @@ void Foam::syncTools::syncEdgeMap // Receive the edges using shared points from other procs for (const int proci : UPstream::subProcs()) { - IPstream fromProc(UPstream::commsTypes::scheduled, proci); - EdgeMap<T> nbrValues(fromProc); + EdgeMap<T> nbrValues; + IPstream::recv(nbrValues, proci); // Merge neighbouring values with my values forAllConstIters(nbrValues, iter) @@ -714,14 +703,7 @@ void Foam::syncTools::syncEdgeMap else { // Send to master - { - OPstream toMaster - ( - UPstream::commsTypes::scheduled, - UPstream::masterNo() - ); - toMaster << sharedEdgeValues; - } + OPstream::send(sharedEdgeValues, UPstream::masterNo()); } // Broadcast: send merged values to all @@ -769,8 +751,8 @@ void Foam::syncTools::syncPointList { FatalErrorInFunction << "Number of values " << pointValues.size() - << " is not equal to the number of points in the mesh " - << mesh.nPoints() << abort(FatalError); + << " != number of points " << mesh.nPoints() << nl + << abort(FatalError); } mesh.globalData().syncPointData(pointValues, cop, top); @@ -792,8 +774,8 @@ void Foam::syncTools::syncPointList { FatalErrorInFunction << "Number of values " << pointValues.size() - << " is not equal to the number of meshPoints " - << meshPoints.size() << abort(FatalError); + << " != number of meshPoints " << meshPoints.size() << nl + << abort(FatalError); } const globalMeshData& gd = mesh.globalData(); const indirectPrimitivePatch& cpp = gd.coupledPatch(); @@ -849,8 +831,8 @@ void Foam::syncTools::syncEdgeList { FatalErrorInFunction << "Number of values " << edgeValues.size() - << " is not equal to the number of edges in the mesh " - << mesh.nEdges() << abort(FatalError); + << " != number of edges " << mesh.nEdges() << nl + << abort(FatalError); } const edgeList& edges = mesh.edges(); @@ -935,7 +917,7 @@ template<class T, class CombineOp, class TransformOp, class FlipOp> void Foam::syncTools::syncEdgeList ( const polyMesh& mesh, - const labelList& meshEdges, + const labelUList& meshEdges, List<T>& edgeValues, const CombineOp& cop, const T& nullValue, @@ -947,8 +929,8 @@ void Foam::syncTools::syncEdgeList { FatalErrorInFunction << "Number of values " << edgeValues.size() - << " is not equal to the number of meshEdges " - << meshEdges.size() << abort(FatalError); + << " != number of meshEdges " << meshEdges.size() << nl + << abort(FatalError); } const edgeList& edges = mesh.edges(); const globalMeshData& gd = mesh.globalData(); @@ -966,7 +948,7 @@ void Foam::syncTools::syncEdgeList const auto iter = mpm.cfind(meshEdgei); if (iter.good()) { - const label cppEdgei = iter(); + const label cppEdgei = iter.val(); const edge& cppE = cppEdges[cppEdgei]; const edge& meshE = edges[meshEdgei]; @@ -1012,7 +994,7 @@ void Foam::syncTools::syncEdgeList const auto iter = mpm.cfind(meshEdgei); if (iter.good()) { - label cppEdgei = iter(); + label cppEdgei = iter.val(); const edge& cppE = cppEdges[cppEdgei]; const edge& meshE = edges[meshEdgei]; @@ -1049,14 +1031,13 @@ void Foam::syncTools::syncBoundaryFaceList { FatalErrorInFunction << "Number of values " << faceValues.size() - << " is not equal to the number of boundary faces in the mesh " - << mesh.nBoundaryFaces() << nl + << " != number of boundary faces " << mesh.nBoundaryFaces() << nl << abort(FatalError); } const polyBoundaryMesh& patches = mesh.boundaryMesh(); - if (parRun) + if (parRun && UPstream::parRun()) { // Avoid mesh.globalData() - possible race condition @@ -1124,7 +1105,7 @@ void Foam::syncTools::syncBoundaryFaceList } // Wait for all comms to finish - Pstream::waitRequests(startRequest); + UPstream::waitRequests(startRequest); // Combine with existing data for (const polyPatch& pp : patches) @@ -1161,7 +1142,7 @@ void Foam::syncTools::syncBoundaryFaceList else { DynamicList<label> neighbProcs; - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send for (const polyPatch& pp : patches) @@ -1294,20 +1275,20 @@ void Foam::syncTools::syncFaceList { FatalErrorInFunction << "Number of values " << faceValues.size() - << " is not equal to the number of " + << " != number of " << (isBoundaryOnly ? "boundary" : "mesh") << " faces " - << ((mesh.nFaces() - boundaryOffset)) << nl + << (mesh.nFaces() - boundaryOffset) << nl << abort(FatalError); } const polyBoundaryMesh& patches = mesh.boundaryMesh(); - if (parRun) + if (parRun && UPstream::parRun()) { const label startRequest = UPstream::nRequests(); // Receive buffers - PtrList<PackedList<Width>> recvInfos(patches.size()); + PtrList<PackedList<Width>> recvBufs(patches.size()); // Set up reads for (const polyPatch& pp : patches) @@ -1318,23 +1299,21 @@ void Foam::syncTools::syncFaceList { const auto& procPatch = *ppp; const label patchi = pp.index(); - const label patchSize = pp.size(); - recvInfos.set(patchi, new PackedList<Width>(patchSize)); - PackedList<Width>& recvInfo = recvInfos[patchi]; + auto& recvbuf = recvBufs.emplace_set(patchi, pp.size()); UIPstream::read ( UPstream::commsTypes::nonBlocking, procPatch.neighbProcNo(), - recvInfo.data_bytes(), - recvInfo.size_bytes() + recvbuf.data_bytes(), + recvbuf.size_bytes() ); } } // Send buffers - PtrList<PackedList<Width>> sendInfos(patches.size()); + PtrList<PackedList<Width>> sendBufs(patches.size()); // Set up writes for (const polyPatch& pp : patches) @@ -1346,24 +1325,16 @@ void Foam::syncTools::syncFaceList const auto& procPatch = *ppp; const label patchi = pp.index(); - const labelRange range - ( - pp.start()-boundaryOffset, - pp.size() - ); - sendInfos.set - ( - patchi, - new PackedList<Width>(faceValues, range) - ); - PackedList<Width>& sendInfo = sendInfos[patchi]; + const labelRange range(pp.start()-boundaryOffset, pp.size()); + + auto& sendbuf = sendBufs.emplace_set(patchi, faceValues, range); UOPstream::write ( UPstream::commsTypes::nonBlocking, procPatch.neighbProcNo(), - sendInfo.cdata_bytes(), - sendInfo.size_bytes() + sendbuf.cdata_bytes(), + sendbuf.size_bytes() ); } } @@ -1381,13 +1352,13 @@ void Foam::syncTools::syncFaceList const label patchi = pp.index(); const label patchSize = pp.size(); - const PackedList<Width>& recvInfo = recvInfos[patchi]; + const auto& recvbuf = recvBufs[patchi]; // Combine (bitwise) label bFacei = pp.start()-boundaryOffset; for (label i = 0; i < patchSize; ++i) { - unsigned int recvVal = recvInfo[i]; + unsigned int recvVal = recvbuf[i]; unsigned int faceVal = faceValues[bFacei]; cop(faceVal, recvVal); @@ -1440,15 +1411,16 @@ void Foam::syncTools::swapBoundaryCellList ( const polyMesh& mesh, const UList<T>& cellData, - List<T>& neighbourCellData + List<T>& neighbourCellData, + const bool parRun ) { if (cellData.size() != mesh.nCells()) { FatalErrorInFunction << "Number of cell values " << cellData.size() - << " is not equal to the number of cells in the mesh " - << mesh.nCells() << abort(FatalError); + << " != number of cells " << mesh.nCells() << nl + << abort(FatalError); } const polyBoundaryMesh& patches = mesh.boundaryMesh(); @@ -1457,15 +1429,18 @@ void Foam::syncTools::swapBoundaryCellList for (const polyPatch& pp : patches) { - label bFacei = pp.offset(); + const auto& faceCells = pp.faceCells(); - for (const label celli : pp.faceCells()) - { - neighbourCellData[bFacei] = cellData[celli]; - ++bFacei; - } + // ie, boundarySlice() = patchInternalList() + SubList<T> + ( + neighbourCellData, + faceCells.size(), + pp.offset() + ) = UIndirectList<T>(cellData, faceCells); } - syncTools::swapBoundaryFaceList(mesh, neighbourCellData); + + syncTools::swapBoundaryFaceList(mesh, neighbourCellData, parRun); } @@ -1499,10 +1474,17 @@ template<unsigned Width> void Foam::syncTools::swapFaceList ( const polyMesh& mesh, - PackedList<Width>& faceValues + PackedList<Width>& faceValues, + const bool parRun ) { - syncFaceList(mesh, faceValues, eqOp<unsigned int>()); + syncFaceList + ( + mesh, + faceValues, + eqOp<unsigned int>(), + parRun + ); } @@ -1510,10 +1492,17 @@ template<unsigned Width> void Foam::syncTools::swapBoundaryFaceList ( const polyMesh& mesh, - PackedList<Width>& faceValues + PackedList<Width>& faceValues, + const bool parRun ) { - syncBoundaryFaceList(mesh, faceValues, eqOp<unsigned int>()); + syncBoundaryFaceList + ( + mesh, + faceValues, + eqOp<unsigned int>(), + parRun + ); } @@ -1530,8 +1519,8 @@ void Foam::syncTools::syncPointList { FatalErrorInFunction << "Number of values " << pointValues.size() - << " is not equal to the number of points in the mesh " - << mesh.nPoints() << abort(FatalError); + << " != number of points " << mesh.nPoints() << nl + << abort(FatalError); } const globalMeshData& gd = mesh.globalData(); @@ -1573,8 +1562,8 @@ void Foam::syncTools::syncEdgeList { FatalErrorInFunction << "Number of values " << edgeValues.size() - << " is not equal to the number of edges in the mesh " - << mesh.nEdges() << abort(FatalError); + << " != number of edges " << mesh.nEdges() << nl + << abort(FatalError); } const globalMeshData& gd = mesh.globalData(); diff --git a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C index 29ead1a45e64f9bb248f38451cb0df0dedf74ed7..b0ce8d06c22eab7334a7344724954ea6aeb57c5f 100644 --- a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,17 +83,77 @@ void Foam::ZoneMesh<ZoneType, MeshType>::calcZoneMap() const map.reserve(this->totalSize()); const PtrList<ZoneType>& zones = *this; + label zonei = 0; for (const ZoneType& zn : zones) { for (const label id : static_cast<const labelList&>(zn)) { - map.insert(id, zonei); + //map.insert(id, zonei); + const auto fnd = map.cfind(id); + if (!fnd) + { + map.insert(id, zonei); + } + else if (fnd.val() != zonei) + { + // Multiple zones for same id + + if (!additionalMapPtr_) + { + // First occurrence + label maxIndex = -1; + for (const ZoneType& zn : zones) + { + for + ( + const label id + : static_cast<const labelList&>(zn) + ) + { + maxIndex = Foam::max(maxIndex, id); + } + } + additionalMapPtr_.reset(new labelListList(maxIndex+1)); + } + auto& additionalMap = *additionalMapPtr_; + additionalMap[id].push_uniq(zonei); + } } ++zonei; } + + // Sort such that map contains lowest zoneID + if (additionalMapPtr_) + { + auto& additionalMap = *additionalMapPtr_; + forAll(additionalMap, id) + { + labelList& zones = additionalMap[id]; + + if (zones.size()) + { + Foam::stableSort(zones); + const label zonei = map[id]; + const label index = findLower(zones, zonei); + if (index == -1) + { + // Already first + } + else + { + map.set(id, zones[0]); + for (label i = 0; i < zones.size() && i <= index; i++) + { + zones[i] = zones[i+1]; + } + zones[index+1] = zonei; + } + } + } + } } } @@ -198,7 +258,7 @@ void Foam::ZoneMesh<ZoneType, MeshType>::populate template<class ZoneType, class MeshType> -bool Foam::ZoneMesh<ZoneType, MeshType>::readContents +bool Foam::ZoneMesh<ZoneType, MeshType>::readIOcontents ( const bool allowOptionalRead ) @@ -251,7 +311,7 @@ Foam::ZoneMesh<ZoneType, MeshType>::ZoneMesh { // Note: this is inconsistent with polyBoundaryMesh // which does not permit optional reading - readContents(true); // allowOptionalRead = true + readIOcontents(true); // allowOptionalRead = true } @@ -283,7 +343,7 @@ Foam::ZoneMesh<ZoneType, MeshType>::ZoneMesh { // Note: this is inconsistent with polyBoundaryMesh // which does not read all - readContents(true); // allowOptionalRead = true + readIOcontents(true); // allowOptionalRead = true } @@ -299,7 +359,7 @@ Foam::ZoneMesh<ZoneType, MeshType>::ZoneMesh regIOobject(io), mesh_(mesh) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { // Nothing read. Use supplied zones PtrList<ZoneType>& zones = *this; @@ -325,7 +385,7 @@ Foam::ZoneMesh<ZoneType, MeshType>::ZoneMesh regIOobject(io), mesh_(mesh) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { populate(std::move(entries)); } @@ -358,6 +418,35 @@ Foam::label Foam::ZoneMesh<ZoneType, MeshType>::whichZone } +template<class ZoneType, class MeshType> +Foam::label Foam::ZoneMesh<ZoneType, MeshType>::whichZones +( + const label objectIndex, + DynamicList<label>& zones +) const +{ + zones.clear(); + const auto fnd = zoneMap().cfind(objectIndex); + if (fnd) + { + // Add main element + zones.push_back(fnd.val()); + if (additionalMapPtr_) + { + const auto& additionalMap = *additionalMapPtr_; + if (objectIndex < additionalMap.size()) + { + for (const label zonei : additionalMap[objectIndex]) + { + zones.push_uniq(zonei); + } + } + } + } + return zones.size(); +} + + template<class ZoneType, class MeshType> Foam::wordList Foam::ZoneMesh<ZoneType, MeshType>::types() const { @@ -814,6 +903,7 @@ template<class ZoneType, class MeshType> void Foam::ZoneMesh<ZoneType, MeshType>::clearLocalAddressing() { zoneMapPtr_.reset(nullptr); + additionalMapPtr_.reset(nullptr); groupIDsPtr_.reset(nullptr); } @@ -877,7 +967,7 @@ bool Foam::ZoneMesh<ZoneType, MeshType>::checkParallelSync const bool report ) const { - if (!Pstream::parRun()) + if (!UPstream::parRun()) { return false; } @@ -935,7 +1025,7 @@ bool Foam::ZoneMesh<ZoneType, MeshType>::checkParallelSync { hasError = true; - if (debug || (report && Pstream::master())) + if (debug || (report && UPstream::master())) { Info<< " ***Zone " << zn.name() << " of type " << zn.type() diff --git a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.H b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.H index 90ab8ca15428274439712192b1011f723082d7fe..0039ab43dd427ab1836ee4a24ea244af3d100a0e 100644 --- a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.H +++ b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -76,6 +76,10 @@ class ZoneMesh //- Demand-driven: map of zone labels for given element mutable std::unique_ptr<Map<label>> zoneMapPtr_; + //- Demand-driven: map of additional zone labels for given element. + // Only populated if overlapping zones + mutable std::unique_ptr<labelListList> additionalMapPtr_; + //- Demand-driven: list of zone ids per group mutable std::unique_ptr<HashTable<labelList>> groupIDsPtr_; @@ -102,7 +106,7 @@ class ZoneMesh //- Return true if contents were read //- (controlled by IOobject readOption flags). - bool readContents(const bool allowOptionalRead); + bool readIOcontents(const bool allowOptionalRead); public: @@ -190,6 +194,14 @@ public: // If object does not belong to any zones, return -1 label whichZone(const label objectIndex) const; + //- Given a global object index, return (in argument) its zones. + // Returns number of zones (0 if object does not belong to any zones) + label whichZones + ( + const label objectIndex, + DynamicList<label>& zones + ) const; + //- Return a list of zone types wordList types() const; diff --git a/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchMeshData.C b/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchMeshData.C index c75900e8502aff7b762f768cf52a22b4648e0652..9650ab4138425d02b647c774d17f12fdcdd1c763 100644 --- a/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchMeshData.C +++ b/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchMeshData.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2016 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -129,15 +129,9 @@ Foam::PrimitivePatch<FaceList, PointField>::calcMeshPointMap() const << abort(FatalError); } - const labelList& mp = meshPoints(); - - meshPointMapPtr_.reset(new Map<label>(2*mp.size())); - auto& mpMap = *meshPointMapPtr_; + const labelList& meshPts = meshPoints(); - forAll(mp, i) - { - mpMap.insert(mp[i], i); - } + meshPointMapPtr_.reset(new Map<label>(invertToMap(meshPts))); DebugInfo << "Calculated mesh point map" << endl; } diff --git a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCellCells.C b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCellCells.C index a1924d6388ed46fe9e31f2653a025bfd4def2f9e..e28eb7e53fb9e007616b80276f891b14e19e87e0 100644 --- a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCellCells.C +++ b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCellCells.C @@ -60,7 +60,7 @@ void Foam::primitiveMesh::calcCellCells() const { // 1. Count number of internal faces per cell - labelList ncc(nCells(), Zero); + labelList ncc(nCells(), Foam::zero{}); const labelList& own = faceOwner(); const labelList& nei = faceNeighbour(); @@ -73,17 +73,16 @@ void Foam::primitiveMesh::calcCellCells() const // Create the storage ccPtr_ = new labelListList(ncc.size()); - labelListList& cellCellAddr = *ccPtr_; - + auto& cellCellAddr = *ccPtr_; // 2. Size and fill cellFaceAddr forAll(cellCellAddr, celli) { - cellCellAddr[celli].setSize(ncc[celli]); + cellCellAddr[celli].resize(ncc[celli]); + ncc[celli] = 0; // reset size counter } - ncc = 0; forAll(nei, facei) { diff --git a/src/OpenFOAM/meshes/primitiveShapes/triangle/triangle.H b/src/OpenFOAM/meshes/primitiveShapes/triangle/triangle.H index 88693507abc40be0788f1eb5a081765ac3d4db45..f9767cd3dbbdfed81955caaaa99f420908a74926 100644 --- a/src/OpenFOAM/meshes/primitiveShapes/triangle/triangle.H +++ b/src/OpenFOAM/meshes/primitiveShapes/triangle/triangle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -110,6 +110,15 @@ public: const FixedList<label, 3>& indices ); + //- Copy construct from subset of points + inline triPoints + ( + const UList<point>& points, + const label p0, + const label p1, + const label p2 + ); + // Member Functions @@ -275,7 +284,7 @@ public: //- Construct from three points inline triangle(const FixedList<Point, 3>& pts); - //- Construct from three points in the list of points + //- Construct from three points out of the list of points // The indices could be from triFace etc. inline triangle ( @@ -283,6 +292,15 @@ public: const FixedList<label, 3>& indices ); + //- Construct from three points out of the list of points + inline triangle + ( + const UList<Point>& points, + const label p0, + const label p1, + const label p2 + ); + //- Construct from Istream inline explicit triangle(Istream& is); diff --git a/src/OpenFOAM/meshes/primitiveShapes/triangle/triangleI.H b/src/OpenFOAM/meshes/primitiveShapes/triangle/triangleI.H index 0c84feb0b465cef19ec5c702b367721f4e995cbe..1014b5696215b5b6604695767b1d715bb878f173 100644 --- a/src/OpenFOAM/meshes/primitiveShapes/triangle/triangleI.H +++ b/src/OpenFOAM/meshes/primitiveShapes/triangle/triangleI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -69,6 +69,20 @@ inline Foam::triPoints::triPoints {} +inline Foam::triPoints::triPoints +( + const UList<point>& points, + const label p0, + const label p1, + const label p2 +) +{ + a() = points[p0]; + b() = points[p1]; + c() = points[p2]; +} + + template<class Point, class PointRef> inline Foam::triangle<Point, PointRef>::triangle ( @@ -108,6 +122,21 @@ inline Foam::triangle<Point, PointRef>::triangle {} +template<class Point, class PointRef> +inline Foam::triangle<Point, PointRef>::triangle +( + const UList<Point>& points, + const label p0, + const label p1, + const label p2 +) +: + a_(points[p0]), + b_(points[p1]), + c_(points[p2]) +{} + + template<class Point, class PointRef> inline Foam::triangle<Point, PointRef>::triangle(Istream& is) { diff --git a/src/OpenFOAM/parallel/fieldsDistributor/fieldsDistributorTemplates.C b/src/OpenFOAM/parallel/fieldsDistributor/fieldsDistributorTemplates.C index 491b8f31ee0d17941d240b94b7f864b0790c1a1e..1bd35abd3b8e9a8b21aae134b320ce3c73e33620 100644 --- a/src/OpenFOAM/parallel/fieldsDistributor/fieldsDistributorTemplates.C +++ b/src/OpenFOAM/parallel/fieldsDistributor/fieldsDistributorTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -167,16 +167,15 @@ void Foam::fieldsDistributor::readFieldsImpl if (deregister) { // Extra safety - remove all such types - const UPtrList<const GeoField> other + for ( - mesh.thisDb().objectRegistry::template cobjects<GeoField>() - ); - - for (const GeoField& field : other) + const GeoField& fld + : mesh.thisDb().objectRegistry::template csorted<GeoField>() + ) { - if (!field.ownedByRegistry()) + if (!fld.ownedByRegistry()) { - const_cast<GeoField&>(field).checkOut(); + const_cast<GeoField&>(fld).checkOut(); } } } @@ -270,7 +269,7 @@ void Foam::fieldsDistributor::readFieldsImpl // Broadcast zero sized fields everywhere (if needed) // Send like a list of dictionaries - OPBstream toProcs(UPstream::masterNo()); // worldComm + OPBstream toProcs(UPstream::worldComm); const label nDicts = (subsetter ? fields.size() : label(0)); @@ -299,7 +298,7 @@ void Foam::fieldsDistributor::readFieldsImpl else { // Receive the broadcast... - IPBstream fromMaster(UPstream::masterNo()); // worldComm + IPBstream fromMaster(UPstream::worldComm); // But only consume where needed... if (!haveMeshOnProc.test(UPstream::myProcNo())) @@ -348,18 +347,15 @@ void Foam::fieldsDistributor::readFieldsImpl /// Info<< nl; // Extra safety - remove all such types - HashTable<const GeoField*> other + for ( - mesh.thisDb().objectRegistry::template lookupClass<GeoField>() - ); - - forAllConstIters(other, iter) + const GeoField& fld + : mesh.thisDb().objectRegistry::template csorted<GeoField>() + ) { - GeoField& fld = const_cast<GeoField&>(*iter.val()); - if (!fld.ownedByRegistry()) { - fld.checkOut(); + const_cast<GeoField&>(fld).checkOut(); } } } diff --git a/src/OpenFOAM/parallel/globalIndex/globalIndex.C b/src/OpenFOAM/parallel/globalIndex/globalIndex.C index 8f314ba32804e7d5cc81306650a8f3880a880ca5..218869d33b388873bcbd9397f9a14ad55df4b9ce 100644 --- a/src/OpenFOAM/parallel/globalIndex/globalIndex.C +++ b/src/OpenFOAM/parallel/globalIndex/globalIndex.C @@ -290,7 +290,7 @@ Foam::globalIndex::bin if (!globalIds.empty()) { labelList& binOffsets = bins.offsets(); - binOffsets.resize(offsets.size(), Zero); + binOffsets.resize(offsets.size(), Foam::zero{}); labelList& binValues = bins.values(); binValues = UIndirectList<label>(globalIds, order); @@ -372,7 +372,7 @@ void Foam::globalIndex::reset // TBD: check for (proci >= 0) ? const auto proci = UPstream::myProcNo(comm); - counts.resize(len, Zero); + counts.resize(len, Foam::zero{}); counts[proci] = localSize; } diff --git a/src/OpenFOAM/parallel/globalIndex/globalIndex.H b/src/OpenFOAM/parallel/globalIndex/globalIndex.H index faad801f7d5b1189cce3475bc9f99ccb49e421d5..598c82e5521ce4eb01fa6804919b8d23c49d5968 100644 --- a/src/OpenFOAM/parallel/globalIndex/globalIndex.H +++ b/src/OpenFOAM/parallel/globalIndex/globalIndex.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,6 +83,14 @@ class globalIndex DynamicList<label>& validBins ); + // Cannot use non-blocking for non-contiguous data. + // template<class Type> + // inline static UPstream::commsTypes getCommsType + // ( + // const UPstream::commsTypes preferred + // = UPstream::commsTypes::nonBlocking + // ); + //- Report overflow at specified (non-negative) index static void reportOverflowAndExit ( @@ -110,6 +118,16 @@ public: struct gatherNonLocal{}; + // Static Member Functions + + //- Return a null globalIndex (reference to a nullObject). + //- Behaves like an empty globalIndex + static const globalIndex& null() noexcept + { + return NullObjectRef<globalIndex>(); + } + + // Constructors //- Default construct (empty) @@ -187,7 +205,7 @@ public: inline label length() const noexcept; //- Global sum of localSizes. Same as totalSize() - FOAM_DEPRECATED_STRICT(2022-10, "totalSize() - less ambiguous") + FOAM_DEPRECATED_STRICT(2022-10, "totalSize() - unambiguous") inline label size() const; //- The span size covered by the offsets, zero if empty @@ -722,10 +740,11 @@ public: //- Inplace collect data in processor order on master //- (in serial: a no-op). // Communication with default/specified communicator, message tag. - // After the gather, the field is zero-sized on the slaves. + // After the gather, the field is zero-sized on non-master. template<class Type> void gatherInplace ( + //! [in,out] List<Type>& fld, const int tag = UPstream::msgType(), const UPstream::commsTypes = UPstream::commsTypes::nonBlocking, @@ -737,12 +756,11 @@ public: // Communication with default/specified communicator. // \attention The nProcs for globalIndex and communicator // must match!! - // - // The allData is output (master), zero-sized on non-master template<class Type, class OutputContainer = List<Type>> void mpiGather ( const UList<Type>& sendData, + //! [out] output on master, zero-sized on non-master OutputContainer& allData, const label comm = UPstream::worldComm, //!< communicator @@ -780,6 +798,7 @@ public: template<class Type> void mpiGatherInplace ( + //! [in,out] List<Type>& fld, const label comm = UPstream::worldComm, //!< communicator @@ -833,6 +852,7 @@ public: template<class Type> static void mpiGatherInplaceOp ( + //! [in,out] List<Type>& fld, const label comm = UPstream::worldComm, //!< communicator @@ -844,12 +864,11 @@ public: //- Collect data in processor order on master //- (in serial: performs a simple copy). // Communication with default/specified communicator, message tag. - // - // The allFld is output (master), zero-sized on non-master template<class Type> static void gatherOp ( const UList<Type>& sendData, + //! [out] output on master, zero-sized on non-master List<Type>& allData, const int tag = UPstream::msgType(), const UPstream::commsTypes = UPstream::commsTypes::nonBlocking, @@ -859,12 +878,11 @@ public: //- Collect data in processor order on master //- (in serial: performs a simple copy). // Communication with default/specified communicator, message tag. - // - // The allFld is output (master), zero-sized on non-master template<class Type, class Addr> static void gatherOp ( const IndirectListBase<Type, Addr>& sendData, + //! [out] output on master, zero-sized on non-master List<Type>& allData, const int tag = UPstream::msgType(), const UPstream::commsTypes = UPstream::commsTypes::nonBlocking, @@ -903,10 +921,11 @@ public: //- (in serial: a no-op). // Communication with default/specified communicator, message tag. // - // After the gather, the field is zero-sized on the slaves. + // After the gather, the field is zero-sized on non-master. template<class Type> static void gatherInplaceOp ( + //! [in,out] List<Type>& fld, const int tag = UPstream::msgType(), const UPstream::commsTypes = UPstream::commsTypes::nonBlocking, diff --git a/src/OpenFOAM/parallel/globalIndex/globalIndexTemplates.C b/src/OpenFOAM/parallel/globalIndex/globalIndexTemplates.C index 3898913fe9cf02c52d0f8c8502209c3b47af8d47..4519893055dbcfd96788478c5891bbc33b631c54 100644 --- a/src/OpenFOAM/parallel/globalIndex/globalIndexTemplates.C +++ b/src/OpenFOAM/parallel/globalIndex/globalIndexTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,6 +30,25 @@ License // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // +// Cannot use non-blocking for non-contiguous data. +// template<class Type> +// inline Foam::UPstream::commsTypes getCommsType +// ( +// const UPstream::commsTypes preferred +// ) +// { +// return +// ( +// ( +// !is_contiguous<Type>::value +// && UPstream::commsTypes::nonBlocking == preferred +// ) +// ? UPstream::commsTypes::scheduled +// : preferred +// ); +// } + + template<class Addr> Foam::labelList Foam::globalIndex::calcOffsets @@ -115,8 +134,7 @@ void Foam::globalIndex::gatherValues { // low-level: no parRun guard - // Automatically change from nonBlocking to scheduled for - // non-contiguous data. + // Cannot use non-blocking for non-contiguous data. const UPstream::commsTypes commsType = ( ( @@ -152,8 +170,7 @@ void Foam::globalIndex::gatherValues } else { - IPstream fromProc(commsType, procIDs[i], 0, tag, comm); - fromProc >> allValues[i]; + IPstream::recv(allValues[i], procIDs[i], tag, comm); } } } @@ -175,8 +192,7 @@ void Foam::globalIndex::gatherValues } else { - OPstream toMaster(commsType, masterProci, 0, tag, comm); - toMaster << localValue; + OPstream::send(localValue, commsType, masterProci, tag, comm); } } @@ -202,8 +218,7 @@ void Foam::globalIndex::gather { // low-level: no parRun guard - // Automatically change from nonBlocking to scheduled for - // non-contiguous data. + // Cannot use non-blocking for non-contiguous data. const UPstream::commsTypes commsType = ( ( @@ -252,8 +267,7 @@ void Foam::globalIndex::gather } else { - IPstream fromProc(commsType, procIDs[i], 0, tag, comm); - fromProc >> procSlot; + IPstream::recv(procSlot, procIDs[i], tag, comm); } } } @@ -277,8 +291,7 @@ void Foam::globalIndex::gather } else { - OPstream toMaster(commsType, masterProci, 0, tag, comm); - toMaster << fld; + OPstream::send(fld, commsType, masterProci, tag, comm); } } @@ -322,8 +335,7 @@ void Foam::globalIndex::gather return; } - // Automatically change from nonBlocking to scheduled for - // non-contiguous data. + // Cannot use non-blocking for non-contiguous data. const UPstream::commsTypes commsType = ( ( @@ -362,8 +374,7 @@ void Foam::globalIndex::gather } else { - IPstream fromProc(commsType, procIDs[i], 0, tag, comm); - fromProc >> procSlot; + IPstream::recv(procSlot, procIDs[i], tag, comm); } } } @@ -375,8 +386,7 @@ void Foam::globalIndex::gather } else { - OPstream toMaster(commsType, masterProci, 0, tag, comm); - toMaster << fld; + OPstream::send(fld, commsType, masterProci, tag, comm); } } @@ -907,8 +917,7 @@ void Foam::globalIndex::scatter { // low-level: no parRun guard - // Automatically change from nonBlocking to scheduled for - // non-contiguous data. + // Cannot use non-blocking for non-contiguous data. const UPstream::commsTypes commsType = ( ( @@ -947,8 +956,7 @@ void Foam::globalIndex::scatter } else { - OPstream toProc(commsType, procIDs[i], 0, tag, comm); - toProc << procSlot; + OPstream::send(procSlot, commsType, procIDs[i], tag, comm); } } @@ -984,8 +992,7 @@ void Foam::globalIndex::scatter } else { - IPstream fromMaster(commsType, masterProci, 0, tag, comm); - fromMaster >> fld; + IPstream::recv(fld, masterProci, tag, comm); } } @@ -1085,7 +1092,7 @@ void Foam::globalIndex::get ); // Send local indices to individual processors as local index - PstreamBuffers sendBufs(UPstream::commsTypes::nonBlocking, tag, comm); + PstreamBuffers sendBufs(comm, tag); for (const auto proci : validBins) { @@ -1102,7 +1109,7 @@ void Foam::globalIndex::get sendBufs.finishedSends(); - PstreamBuffers returnBufs(UPstream::commsTypes::nonBlocking, tag, comm); + PstreamBuffers returnBufs(comm, tag); for (const int proci : sendBufs.allProcs()) { diff --git a/src/OpenFOAM/parallel/processorTopology/processorTopology.C b/src/OpenFOAM/parallel/processorTopology/processorTopology.C index 4689d7b38ef5316ab0ddd3c238f1642fd79fd15d..1f09f546b0ad079e9642ce2b08162758271fdb16 100644 --- a/src/OpenFOAM/parallel/processorTopology/processorTopology.C +++ b/src/OpenFOAM/parallel/processorTopology/processorTopology.C @@ -26,13 +26,12 @@ License \*---------------------------------------------------------------------------*/ #include "processorTopology.H" -#include "Pstream.H" +#include "Pstream.H" // For allGatherList() // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::processorTopology::processorTopology() +Foam::processorTopology::processorTopology() noexcept : - procPatchMap_(0), comm_(UPstream::worldComm) {} diff --git a/src/OpenFOAM/parallel/processorTopology/processorTopology.H b/src/OpenFOAM/parallel/processorTopology/processorTopology.H index 8a15d6ebed17989c7406662dd1dc1c905bc71919..cb33005aa0c3454d1b289065366a67e3d7b076a6 100644 --- a/src/OpenFOAM/parallel/processorTopology/processorTopology.H +++ b/src/OpenFOAM/parallel/processorTopology/processorTopology.H @@ -118,7 +118,7 @@ public: // Constructors //- Default construct (empty) - processorTopology(); + processorTopology() noexcept; // Static Functions diff --git a/src/OpenFOAM/primitives/coordinate/rotation/EulerCoordinateRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/EulerCoordinateRotation.H index f5053531540d6cf8cfaaec2d3b3e298b6a782883..5dfaf1e9df1a6048875f590a46959c2adf37bce8 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/EulerCoordinateRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/EulerCoordinateRotation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -133,9 +133,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::euler>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/STARCDCoordinateRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/STARCDCoordinateRotation.H index 057c6f699b1372838177e422faf8a28218636ff7..d6f4bed516da6e478d2cc15ed84b255702f6dc3d 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/STARCDCoordinateRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/STARCDCoordinateRotation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -115,9 +115,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::starcd>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/axesRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/axesRotation.H index cd693981a78ebba9fc736e80fb2e2d0f9bc302f2..775f9bb0068d94e5d8efeacc5d30090f826fe1b7 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/axesRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/axesRotation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -144,9 +144,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::axes>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/axisAngleRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/axisAngleRotation.H index 0914d4b1c237e208affb8275eb4eb0daee80ed1a..5ff65b483eea55685814eba54ac7277820c82160 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/axisAngleRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/axisAngleRotation.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -120,9 +120,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::axisAngle>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/coordinateRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/coordinateRotation.H index 32c5e81493ae6cadb6ced61fea782ea9f47917b1..6a2ccd372410ebd3a417951de017023ed40754bd 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/coordinateRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/coordinateRotation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -109,11 +109,18 @@ public: // Uses all default constructors - //- Construct and return a clone + //- Return a clone virtual autoPtr<coordinateRotation> clone() const = 0; - // Selectors + // Factory Methods + + //- Clone a coordinate rotation + template<class Derived> + static autoPtr<coordinateRotation> Clone(const Derived& crot) + { + return autoPtr<coordinateRotation>(new Derived(crot)); + } //- Select construct the specified coordinate rotation type // diff --git a/src/OpenFOAM/primitives/coordinate/rotation/cylindricalRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/cylindricalRotation.H index 59a1acd0fb2ea20f3b8c47de53442dc7ff825d79..ca9c1d987b69081a53c9812f80bae5346a76824e 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/cylindricalRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/cylindricalRotation.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -89,9 +89,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::cylindrical>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/identityRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/identityRotation.H index 80fe1efec67e465870dcad86713883bf703f73a6..ede44c3c2876c46215594613c55ec6d3cb9f3d92 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/identityRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/identityRotation.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -93,9 +93,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::identity>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/rotation/specifiedRotation.H b/src/OpenFOAM/primitives/coordinate/rotation/specifiedRotation.H index 6d41c8ce554e4627a57e937e20e271ce00082400..f2f0971f0c0d033b1dc1974d0258957455e64334 100644 --- a/src/OpenFOAM/primitives/coordinate/rotation/specifiedRotation.H +++ b/src/OpenFOAM/primitives/coordinate/rotation/specifiedRotation.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -89,9 +89,7 @@ public: //- Return clone autoPtr<coordinateRotation> clone() const { - return - autoPtr<coordinateRotation>::NewFrom - <coordinateRotations::specified>(*this); + return coordinateRotation::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/systems/cartesianCS.H b/src/OpenFOAM/primitives/coordinate/systems/cartesianCS.H index 111db8100e0760a676e57443cbeac720068214e7..4b8c95429aa2f1acc7456eec1e7db33744cb29a3 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/cartesianCS.H +++ b/src/OpenFOAM/primitives/coordinate/systems/cartesianCS.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -149,7 +149,7 @@ public: //- Return clone virtual autoPtr<coordinateSystem> clone() const { - return autoPtr<coordinateSystem>::NewFrom<cartesian>(*this); + return coordinateSystem::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystem.H b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystem.H index 7703525b1a59272de2bd41f8a24e93e8c03a53a0..d835ddeaad59766d32b3dbe605182585e1959a31 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystem.H +++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystem.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -453,7 +453,26 @@ public: ); - // Selectors + // Factory Methods + + //- Clone a coordinate system + template<class Derived> + static autoPtr<coordinateSystem> Clone(const Derived& csys) + { + return autoPtr<coordinateSystem>(new Derived(csys)); + } + + //- Select construct the specified coordinate system type + //- with reference to objectRegistry for indirect entries. + // + // An empty modelType will be treated as "cartesian" + static autoPtr<coordinateSystem> Clone + ( + const word& modelType, + const objectRegistry& obr, + const dictionary& dict, + IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ + ); //- Select construct the specified coordinate system type //- with reference to objectRegistry for indirect entries. diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystemNew.C b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystemNew.C index 3fc948b219b4f5ad4c01a4d7805611928127fb2b..c397adcc26d2ba2481c016d409872079aee8ed7c 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystemNew.C +++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystemNew.C @@ -129,9 +129,9 @@ Foam::coordinateSystem::New { dictPtr = finder.dictPtr(); } - else if (finder.good()) + else if (finder.isStream()) { - const word csName(finder.ref().stream()); + const word csName(finder.stream()); // Deprecated, unsupported syntax if (error::master()) diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C index 54a95185d208616db2857e648fda0686c5d3447e..da4f2b5e1bcc352f437a4ff729a449dd30510f37 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C +++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,55 +46,53 @@ static const char* headerTypeCompat = "IOPtrList<coordinateSystem>"; // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::coordinateSystems::readFromStream(const bool readOnProc) +bool Foam::coordinateSystems::readIOcontents() { - Istream& is = readStream(word::null, readOnProc); + if (isReadRequired() || (isReadOptional() && headerOk())) + { + // Attempt reading + } + else + { + return false; + } + - if (readOnProc) + // Do reading + Istream& is = readStream(word::null); + + if (headerClassName() == typeName) { - if (headerClassName() == typeName) - { - this->readIstream(is, coordinateSystem::iNew()); - close(); - } - else if (headerClassName() == headerTypeCompat) - { - // Older (1806 and earlier) header name - if (error::master()) - { - std::cerr - << "--> FOAM IOWarning :" << nl - << " Found header class name '" << headerTypeCompat - << "' instead of '" << typeName << "'" << nl; - - error::warnAboutAge("header class", 1806); - } - - this->readIstream(is, coordinateSystem::iNew()); - close(); - } - else - { - FatalIOErrorInFunction(is) - << "unexpected class name " << headerClassName() - << " expected " << typeName - << " or " << headerTypeCompat << nl - << " while reading object " << name() - << exit(FatalIOError); - } + this->readIstream(is, coordinateSystem::iNew()); + close(); } -} + else if (headerClassName() == headerTypeCompat) + { + // Older (1806 and earlier) header name + if (error::master()) + { + std::cerr + << "--> FOAM IOWarning :" << nl + << " Found header class name '" << headerTypeCompat + << "' instead of '" << typeName << "'" << nl; + error::warnAboutAge("header class", 1806); + } -bool Foam::coordinateSystems::readContents() -{ - if (isReadRequired() || (isReadOptional() && headerOk())) + this->readIstream(is, coordinateSystem::iNew()); + close(); + } + else { - readFromStream(); - return true; + FatalIOErrorInFunction(is) + << "Unexpected class name " << headerClassName() + << " expected " << typeName + << " or " << headerTypeCompat << nl + << " while reading object " << name() + << exit(FatalIOError); } - return false; + return true; } @@ -102,10 +100,9 @@ bool Foam::coordinateSystems::readContents() Foam::coordinateSystems::coordinateSystems(const IOobject& io) : - regIOobject(io), - PtrList<coordinateSystem>() + regIOobject(io) { - readContents(); + readIOcontents(); } @@ -131,10 +128,9 @@ Foam::coordinateSystems::coordinateSystems const PtrList<coordinateSystem>& content ) : - regIOobject(io), - PtrList<coordinateSystem>() + regIOobject(io) { - if (!readContents()) + if (!readIOcontents()) { static_cast<PtrList<coordinateSystem>&>(*this) = content; } @@ -150,7 +146,7 @@ Foam::coordinateSystems::coordinateSystems regIOobject(io), PtrList<coordinateSystem>(std::move(content)) { - readContents(); + readIOcontents(); } diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H index 6dcce33a9003282e7a54e250c334f7db78ec3012..183415127f5b35363f1e67a516623c8fc4f472c2 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H +++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,11 +83,18 @@ class coordinateSystems { // Private Member Functions - //- Read "coordinateSystems" or older "IOPtrList<coordinateSystem>" - void readFromStream(const bool readOnProc = true); + //- Read if IOobject flags set. + //- Reads "coordinateSystems" or older "IOPtrList<coordinateSystem>" + // Return true if read. + bool readIOcontents(); - //- Read if IOobject flags set. Return true if read. - bool readContents(); +public: + + //- Declare type-name, virtual type (without debug switch) + TypeNameNoDebug("coordinateSystems"); + + + // Generated Methods //- No copy construct coordinateSystems(const coordinateSystems&) = delete; @@ -96,12 +103,6 @@ class coordinateSystems void operator=(const coordinateSystems&) = delete; -public: - - //- Declare type-name, virtual type (without debug switch) - TypeNameNoDebug("coordinateSystems"); - - // Constructors //- Read construct from IOobject diff --git a/src/OpenFOAM/primitives/coordinate/systems/cylindricalCS.H b/src/OpenFOAM/primitives/coordinate/systems/cylindricalCS.H index 47d39e5fa582cb575b7c05e63dcf578e72b990a9..a6a08e7a19dd854a808f542dde9b5f0f8e63dc9b 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/cylindricalCS.H +++ b/src/OpenFOAM/primitives/coordinate/systems/cylindricalCS.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2014 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -191,7 +191,7 @@ public: //- Return clone virtual autoPtr<coordinateSystem> clone() const { - return autoPtr<coordinateSystem>::NewFrom<cylindrical>(*this); + return coordinateSystem::Clone(*this); } diff --git a/src/OpenFOAM/primitives/coordinate/systems/indirectCS.H b/src/OpenFOAM/primitives/coordinate/systems/indirectCS.H index 26565d46f232d9696f813aa4c3753885721f8753..bf40e9a6a28c178a731457bd25750a59025b7bbf 100644 --- a/src/OpenFOAM/primitives/coordinate/systems/indirectCS.H +++ b/src/OpenFOAM/primitives/coordinate/systems/indirectCS.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -149,7 +149,7 @@ public: //- Return clone virtual autoPtr<coordinateSystem> clone() const { - return autoPtr<coordinateSystem>::NewFrom<indirect>(*this); + return coordinateSystem::Clone(*this); } diff --git a/src/OpenFOAM/primitives/enums/Enum.H b/src/OpenFOAM/primitives/enums/Enum.H index d990c3ca47416068973ff1a9da32927214f33746..0ee27e49a2f60a1e02996c6ef4c9f507cd3a93cc 100644 --- a/src/OpenFOAM/primitives/enums/Enum.H +++ b/src/OpenFOAM/primitives/enums/Enum.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -298,11 +298,16 @@ public: const_iterator begin() const noexcept { return cbegin(); } const_iterator end() const noexcept { return cend(); } - //- Find the enumeration by name. + //- Find key/value pair by enumeration name. // Equal to cend() if not found, or test if good() inline const_iterator cfind(const word& key) const; const_iterator find(const word& key) const { return cfind(key); } + //- Find key/value pair by enumeration value. + // Equal to cend() if not found, or test if good() + inline const_iterator cfind(const EnumType e) const; + const_iterator find(const EnumType e) const { return cfind(e); } + // Housekeeping diff --git a/src/OpenFOAM/primitives/enums/EnumI.H b/src/OpenFOAM/primitives/enums/EnumI.H index 891dbd7da993a5959b60b1ea0586c51fa9ac003c..06b175e1fc70a1f766b42ccb738a96c49354ae97 100644 --- a/src/OpenFOAM/primitives/enums/EnumI.H +++ b/src/OpenFOAM/primitives/enums/EnumI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -252,6 +252,20 @@ Foam::Enum<EnumType>::cfind(const word& key) const } +template<class EnumType> +inline typename Foam::Enum<EnumType>::const_iterator +Foam::Enum<EnumType>::cfind(const EnumType e) const +{ + const label idx = vals_.find(int(e)); + + return typename Enum<EnumType>::const_iterator + ( + this, + (idx >= 0 ? idx : this->size()) + ); +} + + // * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // template<class EnumType> diff --git a/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H b/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H index 486744c04f3f3589381b7cea8bcc224242318c9d..bb7341047cf046c2ab65b38bb1544a8bcde03fbc 100644 --- a/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H +++ b/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -140,10 +140,10 @@ public: //- Copy construct explicit CSV(const CSV<Type>& csv); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new CSV<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Coded/CodedFunction1.H b/src/OpenFOAM/primitives/functions/Function1/Coded/CodedFunction1.H index ed8dbfe01e410c92c25e099d06f908058a4a7283..3884d5caa5998d516793437ea082e6893feb8adb 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Coded/CodedFunction1.H +++ b/src/OpenFOAM/primitives/functions/Function1/Coded/CodedFunction1.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -84,8 +84,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_CodedFunction1_H -#define Function1Types_CodedFunction1_H +#ifndef Foam_Function1Types_CodedFunction1_H +#define Foam_Function1Types_CodedFunction1_H #include "Function1.H" #include "codedBase.H" @@ -184,10 +184,10 @@ public: //- Copy construct explicit CodedFunction1(const CodedFunction1<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new CodedFunction1<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Constant/Constant.H b/src/OpenFOAM/primitives/functions/Function1/Constant/Constant.H index 3ddc1ed6709baf321899cf1f4d97625f77985653..84072468b22d876a7b603e9eaab25f1f24ef6a1d 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Constant/Constant.H +++ b/src/OpenFOAM/primitives/functions/Function1/Constant/Constant.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2021 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -53,8 +53,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Constant_H -#define Function1Types_Constant_H +#ifndef Foam_Function1Types_Constant_H +#define Foam_Function1Types_Constant_H #include "Function1.H" @@ -118,10 +118,10 @@ public: //- Copy constructor explicit Constant(const Constant<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Constant<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Cosine/Cosine.H b/src/OpenFOAM/primitives/functions/Function1/Cosine/Cosine.H index 5c00ed1a2ca8739eb605a487a0fc53392c89857f..6342c5066a8afb9a322b59c23d9bba680b69f919 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Cosine/Cosine.H +++ b/src/OpenFOAM/primitives/functions/Function1/Cosine/Cosine.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -96,8 +96,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Cosine_H -#define Function1Types_Cosine_H +#ifndef Foam_Function1Types_Cosine_H +#define Foam_Function1Types_Cosine_H #include "Sine.H" @@ -148,10 +148,10 @@ public: Sine<Type>(rhs) {} - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Cosine<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C index cfcde22801497c3ff6cb3e36d77564810ebd67a1..27fc4e660494d1378087c374677375cb4e634990 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C +++ b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C @@ -134,17 +134,6 @@ Foam::FieldFunction1<Function1Type>::FieldFunction1 {} -template<class Function1Type> -Foam::tmp<Foam::Function1<typename Function1Type::returnType>> -Foam::FieldFunction1<Function1Type>::clone() const -{ - return tmp<Function1<Type>> - ( - new FieldFunction1<Function1Type>(*this) - ); -} - - template<class Function1Type> Foam::tmp<Foam::Field<typename Function1Type::returnType>> Foam::FieldFunction1<Function1Type>::integrate diff --git a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H index fa64f4f0cd96e55f3a65b9f2610314607bc411d7..107a857b0b8eee8dffb2171d0972db00d9c665ef 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H +++ b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -164,11 +164,18 @@ public: //- Copy construct explicit Function1(const Function1<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const = 0; - // Selectors + // Factory Methods + + //- Clone a Function1 + template<class Derived> + static tmp<Function1<Type>> Clone(const Derived& fun) + { + return tmp<Function1<Type>>(new Derived(fun)); + } //- Selector, with fallback redirection static autoPtr<Function1<Type>> New @@ -321,8 +328,11 @@ public: const objectRegistry* obrPtr = nullptr ); - //- Construct and return a clone - virtual tmp<Function1<Type>> clone() const; + //- Return a clone + virtual tmp<Function1<Type>> clone() const + { + return Function1<Type>::Clone(*this); + } //- Destructor diff --git a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1Fwd.H b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1Fwd.H index b3ac5b7337365c7304c2fb2e0069812c2a0bbca4..c8f0053ec5ee8cf80e84e9976f9c5f8a277e25f4 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1Fwd.H +++ b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1Fwd.H @@ -25,8 +25,8 @@ License \*---------------------------------------------------------------------------*/ -#ifndef Function1Fwd_H -#define Function1Fwd_H +#ifndef Foam_Function1Fwd_H +#define Foam_Function1Fwd_H #include "Function1.H" #include "vector.H" diff --git a/src/OpenFOAM/primitives/functions/Function1/FunctionObjectTrigger/FunctionObjectTrigger.H b/src/OpenFOAM/primitives/functions/Function1/FunctionObjectTrigger/FunctionObjectTrigger.H index 9e2d876bf5fab06a8af0ef9b72048af863ef688d..4bc989a8402c4df69b0811b6c69c943f93809ae0 100644 --- a/src/OpenFOAM/primitives/functions/Function1/FunctionObjectTrigger/FunctionObjectTrigger.H +++ b/src/OpenFOAM/primitives/functions/Function1/FunctionObjectTrigger/FunctionObjectTrigger.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,8 +58,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_FunctionObjectTrigger_H -#define Function1Types_FunctionObjectTrigger_H +#ifndef Foam_Function1Types_FunctionObjectTrigger_H +#define Foam_Function1Types_FunctionObjectTrigger_H #include "Function1.H" #include "labelList.H" @@ -80,7 +80,6 @@ class FunctionObjectTrigger : public Function1<Type> { - // Private Data //- Trigger indices when it is considered active @@ -124,10 +123,10 @@ public: //- Copy construct explicit FunctionObjectTrigger(const FunctionObjectTrigger<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new FunctionObjectTrigger<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/FunctionObjectValue/FunctionObjectValue.H b/src/OpenFOAM/primitives/functions/Function1/FunctionObjectValue/FunctionObjectValue.H index 03f00ade901c128c59c151a4017bbb30bf097db4..c2e7f7919c9342ceea6d958c10a749484af47161 100644 --- a/src/OpenFOAM/primitives/functions/Function1/FunctionObjectValue/FunctionObjectValue.H +++ b/src/OpenFOAM/primitives/functions/Function1/FunctionObjectValue/FunctionObjectValue.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,8 +49,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_FunctionObjectValue_H -#define Function1Types_FunctionObjectValue_H +#ifndef Foam_Function1Types_FunctionObjectValue_H +#define Foam_Function1Types_FunctionObjectValue_H #include "Function1.H" @@ -116,10 +116,10 @@ public: //- Copy construct explicit FunctionObjectValue(const FunctionObjectValue<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new FunctionObjectValue<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/InputValueMapper/InputValueMapper.H b/src/OpenFOAM/primitives/functions/Function1/InputValueMapper/InputValueMapper.H index c7edfc49fe7737a9853ec4a10263f0d4776fd45a..a59a89ae638213b5b965d98e4041c394c63b5fba 100644 --- a/src/OpenFOAM/primitives/functions/Function1/InputValueMapper/InputValueMapper.H +++ b/src/OpenFOAM/primitives/functions/Function1/InputValueMapper/InputValueMapper.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -104,8 +104,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_InputValueMapper_H -#define Function1Types_InputValueMapper_H +#ifndef Foam_Function1Types_InputValueMapper_H +#define Foam_Function1Types_InputValueMapper_H #include "Function1.H" #include "Enum.H" @@ -201,10 +201,10 @@ public: //- Copy construct explicit InputValueMapper(const InputValueMapper<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new InputValueMapper<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/None/NoneFunction1.H b/src/OpenFOAM/primitives/functions/Function1/None/NoneFunction1.H index 2faa535cfb6a49bbb98ae10f8e468a014fd2c565..c3b67156fbc88afecc04028eb295c2722afc43df 100644 --- a/src/OpenFOAM/primitives/functions/Function1/None/NoneFunction1.H +++ b/src/OpenFOAM/primitives/functions/Function1/None/NoneFunction1.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,10 +86,10 @@ public: const objectRegistry* obrPtr = nullptr ); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new None<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/One/OneConstant.H b/src/OpenFOAM/primitives/functions/Function1/One/OneConstant.H index 84d496afb232ce5ca980651c0973dcc464ad30c4..8dc2bff57b62e3e079aec0584c6fd12a99a476d3 100644 --- a/src/OpenFOAM/primitives/functions/Function1/One/OneConstant.H +++ b/src/OpenFOAM/primitives/functions/Function1/One/OneConstant.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,8 +40,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_OneConstant_H -#define Function1Types_OneConstant_H +#ifndef Foam_Function1Types_OneConstant_H +#define Foam_Function1Types_OneConstant_H #include "Function1.H" @@ -93,10 +93,10 @@ public: const objectRegistry* obrPtr = nullptr ); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new OneConstant<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Polynomial/PolynomialEntry.H b/src/OpenFOAM/primitives/functions/Function1/Polynomial/PolynomialEntry.H index bf165ed22d228d09f70904622489e11237f0ceb6..61a5ba4daa5d6f5653d17f0f5e4414bdbee53155 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Polynomial/PolynomialEntry.H +++ b/src/OpenFOAM/primitives/functions/Function1/Polynomial/PolynomialEntry.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,8 +59,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Polynomial_H -#define Function1Types_Polynomial_H +#ifndef Foam_Function1Types_Polynomial_H +#define Foam_Function1Types_Polynomial_H #include "Function1.H" #include "Tuple2.H" @@ -127,10 +127,10 @@ public: //- Copy constructor explicit Polynomial(const Polynomial& poly); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Polynomial<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Scale/Scale.H b/src/OpenFOAM/primitives/functions/Function1/Scale/Scale.H index fe3c7ff0a68491a341d993e9db7ab6ffb36cc047..7df092c4ba3ee87029f26537b1ad67c31315e4d3 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Scale/Scale.H +++ b/src/OpenFOAM/primitives/functions/Function1/Scale/Scale.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -72,8 +72,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Scale_H -#define Function1Types_Scale_H +#ifndef Foam_Function1Types_Scale_H +#define Foam_Function1Types_Scale_H #include "Function1.H" @@ -133,10 +133,10 @@ public: //- Copy construct explicit Scale(const Scale<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Scale<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Sine/Sine.H b/src/OpenFOAM/primitives/functions/Function1/Sine/Sine.H index 58f255cba3779616c134c5c92480ece59b007b10..db86c65986e2c02541aa475daf11ff3a71f5e363 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Sine/Sine.H +++ b/src/OpenFOAM/primitives/functions/Function1/Sine/Sine.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -98,8 +98,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Sine_H -#define Function1Types_Sine_H +#ifndef Foam_Function1Types_Sine_H +#define Foam_Function1Types_Sine_H #include "Function1.H" @@ -192,10 +192,10 @@ public: //- Copy construct explicit Sine(const Sine<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Sine<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Square/Square.H b/src/OpenFOAM/primitives/functions/Function1/Square/Square.H index 0aa61cf6c51e9adc3c68fc3a1a4b504db5daa575..01d1aa4a04baa9bb1a48e5a03e4e5227460e97a7 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Square/Square.H +++ b/src/OpenFOAM/primitives/functions/Function1/Square/Square.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 OpenFOAM Foundation - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,8 +101,8 @@ Note \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Square_H -#define Function1Types_Square_H +#ifndef Foam_Function1Types_Square_H +#define Foam_Function1Types_Square_H #include "Sine.H" @@ -155,10 +155,10 @@ public: //- Copy construct explicit Square(const Square<Type>& rhs); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Square<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Table/Table.H b/src/OpenFOAM/primitives/functions/Function1/Table/Table.H index c9832de5c0b5ca0fa882724cbc871fea6dac7c66..cdb2b4f5ca51420d2013e82fee65f15fa2e90a16 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Table/Table.H +++ b/src/OpenFOAM/primitives/functions/Function1/Table/Table.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -79,8 +79,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Table_H -#define Function1Types_Table_H +#ifndef Foam_Function1Types_Table_H +#define Foam_Function1Types_Table_H #include "TableBase.H" @@ -130,10 +130,10 @@ public: //- Copy construct explicit Table(const Table<Type>& tbl); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Table<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/TableFile/TableFile.H b/src/OpenFOAM/primitives/functions/Function1/TableFile/TableFile.H index 9cd1319d6d33a1f62aec4940d494f3dc8469b400..c622c8653ccfaafd5bc2d885d03892840fff2ff8 100644 --- a/src/OpenFOAM/primitives/functions/Function1/TableFile/TableFile.H +++ b/src/OpenFOAM/primitives/functions/Function1/TableFile/TableFile.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,8 +59,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_TableFile_H -#define Function1Types_TableFile_H +#ifndef Foam_Function1Types_TableFile_H +#define Foam_Function1Types_TableFile_H #include "TableBase.H" @@ -111,10 +111,10 @@ public: //- Copy construct explicit TableFile(const TableFile<Type>& tbl); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new TableFile<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/functions/Function1/Uniform/Uniform.H b/src/OpenFOAM/primitives/functions/Function1/Uniform/Uniform.H index 1b17a7a355fe1926b0a40afa8f282a74ef11eb2f..22919c77ff11a31f487e4b9628d01d9835ae49fd 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Uniform/Uniform.H +++ b/src/OpenFOAM/primitives/functions/Function1/Uniform/Uniform.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,8 +40,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Uniform_H -#define Function1Types_Uniform_H +#ifndef Foam_Function1Types_Uniform_H +#define Foam_Function1Types_Uniform_H #include "Constant.H" @@ -89,10 +89,10 @@ public: Constant<Type>(entryName, dict, obrPtr) {} - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Uniform<Type>(*this)); + return Function1<Type>::Clone(*this); } }; diff --git a/src/OpenFOAM/primitives/functions/Function1/Zero/ZeroConstant.H b/src/OpenFOAM/primitives/functions/Function1/Zero/ZeroConstant.H index 3437ffc4a1a50189ddeb3b439f78f2215f32eaec..b457844b1bdee048368c9caee083b878e77a1465 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Zero/ZeroConstant.H +++ b/src/OpenFOAM/primitives/functions/Function1/Zero/ZeroConstant.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,8 +49,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_ZeroConstant_H -#define Function1Types_ZeroConstant_H +#ifndef Foam_Function1Types_ZeroConstant_H +#define Foam_Function1Types_ZeroConstant_H #include "Function1.H" @@ -102,10 +102,10 @@ public: const objectRegistry* obrPtr = nullptr ); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new ZeroConstant<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/OpenFOAM/primitives/nullObject/nullObject.H b/src/OpenFOAM/primitives/nullObject/nullObject.H index 8d3793f50c9fe9be3400cb38389e814c59d42eb7..f8d1fc269e60f3f496390aa22d104068bcddf5cf 100644 --- a/src/OpenFOAM/primitives/nullObject/nullObject.H +++ b/src/OpenFOAM/primitives/nullObject/nullObject.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014 OpenFOAM Foundation - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -158,7 +158,7 @@ extern const NullObject* nullObjectPtr; // IOstream Operators -//- Read from Istream consumes no content +//- Read from Istream consumes no content, does not change NullObject inline Istream& operator>>(Istream& is, const NullObject&) noexcept { return is; @@ -173,31 +173,48 @@ inline Ostream& operator<<(Ostream& os, const NullObject&) noexcept // Global Functions -//- Pointer (of type T) to the nullObject +//- Const pointer (of type T) to the nullObject template<class T> -inline const T* NullObjectPtr() +inline const T* NullObjectPtr() noexcept { return reinterpret_cast<const T*>(nullObjectPtr); } -//- Reference (of type T) to the nullObject +//- Non-const pointer (of type T) to the nullObject. +//- Only use when nothing will be written into it! template<class T> -inline const T& NullObjectRef() +inline T* NullObjectPtr_constCast() noexcept +{ + return reinterpret_cast<T*>(const_cast<NullObject*>(nullObjectPtr)); +} + + +//- Const reference (of type T) to the nullObject +template<class T> +inline const T& NullObjectRef() noexcept { return *reinterpret_cast<const T*>(nullObjectPtr); } +//- Non-const reference (of type T) to the nullObject +//- Only use when nothing will be written into it! +template<class T> +inline T& NullObjectRef_constCast() noexcept +{ + return *reinterpret_cast<T*>(const_cast<NullObject*>(nullObjectPtr)); +} + //- True if ptr is a pointer (of type T) to the nullObject template<class T> -inline bool isNull(const T* ptr) +inline bool isNull(const T* ptr) noexcept { return ptr == NullObjectPtr<T>(); } //- True if obj is a reference (of type T) to the nullObject template<class T> -inline bool isNull(const T& obj) +inline bool isNull(const T& obj) noexcept { return &obj == NullObjectPtr<T>(); } @@ -205,14 +222,14 @@ inline bool isNull(const T& obj) //- True if ptr is not a pointer (of type T) to the nullObject template<class T> -inline bool notNull(const T* ptr) +inline bool notNull(const T* ptr) noexcept { return ptr != NullObjectPtr<T>(); } //- True if obj is not a reference (of type T) to the nullObject template<class T> -inline bool notNull(const T& obj) +inline bool notNull(const T& obj) noexcept { return &obj != NullObjectPtr<T>(); } diff --git a/src/OpenFOAM/primitives/ranges/scalarRange/scalarRanges.C b/src/OpenFOAM/primitives/ranges/scalarRange/scalarRanges.C index f94f724742a9f67244f89d2779e8989462e96aac..74c3ce205ed051cc39039c17c94e297979613f2b 100644 --- a/src/OpenFOAM/primitives/ranges/scalarRange/scalarRanges.C +++ b/src/OpenFOAM/primitives/ranges/scalarRange/scalarRanges.C @@ -36,7 +36,7 @@ Foam::scalarRanges Foam::scalarRanges::parse bool report ) { - const SubStrings<std::string> items = stringOps::splitAny(str, " ,;"); + const auto items = stringOps::splitAny(str, " ,;"); scalarRanges ranges(items.size()); diff --git a/src/OpenFOAM/primitives/strings/lists/CStringList.C b/src/OpenFOAM/primitives/strings/lists/CStringList.C index 88d16f872e1ba1d3a1e131f09e93cac9f9caa92f..d9edbe829cbb2a5d931a85879c03061737a64719 100644 --- a/src/OpenFOAM/primitives/strings/lists/CStringList.C +++ b/src/OpenFOAM/primitives/strings/lists/CStringList.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,20 +28,67 @@ License #include "CStringList.H" #include "Ostream.H" +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +int Foam::CStringList::reset +( + std::initializer_list<const char* const> input +) +{ + clear(); + + if (!input.size()) + { + // Special handling of an empty list + argv_ = new char*[1]; + argv_[0] = nullptr; // Final nullptr terminator + return 0; + } + + // Count overall required string length, including each trailing nul char + for (const char* const s : input) + { + // nbytes_ += Foam::string::length(s) + 1 + nbytes_ += (s ? strlen(s) : 0) + 1; + } + --nbytes_; // Do not include final nul char in overall count + + argv_ = new char*[input.size()+1]; // Extra +1 for terminating nullptr + data_ = new char[nbytes_+1]; // Extra +1 for terminating nul char + + argv_[0] = data_; // Starts here + + for (const char* const s : input) + { + char *next = stringCopy(argv_[argc_], s); + argv_[++argc_] = next; // The start of next string + } + + argv_[argc_] = nullptr; // Final nullptr terminator + + return argc_; +} + + + // * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * // Foam::Ostream& Foam::operator<<(Ostream& os, const CStringList& list) { const int n = list.size(); - for (int i = 0, space = 0; i < n; ++i) + bool separator = false; + + for (int i = 0; i < n; ++i) { const char* p = list.get(i); if (p && *p) { - if (space++) os << ' '; + if (separator) os << ' '; os << p; + + separator = true; } } diff --git a/src/OpenFOAM/primitives/strings/lists/CStringList.H b/src/OpenFOAM/primitives/strings/lists/CStringList.H index e562ad2052e62d28e9671e19c5c1c163e7609f46..ec9b17367597aafafd2fb5c41ffe9ea7e1cf85db 100644 --- a/src/OpenFOAM/primitives/strings/lists/CStringList.H +++ b/src/OpenFOAM/primitives/strings/lists/CStringList.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,6 +55,9 @@ Description #include "stringList.H" #include "wordList.H" +#include <algorithm> // std::copy +#include <utility> // std::initializer_list + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -87,6 +90,11 @@ class CStringList // Private Member Functions + //- Copy characters into dest as NUL-terminated string. + // + // \return location one-past end of dest (ie, the next destination) + static inline char* stringCopy(char* dest, const char* src); + //- Copy string characters into dest as NUL-terminated string. // Forces conversion of std::sub_match to string form // @@ -99,6 +107,10 @@ class CStringList int resetContent(const ListType& input); +public: + + // Generated Methods + //- No copy construct CStringList(const CStringList&) = delete; @@ -106,13 +118,18 @@ class CStringList void operator=(const CStringList&) = delete; -public: - // Constructors //- Default construct, adding content later (via reset). inline constexpr CStringList() noexcept; + //- Copy construct from a list of C-strings + // Copies the input characters. + inline explicit CStringList + ( + std::initializer_list<const char* const> input + ); + //- Copy construct from a list of strings // Copies the input characters. template<class StringType> @@ -174,6 +191,10 @@ public: //- Clear contents and free memory inline void clear(); + //- Copy the input list of C-strings + // \return number of arguments (argc) + int reset(std::initializer_list<const char* const> input); + //- Copy the input list of strings. // \return number of arguments (argc) template<class StringType> diff --git a/src/OpenFOAM/primitives/strings/lists/CStringListI.H b/src/OpenFOAM/primitives/strings/lists/CStringListI.H index f7fa66ac085f222eb0ca7412bf9e9f5837f67162..112a3791dcce22ec24e1ca7f1c631fa05a5ec302 100644 --- a/src/OpenFOAM/primitives/strings/lists/CStringListI.H +++ b/src/OpenFOAM/primitives/strings/lists/CStringListI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2017 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,17 +27,18 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -inline char* Foam::CStringList::stringCopy(char *dest, const std::string& src) +inline char* Foam::CStringList::stringCopy(char* dest, const char* src) { - // Like string::copy() but without extra checks - const size_t len = src.length(); - for (size_t i = 0; i < len; ++i) - { - *dest = src[i]; - ++dest; - } + dest = std::copy_n(src, (src ? strlen(src) : 0), dest); *(dest++) = '\0'; + return dest; +} + +inline char* Foam::CStringList::stringCopy(char *dest, const std::string& src) +{ + dest = std::copy_n(src.data(), src.size(), dest); + *(dest++) = '\0'; return dest; } @@ -69,6 +70,17 @@ inline constexpr Foam::CStringList::CStringList() noexcept {} +inline Foam::CStringList::CStringList +( + std::initializer_list<const char* const> input +) +: + CStringList() +{ + reset(input); +} + + template<class StringType> inline Foam::CStringList::CStringList(const UList<StringType>& input) : diff --git a/src/OpenFOAM/primitives/strings/lists/CStringListTemplates.C b/src/OpenFOAM/primitives/strings/lists/CStringListTemplates.C index 9d52052659ff069df7bb43107b3959510268a237..69a1d717d24c7724558850cdb56ecb6e3f2b9171 100644 --- a/src/OpenFOAM/primitives/strings/lists/CStringListTemplates.C +++ b/src/OpenFOAM/primitives/strings/lists/CStringListTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2017 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,7 +34,7 @@ int Foam::CStringList::resetContent(const ListType& input) { clear(); - if (input.empty()) + if (!input.size()) { // Special handling of an empty list argv_ = new char*[1]; @@ -43,9 +43,9 @@ int Foam::CStringList::resetContent(const ListType& input) } // Count overall required string length, including each trailing nul char - for (const auto& str : input) + for (const auto& s : input) { - nbytes_ += str.length() + 1; + nbytes_ += s.length() + 1; } --nbytes_; // Do not include final nul char in overall count @@ -54,10 +54,10 @@ int Foam::CStringList::resetContent(const ListType& input) argv_[0] = data_; // Starts here - for (const auto& str : input) + for (const auto& s : input) { - char *next = stringCopy(argv_[argc_], str); - argv_[++argc_] = next; // The start of next string + char *next = stringCopy(argv_[argc_], s); + argv_[++argc_] = next; // The start of next string } argv_[argc_] = nullptr; // Final nullptr terminator @@ -76,7 +76,7 @@ Foam::CStringList::asList(int argc, const char * const argv[]) for (int i=0; i < argc; ++i) { - list[i] = argv[i]; + if (argv[i]) list[i] = argv[i]; } return list; diff --git a/src/OpenFOAM/primitives/strings/lists/SubStrings.H b/src/OpenFOAM/primitives/strings/lists/SubStrings.H index 8279d2d10df5773b0243d0fa3c9bfee5347f309d..373bebb6d4e8fbe507064f4ce9f2ac2dda167246 100644 --- a/src/OpenFOAM/primitives/strings/lists/SubStrings.H +++ b/src/OpenFOAM/primitives/strings/lists/SubStrings.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,12 +66,6 @@ public: typename StringType::const_iterator; - // Constructors - - //- Default construct - SubStrings() = default; - - // Member Functions //- The total string length of all sub-elements. @@ -109,19 +103,48 @@ public: this->push_back(range); } - //- Const reference to the first element, - //- for consistency with other OpenFOAM containers - auto first() const -> decltype(this->front()) + + //- Reduce size by 1 or more elements. Can be called on an empty list. + void pop_back(size_t n = 1) { - return this->front(); + if (n >= this->size()) + { + this->clear(); + } + else if (n > 0) + { + this->resize(this->size() - n); + } } - //- Const reference to the last element, - //- for consistency with other OpenFOAM containers - auto last() const -> decltype(this->back()) + //- Reduce size by 1 or more elements (from the front). + //- Can be called on an empty list. + void pop_front(size_t n = 1) { - return this->back(); + if (n >= this->size()) + { + this->clear(); + } + else if (n > 0) + { + // Overlapping range, avoid std::copy, std::move + for (size_t src = n, dst = 0; src < this->size(); ++src, ++dst) + { + (*this)[dst] = (*this)[src]; + } + this->resize(this->size() - n); + } } + + + // FUTURE? + // #if __cplusplus >= 201703L + // std::string_view view(size_t pos) const + // {} + // #else + // stdFoam::span<const char> view(size_t pos) const + // {} + // #endif }; diff --git a/src/OpenFOAM/primitives/strings/string/stringIO.C b/src/OpenFOAM/primitives/strings/string/stringIO.C index 346ebce3e5f70c5efc85e88272e2d60d20c4808a..c260f27e5f9b557ca6b8bcc7e65b48e7050d0de8 100644 --- a/src/OpenFOAM/primitives/strings/string/stringIO.C +++ b/src/OpenFOAM/primitives/strings/string/stringIO.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,6 +48,11 @@ Foam::Istream& Foam::operator>>(Istream& is, string& val) { val = tok.stringToken(); } + else if (tok.isWord()) + { + // Also accept a plain word as a string + val = tok.wordToken(); + } else { FatalIOErrorInFunction(is); diff --git a/src/OpenFOAM/primitives/strings/stringOps/stringOps.H b/src/OpenFOAM/primitives/strings/stringOps/stringOps.H index 11807754ba30554a69faefb8846e41f9890edcbb..1bc9de475807f8f7ad3ca0cd3e9550b5338a7918 100644 --- a/src/OpenFOAM/primitives/strings/stringOps/stringOps.H +++ b/src/OpenFOAM/primitives/strings/stringOps/stringOps.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -70,10 +70,10 @@ namespace stringOps //- Count the number of occurrences of the specified character std::string::size_type count(const std::string& s, const char c); - //- Return true if text matches one of the regular expressions. - inline bool match(const UList<wordRe>& patterns, const std::string& text) + //- True if text matches one of the selector expressions + inline bool match(const UList<wordRe>& selectors, const std::string& text) { - return wordRes::matcher(patterns)(text); + return wordRes::match(selectors, text); } //- Quote any meta-characters in given string @@ -372,8 +372,13 @@ namespace stringOps template<class StringType> Foam::SubStrings<StringType> split ( + //! The string to split const StringType& str, + //! The delimiter for splitting. Ill-defined if NUL character const char delim, + //! Offset within string to start splitting + std::string::size_type pos = 0, + //! Retain empty fields const bool keepEmpty = false ); @@ -382,8 +387,13 @@ namespace stringOps template<class StringType> Foam::SubStrings<StringType> split ( + //! The string to split const StringType& str, + //! The delimiters for splitting. Ill-defined if empty const std::string& delim, + //! Offset within string to start splitting + std::string::size_type pos = 0, + //! Retain empty fields const bool keepEmpty = false ); @@ -393,22 +403,25 @@ namespace stringOps template<class StringType> Foam::SubStrings<StringType> splitAny ( + //! The string to split const StringType& str, - const std::string& delim + //! The delimiters for splitting. Ill-defined if empty! + const std::string& delim, + //! Offset within string to start splitting + std::string::size_type pos = 0 ); //- Split string into sub-strings using a fixed field width. // Behaviour is ill-defined if width is zero. - // \param str the string to be split - // \param width the fixed field width for each sub-string - // \param start the optional offset of where to start the splitting. - // Any text prior to start is ignored in the operation. template<class StringType> Foam::SubStrings<StringType> splitFixed ( + //! The string to split const StringType& str, + //! Fixed field width for each sub-string const std::string::size_type width, - const std::string::size_type start = 0 + //! Offset within string to start splitting + std::string::size_type pos = 0 ); //- Split string into sub-strings at whitespace (TAB, NL, VT, FF, CR, SPC) @@ -416,23 +429,25 @@ namespace stringOps template<class StringType> Foam::SubStrings<StringType> splitSpace ( - const StringType& str + //! The string to split + const StringType& str, + //! Offset within string to start splitting + std::string::size_type pos = 0 ); //- Output string with text wrapping. // Always includes a trailing newline, unless the string itself is empty. - // - // \param os the output stream - // \param str the text to be output - // \param width the max-width before wrapping - // \param indent indentation for continued lines - // \param escape escape any backslashes on output void writeWrapped ( + //! The output stream OSstream& os, + //! The text to be output const std::string& str, + //! The max-width before wrapping const std::string::size_type width, + //! Indentation for continued lines const std::string::size_type indent = 0, + //! Escape any backslashes on output const bool escape = false ); diff --git a/src/OpenFOAM/primitives/strings/stringOps/stringOpsTemplates.C b/src/OpenFOAM/primitives/strings/stringOps/stringOpsTemplates.C index 19d06d013667db3fad36c1b4e73d6841de9c4ae3..29b230497fe7b25b27754a47d20a336d62f973ab 100644 --- a/src/OpenFOAM/primitives/strings/stringOps/stringOpsTemplates.C +++ b/src/OpenFOAM/primitives/strings/stringOps/stringOpsTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -98,34 +98,40 @@ Foam::SubStrings<StringType> Foam::stringOps::split ( const StringType& str, const char delim, + std::string::size_type pos, const bool keepEmpty ) { - Foam::SubStrings<StringType> lst; - if (str.empty() || !delim) + Foam::SubStrings<StringType> list; + + if + ( + !delim + || (pos == std::string::npos || pos >= str.size()) + ) { - return lst; + return list; } - lst.reserve(20); + list.reserve(20); - std::string::size_type beg = 0, end = 0; - while ((end = str.find(delim, beg)) != std::string::npos) + std::string::size_type end; + while ((end = str.find(delim, pos)) != std::string::npos) { - if (keepEmpty || (beg < end)) + if (keepEmpty || (pos < end)) { - lst.append(str.cbegin() + beg, str.cbegin() + end); + list.append(str.cbegin() + pos, str.cbegin() + end); } - beg = end + 1; + pos = end + 1; } // Trailing element - if (keepEmpty ? (beg <= str.size()) : (beg < str.size())) + if (keepEmpty ? (pos <= str.size()) : (pos < str.size())) { - lst.append(str.cbegin() + beg, str.cend()); + list.append(str.cbegin() + pos, str.cend()); } - return lst; + return list; } @@ -134,34 +140,40 @@ Foam::SubStrings<StringType> Foam::stringOps::split ( const StringType& str, const std::string& delim, + std::string::size_type pos, const bool keepEmpty ) { - Foam::SubStrings<StringType> lst; - if (str.empty() || delim.empty()) + Foam::SubStrings<StringType> list; + + if + ( + delim.empty() + || (pos == std::string::npos || pos >= str.size()) + ) { - return lst; + return list; } - lst.reserve(20); + list.reserve(20); - std::string::size_type beg = 0, end = 0; - while ((end = str.find(delim, beg)) != std::string::npos) + std::string::size_type end; + while ((end = str.find(delim, pos)) != std::string::npos) { - if (keepEmpty || (beg < end)) + if (keepEmpty || (pos < end)) { - lst.append(str.cbegin() + beg, str.cbegin() + end); + list.append(str.cbegin() + pos, str.cbegin() + end); } - beg = end + delim.size(); + pos = end + delim.size(); } // Trailing element - if (keepEmpty ? (beg <= str.size()) : (beg < str.size())) + if (keepEmpty ? (pos <= str.size()) : (pos < str.size())) { - lst.append(str.cbegin() + beg, str.cend()); + list.append(str.cbegin() + pos, str.cend()); } - return lst; + return list; } @@ -169,40 +181,41 @@ template<class StringType> Foam::SubStrings<StringType> Foam::stringOps::splitAny ( const StringType& str, - const std::string& delim + const std::string& delim, + std::string::size_type pos ) { - Foam::SubStrings<StringType> lst; - if (str.empty() || delim.empty()) + Foam::SubStrings<StringType> list; + + if + ( + delim.empty() + || (pos == std::string::npos || pos >= str.size()) + ) { - return lst; + return list; } - lst.reserve(20); + list.reserve(20); - for - ( - std::string::size_type pos = 0; - (pos = str.find_first_not_of(delim, pos)) != std::string::npos; - /*nil*/ - ) + while ((pos = str.find_first_not_of(delim, pos)) != std::string::npos) { const auto end = str.find_first_of(delim, pos); if (end == std::string::npos) { // Trailing element - lst.append(str.cbegin() + pos, str.cend()); + list.append(str.cbegin() + pos, str.cend()); break; } // Intermediate element - lst.append(str.cbegin() + pos, str.cbegin() + end); + list.append(str.cbegin() + pos, str.cbegin() + end); pos = end + 1; } - return lst; + return list; } @@ -211,43 +224,53 @@ Foam::SubStrings<StringType> Foam::stringOps::splitFixed ( const StringType& str, const std::string::size_type width, - const std::string::size_type start + std::string::size_type pos ) { - Foam::SubStrings<StringType> lst; - if (str.empty() || !width) + Foam::SubStrings<StringType> list; + + if + ( + !width + || (pos == std::string::npos || pos >= str.size()) + ) { - return lst; + return list; } + list.reserve(1 + ((str.size() - pos) / width)); + const auto len = str.size(); - lst.reserve(1 + (len / width)); - for (std::string::size_type pos = start; pos < len; pos += width) + while (pos < len) { const auto end = (pos + width); if (end >= len) { // Trailing element - lst.append(str.cbegin() + pos, str.cend()); + list.append(str.cbegin() + pos, str.cend()); break; } - lst.append(str.cbegin() + pos, str.cbegin() + end); + // Intermediate element + list.append(str.cbegin() + pos, str.cbegin() + end); + + pos += width; } - return lst; + return list; } template<class StringType> Foam::SubStrings<StringType> Foam::stringOps::splitSpace ( - const StringType& str + const StringType& str, + std::string::size_type pos ) { - return splitAny(str, "\t\n\v\f\r "); + return splitAny(str, "\t\n\v\f\r ", pos); } diff --git a/src/OpenFOAM/primitives/strings/wordRes/wordRes.H b/src/OpenFOAM/primitives/strings/wordRes/wordRes.H index de7c5d56aaab6113ec350ea2ceea1289ee655b5c..f106b2c59814de9c2a0c8d45d470df0d797f00e0 100644 --- a/src/OpenFOAM/primitives/strings/wordRes/wordRes.H +++ b/src/OpenFOAM/primitives/strings/wordRes/wordRes.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -67,31 +67,20 @@ class wordRes ( const UList<wordRe>& selectors, const std::string& text, - const bool literal=false - ); - - //- Smart match across entire list, returning the best match type. - // Stops on the first literal match, or continues to examine - // if a regex match occurs. - // \return wordRe::LITERAL, wordRe::REGEX on match and - // wordRe::UNKNOWN otherwise. - inline static wordRe::compOption found_matched - ( - const UList<wordRe>& selectors, - const std::string& text + const bool literal = false ); public: - // Static Data / Methods - - //- Return a null wordRes - a reference to the NullObject - inline static const wordRes& null(); + // Static Methods - //- Return a wordRes with duplicate entries filtered out. - // No distinction made between literals and regular expressions. - static wordRes uniq(const UList<wordRe>& input); + //- Return a null wordRes (reference to a nullObject). + //- Behaves like a empty wordRes. + static const wordRes& null() noexcept + { + return NullObjectRef<wordRes>(); + } // Constructors @@ -104,6 +93,60 @@ public: ~wordRes() = default; + // Static Functions + + //- Return a wordRes with duplicate entries filtered out. + // No distinction made between literals and regular expressions. + static wordRes uniq(const UList<wordRe>& input); + + //- Test for a match + inline static bool match + ( + const UList<wordRe>& selectors, + const std::string& text, + bool literal = false + ); + + //- Smart match across entire list, returning the best match type. + // Stops on the first literal match, or continues to examine + // if a regex match occurs. + // \return wordRe::LITERAL, wordRe::REGEX on match and + // wordRe::UNKNOWN otherwise. + inline static wordRe::compOption matched + ( + const UList<wordRe>& selectors, + const std::string& text + ); + + //- Determine the list indices for all matches. + // + // \return indices of the matches in the input list + template<class StringType> + inline static labelList matching + ( + //! A single literal or pattern matcher + const wordRe& select, + //! List of string inputs to match against + const UList<StringType>& input, + //! Invert the matching logic + const bool invert = false + ); + + //- Determine the list indices for all matches. + // + // \return indices of the matches in the input list + template<class StringType> + inline static labelList matching + ( + //! The list of matchers + const UList<wordRe>& selectors, + //! List of string inputs to match against + const UList<StringType>& input, + //! Invert the matching logic + const bool invert = false + ); + + // Member Functions //- Filter out duplicate entries (inplace). @@ -124,16 +167,16 @@ public: // UNKNOWN otherwise. inline wordRe::compOption matched(const std::string& text) const; - //- Return list indices for all matches. + //- Determine the list indices for all matches. // - // \param input A list of string inputs to match against - // \param invert invert the matching logic // \return indices of the matches in the input list template<class StringType> inline labelList matching ( + //! List of string inputs to match against const UList<StringType>& input, - const bool invert=false + //! Invert the matching logic + const bool invert = false ) const; @@ -148,18 +191,19 @@ public: //- Functor wrapper of a list of wordRe for matching struct matcher { - //- Construct with 'allow' matcher - inline matcher(const UList<wordRe>& allow); + //- Construct with \em select matcher(s) + inline explicit matcher(const UList<wordRe>& selectors) noexcept; - //- Nothing defined + //- No selectors defined inline bool empty() const noexcept; - //- True if text matches ANY of the entries. + //- True if text matches ANY of the selectors. + //- Always false if entries are empty. // Allows use as a predicate. inline bool operator()(const std::string& text) const; private: - const UList<wordRe>& allow_; + const UList<wordRe>& select_; }; @@ -184,7 +228,7 @@ public: ( const UList<wordRe>& allow, const UList<wordRe>& deny - ); + ) noexcept; //- Nothing defined inline bool empty() const noexcept; diff --git a/src/OpenFOAM/primitives/strings/wordRes/wordResI.H b/src/OpenFOAM/primitives/strings/wordRes/wordResI.H index e82a49c89f653f798dcca954f7cdfd15afcc64f1..d8a4a1d43435989eb5067993a101567d0706d3dc 100644 --- a/src/OpenFOAM/primitives/strings/wordRes/wordResI.H +++ b/src/OpenFOAM/primitives/strings/wordRes/wordResI.H @@ -27,12 +27,6 @@ License // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // -inline const Foam::wordRes& Foam::wordRes::null() -{ - return NullObjectRef<wordRes>(); -} - - inline Foam::label Foam::wordRes::first_match ( const UList<wordRe>& selectors, @@ -54,7 +48,27 @@ inline Foam::label Foam::wordRes::first_match } -inline Foam::wordRe::compOption Foam::wordRes::found_matched +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +inline bool Foam::wordRes::match +( + const UList<wordRe>& selectors, + const std::string& text, + bool literal +) +{ + for (const wordRe& select : selectors) + { + if (select.match(text, literal)) + { + return true; + } + } + return false; +} + + +inline Foam::wordRe::compOption Foam::wordRes::matched ( const UList<wordRe>& selectors, const std::string& text @@ -86,36 +100,59 @@ inline Foam::wordRe::compOption Foam::wordRes::found_matched } -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -inline bool Foam::wordRes::match(const std::string& text, bool literal) const +template<class StringType> +inline Foam::labelList Foam::wordRes::matching +( + const wordRe& select, + const UList<StringType>& input, + const bool invert +) { - return (first_match(*this, text, literal) >= 0); -} + if (select.empty() && !invert) + { + return labelList(); + } + const label len = input.size(); -inline Foam::wordRe::compOption -Foam::wordRes::matched(const std::string& text) const -{ - return found_matched(*this, text); + labelList indices(len); + + label count = 0; + for (label i = 0; i < len; ++i) + { + if (select.match(input[i]) ? !invert : invert) + { + indices[count] = i; + ++count; + } + } + indices.resize(count); + + return indices; } template<class StringType> inline Foam::labelList Foam::wordRes::matching ( + const UList<wordRe>& selectors, const UList<StringType>& input, const bool invert -) const +) { + if (selectors.empty() && !invert) + { + return labelList(); + } + const label len = input.size(); labelList indices(len); label count = 0; - for (label i=0; i < len; ++i) + for (label i = 0; i < len; ++i) { - if (match(input[i]) ? !invert : invert) + if (wordRes::match(selectors, input[i]) ? !invert : invert) { indices[count] = i; ++count; @@ -127,11 +164,37 @@ inline Foam::labelList Foam::wordRes::matching } +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +inline bool Foam::wordRes::match(const std::string& text, bool literal) const +{ + return wordRes::match(*this, text, literal); +} + + +inline Foam::wordRe::compOption +Foam::wordRes::matched(const std::string& text) const +{ + return wordRes::matched(*this, text); +} + + +template<class StringType> +inline Foam::labelList Foam::wordRes::matching +( + const UList<StringType>& input, + const bool invert +) const +{ + return wordRes::matching(*this, input, invert); +} + + // * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // inline bool Foam::wordRes::operator()(const std::string& text) const { - return (wordRes::first_match(*this, text) >= 0); + return wordRes::match(*this, text); } @@ -139,10 +202,10 @@ inline bool Foam::wordRes::operator()(const std::string& text) const inline Foam::wordRes::matcher::matcher ( - const UList<wordRe>& allow -) + const UList<wordRe>& selectors +) noexcept : - allow_(allow) + select_(selectors) {} @@ -150,7 +213,7 @@ inline Foam::wordRes::filter::filter ( const UList<wordRe>& allow, const UList<wordRe>& deny -) +) noexcept : allow_(allow), deny_(deny) @@ -159,7 +222,7 @@ inline Foam::wordRes::filter::filter inline bool Foam::wordRes::matcher::empty() const noexcept { - return allow_.empty(); + return select_.empty(); } inline bool Foam::wordRes::filter::empty() const noexcept @@ -170,7 +233,7 @@ inline bool Foam::wordRes::filter::empty() const noexcept inline bool Foam::wordRes::matcher::operator()(const std::string& text) const { - return (wordRes::first_match(allow_, text) >= 0); + return wordRes::match(select_, text); } @@ -179,17 +242,17 @@ inline bool Foam::wordRes::filter::operator()(const std::string& text) const if (allow_.empty()) { // No allow specified, so accept everything that is NOT blocked - return (deny_.empty() || (wordRes::first_match(deny_, text) < 0)); + return (deny_.empty() || !wordRes::match(deny_, text)); } else if (deny_.empty()) { // Nothing blocked, apply accept filter - return (wordRes::first_match(allow_, text) >= 0); + return wordRes::match(allow_, text); } else { // Both accept and deny filters, need to search more carefully - const auto result = wordRes::found_matched(allow_, text); + const auto result = wordRes::matched(allow_, text); return ( @@ -198,7 +261,7 @@ inline bool Foam::wordRes::filter::operator()(const std::string& text) const : ( result == wordRe::REGEX - && (wordRes::first_match(deny_, text) < 0) + && !wordRes::match(deny_, text) ) ); } diff --git a/src/OpenFOAM/primitives/traits/oneI.H b/src/OpenFOAM/primitives/traits/oneI.H index 8d1d08b6290d5b407d4ddcac227936075be77bb6..4ff522c9d36bdcf3077da48f855b3439e65b3e05 100644 --- a/src/OpenFOAM/primitives/traits/oneI.H +++ b/src/OpenFOAM/primitives/traits/oneI.H @@ -94,7 +94,7 @@ inline constexpr const one& operator/(const one& o, const one&) noexcept template<class Type> inline Type operator/(const one&, const Type& val) { - return scalar(1)/val; + return Type(scalar(1)/val); } template<class Type> @@ -111,13 +111,13 @@ inline constexpr const one& min(const one& o, const one&) noexcept template<class Type> inline Type min(const one&, const Type& t) noexcept { - return min(scalar(1), t); + return Type(min(scalar(1), t)); } template<class Type> inline Type min(const Type& t, const one&) noexcept { - return min(t, scalar(1)); + return Type(min(t, scalar(1))); } inline constexpr const one& max(const one& o, const one&) noexcept @@ -128,13 +128,13 @@ inline constexpr const one& max(const one& o, const one&) noexcept template<class Type> inline Type max(const one&, const Type& t) noexcept { - return max(scalar(1), t); + return Type(max(scalar(1), t)); } template<class Type> inline Type max(const Type& t, const one&) noexcept { - return max(t, scalar(1)); + return Type(max(t, scalar(1))); } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/Pstream/dummy/Make/files b/src/Pstream/dummy/Make/files index d5e68ac4088c2c8429edf8fa300e62256f273c3a..d560719fc826d5d7d3bfcf3cee2a4b0d9d25cc40 100644 --- a/src/Pstream/dummy/Make/files +++ b/src/Pstream/dummy/Make/files @@ -1,6 +1,7 @@ UPstream.C UPstreamAllToAll.C UPstreamBroadcast.C +UPstreamCommunicator.C UPstreamGatherScatter.C UPstreamReduce.C UPstreamRequest.C diff --git a/src/Pstream/dummy/UIPBstreamRead.C b/src/Pstream/dummy/UIPBstreamRead.C index ac23ba916de8d884a56ac8444ea839a2a37f9a17..31e0f0743fa0fd7ab502edbb20f9fb9822bb4d31 100644 --- a/src/Pstream/dummy/UIPBstreamRead.C +++ b/src/Pstream/dummy/UIPBstreamRead.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,7 +37,7 @@ void Foam::UIPBstream::bufferIPCrecv() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::label Foam::UIPBstream::read +std::streamsize Foam::UIPBstream::read ( const int rootProcNo, char* buf, diff --git a/src/Pstream/dummy/UIPstreamRead.C b/src/Pstream/dummy/UIPstreamRead.C index 316550769e6a79a431dc986b00f514dc4d5a854c..c8b7286fdf623ef7c04afb15c7b663830431cdfb 100644 --- a/src/Pstream/dummy/UIPstreamRead.C +++ b/src/Pstream/dummy/UIPstreamRead.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +38,7 @@ void Foam::UIPstream::bufferIPCrecv() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::label Foam::UIPstream::read +std::streamsize Foam::UIPstream::read ( const UPstream::commsTypes commsType, const int fromProcNo, diff --git a/src/Pstream/dummy/UPstream.C b/src/Pstream/dummy/UPstream.C index 573c0944696d2dc7bdb56b7ae96444392666c085..c935914db63e1da9dd74ba905e662133cac2dcf8 100644 --- a/src/Pstream/dummy/UPstream.C +++ b/src/Pstream/dummy/UPstream.C @@ -91,7 +91,7 @@ void Foam::UPstream::barrier(const label communicator, UPstream::Request* req) {} -std::pair<int,int> +std::pair<int,int64_t> Foam::UPstream::probeMessage ( const UPstream::commsTypes commsType, @@ -100,7 +100,7 @@ Foam::UPstream::probeMessage const label communicator ) { - return std::pair<int,int>(-1, 0); + return std::pair<int,int64_t>(-1, 0); } diff --git a/src/Pstream/dummy/UPstreamCommunicator.C b/src/Pstream/dummy/UPstreamCommunicator.C new file mode 100644 index 0000000000000000000000000000000000000000..e7c713f85c5dee460d74bd7863be5e3fb2f7a2f1 --- /dev/null +++ b/src/Pstream/dummy/UPstreamCommunicator.C @@ -0,0 +1,59 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "UPstream.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::UPstream::Communicator::Communicator() noexcept +: + UPstream::Communicator(nullptr) +{} + + +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::UPstream::Communicator +Foam::UPstream::Communicator::lookup(const label comm) +{ + return UPstream::Communicator(nullptr); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::UPstream::Communicator::good() const noexcept +{ + return false; +} + + +void Foam::UPstream::Communicator::reset() noexcept +{} + + +// ************************************************************************* // diff --git a/src/Pstream/dummy/UPstreamRequest.C b/src/Pstream/dummy/UPstreamRequest.C index dd56a0569dcaf686992c13e5c37b07f72eb6ce0d..4e67be859414f6d259b56fb8b0a4c5bef89d1bc1 100644 --- a/src/Pstream/dummy/UPstreamRequest.C +++ b/src/Pstream/dummy/UPstreamRequest.C @@ -47,6 +47,15 @@ void Foam::UPstream::Request::reset() noexcept {} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +// Foam::UPstream::Request +// Foam::UPstream::Request::lookup(const label req) +// { +// return UPstream::Request(nullptr); +// } + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::UPstream::nRequests() noexcept { return 0; } diff --git a/src/Pstream/mpi/Make/files b/src/Pstream/mpi/Make/files index 48a99bac4014cad74ac7c75f8de79fb793bfc069..c8b08f8a6a29b5a0a7235371adc47aaf6dbae59f 100644 --- a/src/Pstream/mpi/Make/files +++ b/src/Pstream/mpi/Make/files @@ -2,6 +2,7 @@ PstreamGlobals.C UPstream.C UPstreamAllToAll.C UPstreamBroadcast.C +UPstreamCommunicator.C UPstreamGatherScatter.C UPstreamReduce.C UPstreamRequest.C diff --git a/src/Pstream/mpi/PstreamGlobals.H b/src/Pstream/mpi/PstreamGlobals.H index fb8aaec350db158e4f2b9f6456f14943bcc13098..c912c9876f217db227f439ed1bbe0b79a4c20ab2 100644 --- a/src/Pstream/mpi/PstreamGlobals.H +++ b/src/Pstream/mpi/PstreamGlobals.H @@ -40,16 +40,8 @@ SourceFiles #define Foam_PstreamGlobals_H #include "DynamicList.H" -#include "UPstream.H" // for UPstream::Request - -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "UPstream.H" // For UPstream::Request +#include "openfoam_mpi.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/Pstream/mpi/UIPBstreamRead.C b/src/Pstream/mpi/UIPBstreamRead.C index f384c391ebd0b211bad66ca36a3d678399b34148..5080583396cd19d300eae994d0617a803f4c19ea 100644 --- a/src/Pstream/mpi/UIPBstreamRead.C +++ b/src/Pstream/mpi/UIPBstreamRead.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,7 +39,7 @@ void Foam::UIPBstream::bufferIPCrecv() // Expected message size, similar to MPI_Probe // Same type must be expected in UOPBstream::bufferIPCsend() - label bufSize(0); + std::streamsize bufSize(0); // Broadcast #1 - data size if @@ -47,7 +47,7 @@ void Foam::UIPBstream::bufferIPCrecv() !UPstream::broadcast ( reinterpret_cast<char*>(&bufSize), - sizeof(label), + sizeof(std::streamsize), comm_, fromProcNo_ //< is actually rootProcNo ) @@ -60,49 +60,48 @@ void Foam::UIPBstream::bufferIPCrecv() if (UPstream::debug) { - Pout<< "UOPBstream IPC read buffer :" + Perr<< "UOPBstream IPC read buffer :" << " root:" << fromProcNo_ << " comm:" << comm_ - << " probed size:" << bufSize + << " probed size:" << label(bufSize) << " wanted size:" << recvBuf_.capacity() << Foam::endl; } - // No buffer size allocated/specified - if (!recvBuf_.capacity()) + + // Set buffer size, avoiding any copying and resize doubling etc. + recvBuf_.clear(); + if (recvBuf_.capacity() < label(bufSize)) { - recvBuf_.resize(bufSize); + recvBuf_.setCapacity_nocopy(label(bufSize)); } + recvBuf_.resize_nocopy(label(bufSize)); // This is the only real information we can trust - messageSize_ = bufSize; + messageSize_ = label(bufSize); + // Broadcast #2 - data content // - skip if there is no data to receive - - if (messageSize_) - { - if + if + ( + (bufSize > 0) + && !UPstream::broadcast ( - !UPstream::broadcast - ( - recvBuf_.data(), - messageSize_, // same as bufSize - comm_, - fromProcNo_ //< is actually rootProcNo - ) + recvBuf_.data(), + recvBuf_.size(), // same as bufSize + comm_, + fromProcNo_ //< is actually rootProcNo ) - { - FatalErrorInFunction - << "MPI_Bcast failure receiving buffer data:" << bufSize << nl - << Foam::abort(FatalError); - } + ) + { + FatalErrorInFunction + << "MPI_Bcast failure receiving buffer data:" + << recvBuf_.size() << nl + << Foam::abort(FatalError); } - // Set addressed size. Leave actual allocated memory intact. - recvBuf_.resize(messageSize_); - - if (!messageSize_) + if (recvBuf_.empty()) { setEof(); } @@ -111,7 +110,7 @@ void Foam::UIPBstream::bufferIPCrecv() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::label Foam::UIPBstream::read +std::streamsize Foam::UIPBstream::read ( const int rootProcNo, char* buf, diff --git a/src/Pstream/mpi/UIPstreamRead.C b/src/Pstream/mpi/UIPstreamRead.C index afee9a19055f81c0881840551199724a869dfe25..bec4a2e87f6cbd72c0e593d25ceff5174ed733d5 100644 --- a/src/Pstream/mpi/UIPstreamRead.C +++ b/src/Pstream/mpi/UIPstreamRead.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,11 +35,12 @@ License // - as of 2023-06 appears to be broken with INTELMPI + PMI-2 (slurm) // and perhaps other places so currently avoid +#undef Pstream_use_MPI_Get_count + // * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // -// General blocking/non-blocking MPI receive, optionally with probed -// message information. -static Foam::label UPstream_mpi_receive +// General blocking/non-blocking MPI receive +static std::streamsize UPstream_mpi_receive ( const Foam::UPstream::commsTypes commsType, char* buf, @@ -54,34 +55,48 @@ static Foam::label UPstream_mpi_receive PstreamGlobals::reset_request(req); - if (UPstream::debug) + // TODO: some corrective action, at least when not nonBlocking + #if 0 + // No warnings here, just on the sender side. + if (bufSize > std::streamsize(INT_MAX)) { - Pout<< "UIPstream::read : starting read from:" << fromProcNo + Perr<< "UIPstream::read() : from rank " << fromProcNo + << " exceeds INT_MAX bytes" << Foam::endl; + error::printStack(Perr); + } + #endif + + if (UPstream::warnComm >= 0 && communicator != UPstream::warnComm) + { + Perr<< "UIPstream::read : starting read from:" << fromProcNo + << " size:" << label(bufSize) << " tag:" << tag << " comm:" << communicator - << " wanted size:" << label(bufSize) << " commsType:" << UPstream::commsTypeNames[commsType] + << " warnComm:" << UPstream::warnComm << Foam::endl; + error::printStack(Perr); } - if (UPstream::warnComm >= 0 && communicator != UPstream::warnComm) + else if (UPstream::debug) { - Pout<< "UIPstream::read : starting read from:" << fromProcNo + Perr<< "UIPstream::read : starting read from:" << fromProcNo + << " size:" << label(bufSize) << " tag:" << tag << " comm:" << communicator - << " wanted size:" << label(bufSize) << " commsType:" << UPstream::commsTypeNames[commsType] - << " warnComm:" << UPstream::warnComm << Foam::endl; - error::printStack(Pout); } + int returnCode = MPI_ERR_UNKNOWN; + profilingPstream::beginTiming(); if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::scheduled ) { - int returnCode = 0; + // Not UPstream::commsTypes::nonBlocking + MPI_Status status; { @@ -97,6 +112,8 @@ static Foam::label UPstream_mpi_receive ); } + profilingPstream::addGatherTime(); + if (returnCode != MPI_SUCCESS) { FatalErrorInFunction @@ -104,36 +121,53 @@ static Foam::label UPstream_mpi_receive << Foam::abort(FatalError); return 0; } - - profilingPstream::addGatherTime(); + else if (UPstream::debug) + { + Perr<< "UIPstream::read : finished recv from:" + << fromProcNo + << " size:" << label(bufSize) << " tag:" << tag + << Foam::endl; + } // Check size of message read - - int messageSize; - MPI_Get_count(&status, MPI_BYTE, &messageSize); - - if (UPstream::debug) + #ifdef Pstream_use_MPI_Get_count + int count(0); + MPI_Get_count(&status, MPI_BYTE, &count); + #else + MPI_Count count(0); + MPI_Get_elements_x(&status, MPI_BYTE, &count); + #endif + + // Errors + if (count == MPI_UNDEFINED || int64_t(count) < 0) { - Pout<< "UIPstream::read : finished read from:" << fromProcNo - << " tag:" << tag << " read size:" << label(bufSize) - << " commsType:" << UPstream::commsTypeNames[commsType] - << Foam::endl; + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "returned undefined or negative value" + << Foam::abort(FatalError); + } + else if (int64_t(count) > int64_t(UList<char>::max_size())) + { + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "count is larger than UList<char>::max_size() bytes" + << Foam::abort(FatalError); } - if (messageSize > bufSize) + + if (bufSize < std::streamsize(count)) { FatalErrorInFunction << "buffer (" << label(bufSize) << ") not large enough for incoming message (" - << messageSize << ')' + << label(count) << ')' << Foam::abort(FatalError); } - return messageSize; + return std::streamsize(count); } else if (commsType == UPstream::commsTypes::nonBlocking) { - int returnCode = 0; MPI_Request request; { @@ -158,19 +192,20 @@ static Foam::label UPstream_mpi_receive return 0; } + PstreamGlobals::push_request(request, req); + profilingPstream::addRequestTime(); + + if (UPstream::debug) { - Pout<< "UIPstream::read : started read from:" << fromProcNo - << " tag:" << tag << " read size:" << label(bufSize) - << " commsType:" << UPstream::commsTypeNames[commsType] + Perr<< "UIPstream::read : started non-blocking recv from:" + << fromProcNo + << " size:" << label(bufSize) << " tag:" << tag << " request:" << (req ? label(-1) : PstreamGlobals::outstandingRequests_.size()) << Foam::endl; } - PstreamGlobals::push_request(request, req); - profilingPstream::addRequestTime(); - // Assume the message will be completely received. return bufSize; } @@ -190,16 +225,31 @@ void Foam::UIPstream::bufferIPCrecv() // Called by constructor if (UPstream::debug) { - Pout<< "UIPstream IPC read buffer :" + Perr<< "UIPstream IPC read buffer :" << " from:" << fromProcNo_ << " tag:" << tag_ << " comm:" << comm_ << " wanted size:" << recvBuf_.capacity() << Foam::endl; } - // No buffer size allocated/specified - probe size of incoming message - if (!recvBuf_.capacity()) + // Fallback value + messageSize_ = recvBuf_.capacity(); + + if (commsType() == UPstream::commsTypes::nonBlocking) + { + // Non-blocking + // ~~~~~~~~~~~~ + // No chance of probing for size nor relying on the returned message + // size (since it returns immediately without any further checks) + // + // Fortunately there are not many (any?) places that are using + // a non-blocking IPstream with streaming anyhow. + + messageSize_ = recvBuf_.size(); + } + else if (!recvBuf_.capacity()) { + // No buffer size allocated/specified - probe size of incoming message profilingPstream::beginTiming(); MPI_Status status; @@ -212,34 +262,73 @@ void Foam::UIPstream::bufferIPCrecv() &status ); - MPI_Get_count(&status, MPI_BYTE, &messageSize_); - profilingPstream::addProbeTime(); - recvBuf_.resize(messageSize_); + + #ifdef Pstream_use_MPI_Get_count + int count(0); + MPI_Get_count(&status, MPI_BYTE, &count); + #else + MPI_Count count(0); + MPI_Get_elements_x(&status, MPI_BYTE, &count); + #endif + + // Errors + if (count == MPI_UNDEFINED || int64_t(count) < 0) + { + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "returned undefined or negative value" + << Foam::abort(FatalError); + } + else if (int64_t(count) > int64_t(UList<char>::max_size())) + { + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "count is larger than UList<char>::max_size() bytes" + << Foam::abort(FatalError); + } if (UPstream::debug) { - Pout<< "UIPstream::UIPstream : probed size:" - << messageSize_ << Foam::endl; + Perr<< "UIPstream::UIPstream : probed size:" + << label(count) << Foam::endl; } + + recvBuf_.resize(label(count)); + messageSize_ = label(count); } - messageSize_ = UPstream_mpi_receive + std::streamsize count = UPstream_mpi_receive ( commsType(), recvBuf_.data(), - recvBuf_.capacity(), + messageSize_, // The expected size fromProcNo_, tag_, comm_, nullptr // UPstream::Request ); + if (count < 0) + { + FatalErrorInFunction + << "MPI_recv() with negative size??" + << Foam::abort(FatalError); + } + else if (int64_t(count) > int64_t(UList<char>::max_size())) + { + FatalErrorInFunction + << "MPI_recv() larger than " + "UList<char>::max_size() bytes" + << Foam::abort(FatalError); + } + // Set addressed size. Leave actual allocated memory intact. - recvBuf_.resize(messageSize_); + recvBuf_.resize(label(count)); + messageSize_ = label(count); - if (!messageSize_) + if (recvBuf_.empty()) { setEof(); } @@ -248,7 +337,7 @@ void Foam::UIPstream::bufferIPCrecv() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::label Foam::UIPstream::read +std::streamsize Foam::UIPstream::read ( const UPstream::commsTypes commsType, const int fromProcNo, diff --git a/src/Pstream/mpi/UOPBstreamWrite.C b/src/Pstream/mpi/UOPBstreamWrite.C index c01bff64b3df6c55427ed0996a77e5ace0b7a412..f4c9412fca4e182564450d8b0cc75361ff92d255 100644 --- a/src/Pstream/mpi/UOPBstreamWrite.C +++ b/src/Pstream/mpi/UOPBstreamWrite.C @@ -40,7 +40,17 @@ bool Foam::UOPBstream::bufferIPCsend() PstreamGlobals::checkCommunicator(comm_, toProcNo_); // Same type must be expected in UIPBstream::bufferIPCrecv() - label bufSize(sendBuf_.size()); + std::streamsize bufSize(sendBuf_.size()); + + // TODO: some corrective action + #if 0 + if (bufSize > std::streamsize(INT_MAX)) + { + Perr<< "UOPBstream::write() :" + << " exceeds INT_MAX bytes" << Foam::endl; + error::printStack(Perr); + } + #endif // Broadcast #1 - data size if @@ -48,7 +58,7 @@ bool Foam::UOPBstream::bufferIPCsend() !UPstream::broadcast ( reinterpret_cast<char*>(&bufSize), - sizeof(label), + sizeof(std::streamsize), comm_, toProcNo_ //< is actually rootProcNo ) @@ -60,26 +70,26 @@ bool Foam::UOPBstream::bufferIPCsend() return false; } + // Broadcast #2 - data content // - skip if there is no data to send - if (bufSize) - { - if + if + ( + (bufSize > 0) + && !UPstream::broadcast ( - !UPstream::broadcast - ( - sendBuf_.data(), - sendBuf_.size(), // same as bufSize - comm_, - toProcNo_ //< is actually rootProcNo - ) + sendBuf_.data(), + sendBuf_.size(), // same as bufSize + comm_, + toProcNo_ //< is actually rootProcNo ) - { - FatalErrorInFunction - << "MPI_Bcast failure sending buffer data:" << bufSize << nl - << Foam::abort(FatalError); - return false; - } + ) + { + FatalErrorInFunction + << "MPI_Bcast failure sending buffer data:" + << sendBuf_.size() << nl + << Foam::abort(FatalError); + return false; } return true; diff --git a/src/Pstream/mpi/UOPstreamWrite.C b/src/Pstream/mpi/UOPstreamWrite.C index c1086fd94c8feae81ab7605b5ecc37af84421f01..a8f4f04385f8dc3439f3ea2d06d161dbf02a91fd 100644 --- a/src/Pstream/mpi/UOPstreamWrite.C +++ b/src/Pstream/mpi/UOPstreamWrite.C @@ -62,23 +62,33 @@ bool Foam::UOPstream::write { PstreamGlobals::reset_request(req); - if (UPstream::debug) + // TODO: some corrective action, at least when not nonBlocking + #if 0 + if (bufSize > std::streamsize(INT_MAX)) { - Pout<< "UOPstream::write : starting write to:" << toProcNo - << " tag:" << tag - << " comm:" << communicator << " size:" << label(bufSize) - << " commType:" << UPstream::commsTypeNames[commsType] - << Foam::endl; + Perr<< "UOPstream::write() : to rank " << toProcNo + << " exceeds INT_MAX bytes" << Foam::endl; + error::printStack(Perr); } + #endif + if (UPstream::warnComm >= 0 && communicator != UPstream::warnComm) { - Pout<< "UOPstream::write : starting write to:" << toProcNo - << " tag:" << tag - << " comm:" << communicator << " size:" << label(bufSize) + Perr<< "UOPstream::write : starting write to:" << toProcNo + << " size:" << label(bufSize) + << " tag:" << tag << " comm:" << communicator << " commType:" << UPstream::commsTypeNames[commsType] << " warnComm:" << UPstream::warnComm << Foam::endl; - error::printStack(Pout); + error::printStack(Perr); + } + else if (UPstream::debug) + { + Perr<< "UOPstream::write : starting write to:" << toProcNo + << " size:" << label(bufSize) + << " tag:" << tag << " comm:" << communicator + << " commType:" << UPstream::commsTypeNames[commsType] + << Foam::endl; } PstreamGlobals::checkCommunicator(communicator, toProcNo); @@ -87,7 +97,7 @@ bool Foam::UOPstream::write profilingPstream::beginTiming(); - if (commsType == UPstream::commsTypes::blocking) + if (commsType == UPstream::commsTypes::buffered) { returnCode = MPI_Bsend ( @@ -104,9 +114,9 @@ bool Foam::UOPstream::write if (UPstream::debug) { - Pout<< "UOPstream::write : finished write to:" << toProcNo - << " tag:" << tag << " size:" << label(bufSize) - << " commsType:" << UPstream::commsTypeNames[commsType] + Perr<< "UOPstream::write : finished buffered send to:" + << toProcNo + << " size:" << label(bufSize) << " tag:" << tag << Foam::endl; } } @@ -142,9 +152,9 @@ bool Foam::UOPstream::write if (UPstream::debug) { - Pout<< "UOPstream::write : finished write to:" << toProcNo - << " tag:" << tag << " size:" << label(bufSize) - << " commsType:" << UPstream::commsTypeNames[commsType] + Perr<< "UOPstream::write : finished send to:" + << toProcNo + << " size:" << label(bufSize) << " tag:" << tag << Foam::endl; } } @@ -181,9 +191,9 @@ bool Foam::UOPstream::write if (UPstream::debug) { - Pout<< "UOPstream::write : started write to:" << toProcNo - << " tag:" << tag << " size:" << label(bufSize) - << " commType:" << UPstream::commsTypeNames[commsType] + Perr<< "UOPstream::write : started non-blocking send to:" + << toProcNo + << " size:" << label(bufSize) << " tag:" << tag << " request:" << (req ? label(-1) : PstreamGlobals::outstandingRequests_.size()) << Foam::endl; diff --git a/src/Pstream/mpi/UPstream.C b/src/Pstream/mpi/UPstream.C index 2116461c1b4c5bd32e51bc83d1cce95e58f46e99..5314d8027aff1e82f0525f6ba06b3d3ea03cd8c2 100644 --- a/src/Pstream/mpi/UPstream.C +++ b/src/Pstream/mpi/UPstream.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,6 +40,8 @@ License #include <numeric> #include <string> +#undef Pstream_use_MPI_Get_count + // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // // The min value and default for MPI buffer length @@ -88,13 +90,13 @@ static void attachOurBuffers() if (Foam::UPstream::debug) { - Foam::Pout<< "UPstream::init : buffer-size " << len << '\n'; + Foam::Perr<< "UPstream::init : buffer-size " << len << '\n'; } } else { delete[] buf; - Foam::Pout<< "UPstream::init : could not attach buffer\n"; + Foam::Perr<< "UPstream::init : could not attach buffer\n"; } #endif } @@ -169,7 +171,7 @@ bool Foam::UPstream::initNull() { if (UPstream::debug) { - Pout<< "UPstream::initNull : was already initialized\n"; + Perr<< "UPstream::initNull : was already initialized\n"; } } else @@ -227,7 +229,7 @@ bool Foam::UPstream::init(int& argc, char**& argv, const bool needsThread) } else if (UPstream::debug) { - Pout<< "UPstream::init : was already initialized\n"; + Perr<< "UPstream::init : was already initialized\n"; } } else @@ -281,7 +283,7 @@ bool Foam::UPstream::init(int& argc, char**& argv, const bool needsThread) if (UPstream::debug) { - Pout<< "UPstream::init :" + Perr<< "UPstream::init :" << " thread-support : requested:" << needsThread << " obtained:" << ( @@ -388,7 +390,7 @@ bool Foam::UPstream::init(int& argc, char**& argv, const bool needsThread) &subRank ); - Pout<< "UPstream::init : in world:" << world + Perr<< "UPstream::init : in world:" << world << " using local communicator:" << subComm << " rank " << subRank << " of " << subNumProcs @@ -434,7 +436,7 @@ void Foam::UPstream::shutdown(int errNo) } else if (UPstream::debug && errNo == 0) { - Pout<< "UPstream::shutdown : was already finalized\n"; + Perr<< "UPstream::shutdown : was already finalized\n"; } ourMpi = false; return; @@ -463,7 +465,7 @@ void Foam::UPstream::shutdown(int errNo) if (UPstream::debug) { - Pout<< "UPstream::shutdown\n"; + Perr<< "UPstream::shutdown\n"; } // Check for any outstanding requests @@ -548,7 +550,7 @@ void Foam::UPstream::allocateCommunicatorComponents if (index != UPstream::commGlobal()) { FatalErrorInFunction - << "world communicator should always be index " + << "base world communicator should always be index " << UPstream::commGlobal() << Foam::exit(FatalError); } @@ -687,36 +689,30 @@ void Foam::UPstream::allocateCommunicatorComponents void Foam::UPstream::freeCommunicatorComponents(const label index) { - // Skip placeholders and pre-defined (not allocated) communicators if (UPstream::debug) { - Pout<< "freeCommunicatorComponents: " << index + Perr<< "freeCommunicatorComponents: " << index << " from " << PstreamGlobals::MPICommunicators_.size() << endl; } - // Not touching the first two communicators (SELF, WORLD) - // or anything out-of bounds. + // Only free communicators that we have specifically allocated ourselves // - // No UPstream communicator indices when MPI is initialized outside - // of OpenFOAM - thus needs a bounds check too! + // Bounds checking needed since there are no UPstream communicator indices + // when MPI is initialized outside of OpenFOAM if ( - index > 1 - && index < PstreamGlobals::MPICommunicators_.size() + (index >= 0 && index < PstreamGlobals::MPICommunicators_.size()) + && PstreamGlobals::pendingMPIFree_[index] ) { - if - ( - PstreamGlobals::pendingMPIFree_[index] - && (MPI_COMM_NULL != PstreamGlobals::MPICommunicators_[index]) - ) + PstreamGlobals::pendingMPIFree_[index] = false; + + // Free communicator. Sets communicator to MPI_COMM_NULL + if (MPI_COMM_NULL != PstreamGlobals::MPICommunicators_[index]) { - // Free communicator. Sets communicator to MPI_COMM_NULL MPI_Comm_free(&PstreamGlobals::MPICommunicators_[index]); } - - PstreamGlobals::pendingMPIFree_[index] = false; } } @@ -770,7 +766,7 @@ void Foam::UPstream::barrier(const label communicator, UPstream::Request* req) } -std::pair<int,int> +std::pair<int,int64_t> Foam::UPstream::probeMessage ( const UPstream::commsTypes commsType, @@ -779,7 +775,7 @@ Foam::UPstream::probeMessage const label communicator ) { - std::pair<int,int> result(-1, 0); + std::pair<int,int64_t> result(-1, 0); // No-op for non-parallel or not on communicator if (!UPstream::parRun() || !UPstream::is_rank(communicator)) @@ -793,7 +789,7 @@ Foam::UPstream::probeMessage int flag = 0; MPI_Status status; - if (UPstream::commsTypes::blocking == commsType) + if (UPstream::commsTypes::buffered == commsType) { // Blocking profilingPstream::beginTiming(); @@ -844,8 +840,36 @@ Foam::UPstream::probeMessage if (flag) { + // Unlikely to be used with large amounts of data, + // but use MPI_Get_elements_x() instead of MPI_Count() anyhow + + #ifdef Pstream_use_MPI_Get_count + int count(0); + MPI_Get_count(&status, MPI_BYTE, &count); + #else + MPI_Count count(0); + MPI_Get_elements_x(&status, MPI_BYTE, &count); + #endif + + // Errors + if (count == MPI_UNDEFINED || int64_t(count) < 0) + { + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "returned undefined or negative value" + << Foam::abort(FatalError); + } + else if (int64_t(count) > int64_t(INT_MAX)) + { + FatalErrorInFunction + << "MPI_Get_count() or MPI_Get_elements_x() : " + "count is larger than INI_MAX bytes" + << Foam::abort(FatalError); + } + + result.first = status.MPI_SOURCE; - MPI_Get_count(&status, MPI_BYTE, &result.second); + result.second = int64_t(count); } return result; diff --git a/src/Pstream/mpi/UPstreamBroadcast.C b/src/Pstream/mpi/UPstreamBroadcast.C index cc75f95ed59f3d8a00a67ba94b9d5329562496f4..dcf9ca8ed9dc4567e7c311a6d04e06754b3f04a7 100644 --- a/src/Pstream/mpi/UPstreamBroadcast.C +++ b/src/Pstream/mpi/UPstreamBroadcast.C @@ -47,21 +47,21 @@ bool Foam::UPstream::broadcast //Needed? PstreamGlobals::checkCommunicator(comm, rootProcNo); - if (UPstream::debug) + if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) { - Pout<< "UPstream::broadcast : root:" << rootProcNo + Perr<< "UPstream::broadcast : root:" << rootProcNo << " comm:" << comm << " size:" << label(bufSize) + << " warnComm:" << UPstream::warnComm << Foam::endl; + error::printStack(Perr); } - if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) + else if (UPstream::debug) { - Pout<< "UPstream::broadcast : root:" << rootProcNo + Perr<< "UPstream::broadcast : root:" << rootProcNo << " comm:" << comm << " size:" << label(bufSize) - << " warnComm:" << UPstream::warnComm << Foam::endl; - error::printStack(Pout); } profilingPstream::beginTiming(); diff --git a/src/Pstream/mpi/UPstreamCommunicator.C b/src/Pstream/mpi/UPstreamCommunicator.C new file mode 100644 index 0000000000000000000000000000000000000000..9040f2f0dc24345c5cfeede063b583e4c680e0eb --- /dev/null +++ b/src/Pstream/mpi/UPstreamCommunicator.C @@ -0,0 +1,73 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "UPstream.H" +#include "PstreamGlobals.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::UPstream::Communicator::Communicator() noexcept +: + UPstream::Communicator(MPI_COMM_NULL) +{} + + +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::UPstream::Communicator +Foam::UPstream::Communicator::lookup(const label comm) +{ + if (comm < 0 || comm >= PstreamGlobals::MPICommunicators_.size()) + { + WarningInFunction + << "Illegal communicator " << comm << nl + << "Should be within range [0," + << PstreamGlobals::MPICommunicators_.size() + << ')' << endl; + + return UPstream::Communicator(MPI_COMM_NULL); + } + + return UPstream::Communicator(PstreamGlobals::MPICommunicators_[comm]); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::UPstream::Communicator::good() const noexcept +{ + return MPI_COMM_NULL != PstreamUtils::Cast::to_mpi(*this); +} + + +void Foam::UPstream::Communicator::reset() noexcept +{ + *this = UPstream::Communicator(MPI_COMM_NULL); +} + + +// ************************************************************************* // diff --git a/src/Pstream/mpi/UPstreamRequest.C b/src/Pstream/mpi/UPstreamRequest.C index ec773ec1063d43150073966f8e96fddb40c1d6fb..3ac8b8ff8ab436803bd8e409284f8b6e79c192ff 100644 --- a/src/Pstream/mpi/UPstreamRequest.C +++ b/src/Pstream/mpi/UPstreamRequest.C @@ -42,7 +42,7 @@ Foam::UPstream::Request::Request() noexcept bool Foam::UPstream::Request::good() const noexcept { - return MPI_REQUEST_NULL != PstreamDetail::Request::get(*this); + return MPI_REQUEST_NULL != PstreamUtils::Cast::to_mpi(*this); } @@ -52,6 +52,26 @@ void Foam::UPstream::Request::reset() noexcept } +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +// Foam::UPstream::Request +// Foam::UPstream::Request::lookup(const label req) +// { +// if (req < 0 || req >= PstreamGlobals::outstandingRequests_.size()) +// { +// WarningInFunction +// << "Illegal request " << req << nl +// << "Should be within range [0," +// << PstreamGlobals::outstandingRequests_.size() +// << ')' << endl; +// +// return UPstream::Communicator(MPI_REQUEST_NULL); +// } +// +// return UPstream::Request(PstreamGlobals::outstandingRequests_[req]); +// } + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::UPstream::nRequests() noexcept @@ -80,7 +100,7 @@ void Foam::UPstream::addRequest(UPstream::Request& req) // Transcribe as a MPI_Request PstreamGlobals::outstandingRequests_.push_back ( - PstreamDetail::Request::get(req) + PstreamUtils::Cast::to_mpi(req) ); // Invalidate parameter @@ -121,7 +141,7 @@ void Foam::UPstream::cancelRequest(UPstream::Request& req) } { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Active handle is mandatory { MPI_Cancel(&request); @@ -142,7 +162,7 @@ void Foam::UPstream::cancelRequests(UList<UPstream::Request>& requests) for (auto& req : requests) { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Active handle is mandatory { MPI_Cancel(&request); @@ -203,7 +223,7 @@ void Foam::UPstream::freeRequest(UPstream::Request& req) } { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Active handle is mandatory { // if (cancel) @@ -227,7 +247,7 @@ void Foam::UPstream::freeRequests(UList<UPstream::Request>& requests) for (auto& req : requests) { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Active handle is mandatory { // if (cancel) @@ -271,7 +291,7 @@ void Foam::UPstream::waitRequests(const label pos, label len) if (UPstream::debug) { - Pout<< "UPstream::waitRequests : starting wait for " + Perr<< "UPstream::waitRequests : starting wait for " << count << " requests starting at " << pos << endl; } @@ -308,7 +328,7 @@ void Foam::UPstream::waitRequests(const label pos, label len) if (UPstream::debug) { - Pout<< "UPstream::waitRequests : finished wait." << endl; + Perr<< "UPstream::waitRequests : finished wait." << endl; } } @@ -329,7 +349,7 @@ void Foam::UPstream::waitRequests(UList<UPstream::Request>& requests) for (auto& req : requests) { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Apply some prefiltering { @@ -389,7 +409,7 @@ bool Foam::UPstream::waitAnyRequest(const label pos, label len) if (UPstream::debug) { - Pout<< "UPstream::waitAnyRequest : starting wait for any of " + Perr<< "UPstream::waitAnyRequest : starting wait for any of " << count << " requests starting at " << pos << endl; } @@ -450,7 +470,7 @@ bool Foam::UPstream::waitSomeRequests if (UPstream::debug) { - Pout<< "UPstream:waitSomeRequest : starting wait for some of " + Perr<< "UPstream:waitSomeRequest : starting wait for some of " << count << " requests starting at " << pos << endl; } @@ -526,7 +546,7 @@ bool Foam::UPstream::waitSomeRequests for (auto& req : requests) { - waitRequests[count] = PstreamDetail::Request::get(req); + waitRequests[count] = PstreamUtils::Cast::to_mpi(req); ++count; } @@ -543,7 +563,7 @@ bool Foam::UPstream::waitSomeRequests if (UPstream::debug) { - Pout<< "UPstream:waitSomeRequest : starting wait for some of " + Perr<< "UPstream:waitSomeRequest : starting wait for some of " << requests.size() << " requests" << endl; } @@ -617,7 +637,7 @@ Foam::label Foam::UPstream::waitAnyRequest(UList<UPstream::Request>& requests) // for the return index. for (auto& req : requests) { - waitRequests[count] = PstreamDetail::Request::get(req); + waitRequests[count] = PstreamUtils::Cast::to_mpi(req); ++count; } @@ -675,13 +695,13 @@ Foam::label Foam::UPstream::waitAnyRequest(UList<UPstream::Request>& requests) /// int count = 0; /// MPI_Request waitRequests[2]; /// -/// waitRequests[count] = PstreamDetail::Request::get(req0); +/// waitRequests[count] = PstreamUtils::Cast::to_mpi(req0); /// if (MPI_REQUEST_NULL != waitRequests[count]) /// { /// ++count; /// } /// -/// waitRequests[count] = PstreamDetail::Request::get(req1); +/// waitRequests[count] = PstreamUtils::Cast::to_mpi(req1); /// if (MPI_REQUEST_NULL != waitRequests[count]) /// { /// ++count; @@ -733,7 +753,7 @@ void Foam::UPstream::waitRequest(const label i) if (UPstream::debug) { - Pout<< "UPstream::waitRequest : starting wait for request:" + Perr<< "UPstream::waitRequest : starting wait for request:" << i << endl; } @@ -751,7 +771,7 @@ void Foam::UPstream::waitRequest(const label i) if (UPstream::debug) { - Pout<< "UPstream::waitRequest : finished wait for request:" + Perr<< "UPstream::waitRequest : finished wait for request:" << i << endl; } } @@ -765,7 +785,7 @@ void Foam::UPstream::waitRequest(UPstream::Request& req) return; } - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); // No-op for null request if (MPI_REQUEST_NULL == request) @@ -803,7 +823,7 @@ bool Foam::UPstream::finishedRequest(const label i) if (UPstream::debug) { - Pout<< "UPstream::finishedRequest : check request:" + Perr<< "UPstream::finishedRequest : check request:" << i << endl; } @@ -831,7 +851,7 @@ bool Foam::UPstream::finishedRequest(UPstream::Request& req) return true; } - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); // Fast-path (no-op) for null request if (MPI_REQUEST_NULL == request) @@ -878,7 +898,7 @@ bool Foam::UPstream::finishedRequests(const label pos, label len) if (UPstream::debug) { - Pout<< "UPstream::finishedRequests : check " << count + Perr<< "UPstream::finishedRequests : check " << count << " requests starting at " << pos << endl; } @@ -924,7 +944,7 @@ bool Foam::UPstream::finishedRequests(UList<UPstream::Request>& requests) for (auto& req : requests) { - MPI_Request request = PstreamDetail::Request::get(req); + MPI_Request request = PstreamUtils::Cast::to_mpi(req); if (MPI_REQUEST_NULL != request) // Apply some prefiltering { diff --git a/src/Pstream/mpi/UPstreamWrapping.H b/src/Pstream/mpi/UPstreamWrapping.H index 7ce3b5ba49fee06cbbaa192adb18f98c213b0caf..33092eda41ca4dadf7562cf34bf462aad75c3c2d 100644 --- a/src/Pstream/mpi/UPstreamWrapping.H +++ b/src/Pstream/mpi/UPstreamWrapping.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,16 +38,7 @@ SourceFiles #ifndef Foam_UPstreamWrapping_H #define Foam_UPstreamWrapping_H -#include "UPstream.H" - -// Include MPI without any C++ bindings -#ifndef MPICH_SKIP_MPICXX -#define MPICH_SKIP_MPICXX -#endif -#ifndef OMPI_SKIP_MPICXX -#define OMPI_SKIP_MPICXX -#endif -#include <mpi.h> +#include "openfoam_mpi.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -56,27 +47,6 @@ namespace Foam namespace PstreamDetail { -// Helper for casting to MPI_Request -struct Request -{ - // To pointer - template<typename Type = MPI_Request> - static typename std::enable_if<std::is_pointer<Type>::value, Type>::type - get(const UPstream::Request& req) noexcept - { - return reinterpret_cast<Type>(req.value()); - } - - // To integer - template<typename Type = MPI_Request> - static typename std::enable_if<std::is_integral<Type>::value, Type>::type - get(const UPstream::Request& req) noexcept - { - return static_cast<Type>(req.value()); - } -}; - - // MPI_Bcast, using root=0 template<class Type> void broadcast0 diff --git a/src/Pstream/mpi/UPstreamWrapping.txx b/src/Pstream/mpi/UPstreamWrapping.txx index db3f095136ae7dcfed011e95ca733b3ae7ef6e72..97b0a95b4c5622c0f21bdf3903d6de7a6695f042 100644 --- a/src/Pstream/mpi/UPstreamWrapping.txx +++ b/src/Pstream/mpi/UPstreamWrapping.txx @@ -80,18 +80,18 @@ void Foam::PstreamDetail::reduce0 if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) { - Pout<< "** MPI_Reduce (blocking):"; + Perr<< "** MPI_Reduce (blocking):"; if (count == 1) { - Pout<< (*values); + Perr<< (*values); } else { - Pout<< UList<Type>(values, count); + Perr<< UList<Type>(values, count); } - Pout<< " with comm:" << comm + Perr<< " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } profilingPstream::beginTiming(); @@ -138,23 +138,23 @@ void Foam::PstreamDetail::allReduce { if (immediate) { - Pout<< "** MPI_Iallreduce (non-blocking):"; + Perr<< "** MPI_Iallreduce (non-blocking):"; } else { - Pout<< "** MPI_Allreduce (blocking):"; + Perr<< "** MPI_Allreduce (blocking):"; } if (count == 1) { - Pout<< (*values); + Perr<< (*values); } else { - Pout<< UList<Type>(values, count); + Perr<< UList<Type>(values, count); } - Pout<< " with comm:" << comm + Perr<< " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } @@ -245,18 +245,18 @@ void Foam::PstreamDetail::allToAll { if (immediate) { - Pout<< "** MPI_Ialltoall (non-blocking):"; + Perr<< "** MPI_Ialltoall (non-blocking):"; } else { - Pout<< "** MPI_Alltoall (blocking):"; + Perr<< "** MPI_Alltoall (blocking):"; } - Pout<< " numProc:" << numProc + Perr<< " numProc:" << numProc << " sendData:" << sendData.size() << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } if @@ -376,18 +376,18 @@ void Foam::PstreamDetail::allToAllv { if (immediate) { - Pout<< "** MPI_Ialltoallv (non-blocking):"; + Perr<< "** MPI_Ialltoallv (non-blocking):"; } else { - Pout<< "** MPI_Alltoallv (blocking):"; + Perr<< "** MPI_Alltoallv (blocking):"; } - Pout<< " sendCounts:" << sendCounts + Perr<< " sendCounts:" << sendCounts << " sendOffsets:" << sendOffsets << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } if @@ -515,13 +515,13 @@ void Foam::PstreamDetail::allToAllConsensus if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) { - Pout<< "** non-blocking consensus Alltoall (list):"; - Pout<< " numProc:" << numProc + Perr<< "** non-blocking consensus Alltoall (list):"; + Perr<< " numProc:" << numProc << " sendData:" << sendData.size() << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } if (sendData.size() != numProc || recvData.size() != numProc) @@ -632,7 +632,8 @@ void Foam::PstreamDetail::allToAllConsensus // Message found, receive into dest buffer location const label proci = status.MPI_SOURCE; - int count = 0; + // Only send/recv a single (fundamental) data type + int count(0); MPI_Get_count(&status, datatype, &count); if (count != 1) @@ -716,13 +717,13 @@ void Foam::PstreamDetail::allToAllConsensus if (UPstream::warnComm >= 0 && comm != UPstream::warnComm) { - Pout<< "** non-blocking consensus Alltoall (map):"; - Pout<< " numProc:" << numProc + Perr<< "** non-blocking consensus Alltoall (map):"; + Perr<< " numProc:" << numProc << " sendData:" << sendBufs.size() << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } // Initial: clear out everything @@ -812,10 +813,10 @@ void Foam::PstreamDetail::allToAllConsensus if (flag) { // Message found, receive into dest buffer location - const label proci = status.MPI_SOURCE; - int count = 0; + // Only send/recv a single (fundamental) data type + int count(0); MPI_Get_count(&status, datatype, &count); if (count != 1) @@ -916,18 +917,18 @@ void Foam::PstreamDetail::gather { if (immediate) { - Pout<< "** MPI_Igather (non-blocking):"; + Perr<< "** MPI_Igather (non-blocking):"; } else { - Pout<< "** MPI_Gather (blocking):"; + Perr<< "** MPI_Gather (blocking):"; } - Pout<< " numProc:" << numProc + Perr<< " numProc:" << numProc << " count:" << count << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } @@ -1023,18 +1024,18 @@ void Foam::PstreamDetail::scatter { if (immediate) { - Pout<< "** MPI_Iscatter (non-blocking):"; + Perr<< "** MPI_Iscatter (non-blocking):"; } else { - Pout<< "** MPI_Scatter (blocking):"; + Perr<< "** MPI_Scatter (blocking):"; } - Pout<< " numProc:" << numProc + Perr<< " numProc:" << numProc << " count:" << count << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } @@ -1131,19 +1132,19 @@ void Foam::PstreamDetail::gatherv { if (immediate) { - Pout<< "** MPI_Igatherv (non-blocking):"; + Perr<< "** MPI_Igatherv (non-blocking):"; } else { - Pout<< "** MPI_Gatherv (blocking):"; + Perr<< "** MPI_Gatherv (blocking):"; } - Pout<< " np:" << np + Perr<< " np:" << np << " recvCounts:" << recvCounts << " recvOffsets:" << recvOffsets << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } if @@ -1273,19 +1274,19 @@ void Foam::PstreamDetail::scatterv { if (immediate) { - Pout<< "** MPI_Iscatterv (non-blocking):"; + Perr<< "** MPI_Iscatterv (non-blocking):"; } else { - Pout<< "** MPI_Scatterv (blocking):"; + Perr<< "** MPI_Scatterv (blocking):"; } - Pout<< " np:" << np + Perr<< " np:" << np << " sendCounts:" << sendCounts << " sendOffsets:" << sendOffsets << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } if @@ -1399,17 +1400,17 @@ void Foam::PstreamDetail::allGather { if (immediate) { - Pout<< "** MPI_Iallgather (non-blocking):"; + Perr<< "** MPI_Iallgather (non-blocking):"; } else { - Pout<< "** MPI_Allgather (blocking):"; + Perr<< "** MPI_Allgather (blocking):"; } - Pout<< " numProc:" << UPstream::nProcs(comm) + Perr<< " numProc:" << UPstream::nProcs(comm) << " with comm:" << comm << " warnComm:" << UPstream::warnComm << endl; - error::printStack(Pout); + error::printStack(Perr); } diff --git a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C index b249146c06e43ac7d3c103101f5bee87ac5b4853..e658882d6a7934ab0d45fcd3112d1e92e252ca78 100644 --- a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C +++ b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C @@ -143,10 +143,7 @@ Foam::ThermalDiffusivity<BasicTurbulenceModel>::alphat const label patchi ) const { - return tmp<scalarField> - ( - new scalarField(this->mesh_.boundary()[patchi].size(), Zero) - ); + return tmp<scalarField>::New(this->mesh_.boundary()[patchi].size(), Zero); } diff --git a/src/TurbulenceModels/incompressible/turbulentTransportModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/incompressible/turbulentTransportModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H index e0e9d41ab06730a717c12a9a7214c7483095b2ff..7f7a2d2d177310f163e6a6655d34b82aa9d4ff4a 100644 --- a/src/TurbulenceModels/incompressible/turbulentTransportModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/incompressible/turbulentTransportModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H @@ -172,15 +172,6 @@ public: const alphatJayatillekeWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatJayatillekeWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphatJayatillekeWallFunctionFvPatchScalarField ( @@ -188,16 +179,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatJayatillekeWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/schemes/DEShybrid/DEShybrid.H b/src/TurbulenceModels/schemes/DEShybrid/DEShybrid.H index 62618f3260e17543c6d923ef662428a8f27f8957..7d9720679cd62a5b5df3fb1a014b6fe7447d74a4 100644 --- a/src/TurbulenceModels/schemes/DEShybrid/DEShybrid.H +++ b/src/TurbulenceModels/schemes/DEShybrid/DEShybrid.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. Copyright (C) 2022 Upstream CFD GmbH ------------------------------------------------------------------------------- License @@ -301,7 +301,7 @@ class DEShybrid ( factorName, mesh.time().timeName(), - mesh, + mesh.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -321,7 +321,7 @@ class DEShybrid dimensionedScalar(dimless, Zero) ); - const_cast<fvMesh&>(mesh).objectRegistry::store(factorPtr); + regIOobject::store(factorPtr); } auto& factor = *factorPtr; diff --git a/src/TurbulenceModels/turbulenceModels/DES/DESModel/DESModel.C b/src/TurbulenceModels/turbulenceModels/DES/DESModel/DESModel.C index c99d84c6f7be60883989e39a6b2912ee555eb254..cf223102f42c314f1c4bf549841a269c068e36f2 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/DESModel/DESModel.C +++ b/src/TurbulenceModels/turbulenceModels/DES/DESModel/DESModel.C @@ -168,16 +168,10 @@ tmp<volScalarField> DESModel<BasicTurbulenceModel>::Ssigma template<class BasicTurbulenceModel> tmp<volScalarField> DESModel<BasicTurbulenceModel>::fd() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "fd", - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "fd", + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/src/TurbulenceModels/turbulenceModels/LES/LESdeltas/IDDESDelta/IDDESDelta.C b/src/TurbulenceModels/turbulenceModels/LES/LESdeltas/IDDESDelta/IDDESDelta.C index 5ae16f229b9c904c065495b6d58c34c8481cd659..8386344061ae768f8e7209a32a0c8f376ff13422 100644 --- a/src/TurbulenceModels/turbulenceModels/LES/LESdeltas/IDDESDelta/IDDESDelta.C +++ b/src/TurbulenceModels/turbulenceModels/LES/LESdeltas/IDDESDelta/IDDESDelta.C @@ -53,21 +53,12 @@ void Foam::LESModels::IDDESDelta::calcDelta() // Wall-normal vectors const volVectorField& n = wallDist::New(mesh).n(); - tmp<volScalarField> tfaceToFacenMax + auto tfaceToFacenMax = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "faceToFaceMax", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh, - dimensionedScalar(dimLength, Zero) - ) + "faceToFaceMax", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar(dimLength, Zero) ); scalarField& faceToFacenMax = tfaceToFacenMax.ref().primitiveFieldRef(); diff --git a/src/TurbulenceModels/turbulenceModels/LES/LESfilters/anisotropicFilter/anisotropicFilter.C b/src/TurbulenceModels/turbulenceModels/LES/LESfilters/anisotropicFilter/anisotropicFilter.C index f0b284fb7696757ca9eb27a468f2131671ea9501..1ef8a7673fed1d643b8e0e5d6a43aaf823a03547 100644 --- a/src/TurbulenceModels/turbulenceModels/LES/LESfilters/anisotropicFilter/anisotropicFilter.C +++ b/src/TurbulenceModels/turbulenceModels/LES/LESfilters/anisotropicFilter/anisotropicFilter.C @@ -182,19 +182,12 @@ Foam::tmp<Foam::volSymmTensorField> Foam::anisotropicFilter::operator() { correctBoundaryConditions(unFilteredField); - tmp<volSymmTensorField> tmpFilteredField + auto tmpFilteredField = volSymmTensorField::New ( - new volSymmTensorField - ( - IOobject - ( - "anisotropicFilteredSymmTensorField", - mesh().time().timeName(), - mesh() - ), - mesh(), - unFilteredField().dimensions() - ) + "anisotropicFilteredSymmTensorField", + IOobject::NO_REGISTER, + mesh(), + unFilteredField().dimensions() ); for (direction d=0; d<symmTensor::nComponents; d++) @@ -218,19 +211,12 @@ Foam::tmp<Foam::volTensorField> Foam::anisotropicFilter::operator() { correctBoundaryConditions(unFilteredField); - tmp<volTensorField> tmpFilteredField + auto tmpFilteredField = volTensorField::New ( - new volTensorField - ( - IOobject - ( - "anisotropicFilteredTensorField", - mesh().time().timeName(), - mesh() - ), - mesh(), - unFilteredField().dimensions() - ) + "anisotropicFilteredTensorField", + IOobject::NO_REGISTER, + mesh(), + unFilteredField().dimensions() ); for (direction d=0; d<tensor::nComponents; d++) diff --git a/src/TurbulenceModels/turbulenceModels/LES/dynamicKEqn/dynamicKEqn.C b/src/TurbulenceModels/turbulenceModels/LES/dynamicKEqn/dynamicKEqn.C index 8a25b36b68741f50141dcf087f93a3baa5e9daad..25777c8b6123456e093a524ff936bfda9c66a982 100644 --- a/src/TurbulenceModels/turbulenceModels/LES/dynamicKEqn/dynamicKEqn.C +++ b/src/TurbulenceModels/turbulenceModels/LES/dynamicKEqn/dynamicKEqn.C @@ -138,14 +138,10 @@ void dynamicKEqn<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> dynamicKEqn<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/LES/kEqn/kEqn.C b/src/TurbulenceModels/turbulenceModels/LES/kEqn/kEqn.C index 50fb5f029ff4796d4f72510aa27a08b0a4cf207b..6ecd8118f65fa1edec5dbc02421ab973e77e8c37 100644 --- a/src/TurbulenceModels/turbulenceModels/LES/kEqn/kEqn.C +++ b/src/TurbulenceModels/turbulenceModels/LES/kEqn/kEqn.C @@ -52,14 +52,10 @@ void kEqn<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> kEqn<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/LaunderSharmaKE/LaunderSharmaKE.C b/src/TurbulenceModels/turbulenceModels/RAS/LaunderSharmaKE/LaunderSharmaKE.C index f0a84979f4a7c0dcb23a6debde23fb205144f44d..a414e8bc4e834e1ba0053df56e122880a0294001 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/LaunderSharmaKE/LaunderSharmaKE.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/LaunderSharmaKE/LaunderSharmaKE.C @@ -69,14 +69,10 @@ void LaunderSharmaKE<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> LaunderSharmaKE<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } @@ -84,14 +80,10 @@ tmp<fvScalarMatrix> LaunderSharmaKE<BasicTurbulenceModel>::kSource() const template<class BasicTurbulenceModel> tmp<fvScalarMatrix> LaunderSharmaKE<BasicTurbulenceModel>::epsilonSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - epsilon_, - dimVolume*this->rho_.dimensions()*epsilon_.dimensions() - /dimTime - ) + epsilon_, + dimVolume*this->rho_.dimensions()*epsilon_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/RASModel/RASModel.C b/src/TurbulenceModels/turbulenceModels/RAS/RASModel/RASModel.C index 661f65ebba7f4e26e4a7ecc380c4d3b3be8459a9..aefac5045ef204ceae34cbe824fce42588ae39fa 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/RASModel/RASModel.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/RASModel/RASModel.C @@ -193,14 +193,10 @@ Foam::RASModel<BasicTurbulenceModel>::epsilon() const { const scalar Cmu = 0.09; - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("epsilon", this->alphaRhoPhi_.group()), - this->mesh_.time().timeName(), - this->mesh_ - ), + IOobject::groupName("epsilon", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, Cmu*this->k()*this->omega() ); } @@ -213,14 +209,10 @@ Foam::RASModel<BasicTurbulenceModel>::omega() const const scalar betaStar = 0.09; const dimensionedScalar k0(sqr(dimLength/dimTime), SMALL); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("omega", this->alphaRhoPhi_.group()), - this->mesh_.time().timeName(), - this->mesh_ - ), + IOobject::groupName("omega", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->epsilon()/(betaStar*(this->k() + k0)) ); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/RNGkEpsilon/RNGkEpsilon.C b/src/TurbulenceModels/turbulenceModels/RAS/RNGkEpsilon/RNGkEpsilon.C index 3f7df45d61766b0a2230b3477d1a7938acf290ae..6760dc826948366c0a3918035a94979114abf3fb 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/RNGkEpsilon/RNGkEpsilon.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/RNGkEpsilon/RNGkEpsilon.C @@ -53,14 +53,10 @@ void RNGkEpsilon<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> RNGkEpsilon<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } @@ -68,14 +64,10 @@ tmp<fvScalarMatrix> RNGkEpsilon<BasicTurbulenceModel>::kSource() const template<class BasicTurbulenceModel> tmp<fvScalarMatrix> RNGkEpsilon<BasicTurbulenceModel>::epsilonSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - epsilon_, - dimVolume*this->rho_.dimensions()*epsilon_.dimensions() - /dimTime - ) + epsilon_, + dimVolume*this->rho_.dimensions()*epsilon_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.H index 9246a2853632b85660aa888ec03d1fc64333dc3b..e32721ee5c7d1683d01ec5fe2ef49b9ecb244098 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.H @@ -167,18 +167,6 @@ public: const turbulentMixingLengthDissipationRateInletFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new turbulentMixingLengthDissipationRateInletFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference turbulentMixingLengthDissipationRateInletFvPatchScalarField ( @@ -186,20 +174,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentMixingLengthDissipationRateInletFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.H index 4ea6936c7ee5b9fa3b760a9957646e367a42d281..c89a8cb0dbb1369599d9388566ef9c77a2e9406c 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/RAS/derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.H @@ -144,18 +144,6 @@ public: const turbulentMixingLengthFrequencyInletFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new turbulentMixingLengthFrequencyInletFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference turbulentMixingLengthFrequencyInletFvPatchScalarField ( @@ -163,20 +151,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentMixingLengthFrequencyInletFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/kEpsilon/kEpsilon.C b/src/TurbulenceModels/turbulenceModels/RAS/kEpsilon/kEpsilon.C index ead17ff204995edd0f6ae1e771b7830d0c1e0987..d66b80be90dc20a5b984cc5ff87179bbd66b60e9 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/kEpsilon/kEpsilon.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/kEpsilon/kEpsilon.C @@ -53,14 +53,10 @@ void kEpsilon<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> kEpsilon<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } @@ -68,14 +64,10 @@ tmp<fvScalarMatrix> kEpsilon<BasicTurbulenceModel>::kSource() const template<class BasicTurbulenceModel> tmp<fvScalarMatrix> kEpsilon<BasicTurbulenceModel>::epsilonSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - epsilon_, - dimVolume*this->rho_.dimensions()*epsilon_.dimensions() - /dimTime - ) + epsilon_, + dimVolume*this->rho_.dimensions()*epsilon_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/RAS/kOmegaSSTLM/kOmegaSSTLM.C b/src/TurbulenceModels/turbulenceModels/RAS/kOmegaSSTLM/kOmegaSSTLM.C index b6911809369e3d2c79e080f1c64dde46333f4371..eb3acb2abd025bad6b3bc4dd68aa79d3fa1b6abb 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/kOmegaSSTLM/kOmegaSSTLM.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/kOmegaSSTLM/kOmegaSSTLM.C @@ -95,11 +95,11 @@ tmp<volScalarField::Internal> kOmegaSSTLM<BasicTurbulenceModel>::Fthetat const volScalarField::Internal ReOmega(sqr(y)*omega/nu); const volScalarField::Internal Fwake(exp(-sqr(ReOmega/1e5))); - return tmp<volScalarField::Internal> + return volScalarField::Internal::New ( - new volScalarField::Internal + IOobject::groupName("Fthetat", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, ( - IOobject::groupName("Fthetat", this->alphaRhoPhi_.group()), min ( max @@ -118,21 +118,14 @@ template<class BasicTurbulenceModel> tmp<volScalarField::Internal> kOmegaSSTLM<BasicTurbulenceModel>::ReThetac() const { - tmp<volScalarField::Internal> tReThetac + auto tReThetac = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - IOobject::groupName("ReThetac", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_ - ), - this->mesh_, - dimless - ) + IOobject::groupName("ReThetac", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + this->mesh_, + dimless ); - volScalarField::Internal& ReThetac = tReThetac.ref(); + auto& ReThetac = tReThetac.ref(); forAll(ReThetac, celli) { @@ -161,21 +154,14 @@ tmp<volScalarField::Internal> kOmegaSSTLM<BasicTurbulenceModel>::Flength const volScalarField::Internal& nu ) const { - tmp<volScalarField::Internal> tFlength + auto tFlength = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - IOobject::groupName("Flength", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_ - ), - this->mesh_, - dimless - ) + IOobject::groupName("Flength", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + this->mesh_, + dimless ); - volScalarField::Internal& Flength = tFlength.ref(); + auto& Flength = tFlength.ref(); const volScalarField::Internal& omega = this->omega_(); const volScalarField::Internal& y = this->y_(); @@ -226,21 +212,14 @@ tmp<volScalarField::Internal> kOmegaSSTLM<BasicTurbulenceModel>::ReThetat0 const volScalarField::Internal& nu ) const { - tmp<volScalarField::Internal> tReThetat0 + auto tReThetat0 = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - IOobject::groupName("ReThetat0", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_ - ), - this->mesh_, - dimless - ) + IOobject::groupName("ReThetat0", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + this->mesh_, + dimless ); - volScalarField::Internal& ReThetat0 = tReThetat0.ref(); + auto& ReThetat0 = tReThetat0.ref(); const volScalarField& k = this->k_; @@ -349,13 +328,11 @@ tmp<volScalarField::Internal> kOmegaSSTLM<BasicTurbulenceModel>::Fonset const volScalarField::Internal Fonset3(max(1 - pow3(RT/2.5), scalar(0))); - return tmp<volScalarField::Internal> + return volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject::groupName("Fonset", this->alphaRhoPhi_.group()), - max(Fonset2 - Fonset3, scalar(0)) - ) + IOobject::groupName("Fonset", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + max(Fonset2 - Fonset3, scalar(0)) ); } @@ -459,7 +436,8 @@ kOmegaSSTLM<BasicTurbulenceModel>::kOmegaSSTLM this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh_ ), @@ -472,7 +450,8 @@ kOmegaSSTLM<BasicTurbulenceModel>::kOmegaSSTLM this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh_ ), diff --git a/src/TurbulenceModels/turbulenceModels/RAS/realizableKE/realizableKE.C b/src/TurbulenceModels/turbulenceModels/RAS/realizableKE/realizableKE.C index 6e08625a61a3e53f6f0236557a56dfb2e93d7857..b5712400c588d7dc77f27efc21f4efef6f68f8de 100644 --- a/src/TurbulenceModels/turbulenceModels/RAS/realizableKE/realizableKE.C +++ b/src/TurbulenceModels/turbulenceModels/RAS/realizableKE/realizableKE.C @@ -101,14 +101,10 @@ void realizableKE<BasicTurbulenceModel>::correctNut() template<class BasicTurbulenceModel> tmp<fvScalarMatrix> realizableKE<BasicTurbulenceModel>::kSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - k_, - dimVolume*this->rho_.dimensions()*k_.dimensions() - /dimTime - ) + k_, + dimVolume*this->rho_.dimensions()*k_.dimensions()/dimTime ); } @@ -116,14 +112,10 @@ tmp<fvScalarMatrix> realizableKE<BasicTurbulenceModel>::kSource() const template<class BasicTurbulenceModel> tmp<fvScalarMatrix> realizableKE<BasicTurbulenceModel>::epsilonSource() const { - return tmp<fvScalarMatrix> + return tmp<fvScalarMatrix>::New ( - new fvScalarMatrix - ( - epsilon_, - dimVolume*this->rho_.dimensions()*epsilon_.dimensions() - /dimTime - ) + epsilon_, + dimVolume*this->rho_.dimensions()*epsilon_.dimensions()/dimTime ); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/fixedShearStress/fixedShearStressFvPatchVectorField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/fixedShearStress/fixedShearStressFvPatchVectorField.H index 0077f5ed27ae0afbfd3ce755ea91ec5ae0b66871..158130e4c5aa37dca56deb45c8799f3b102e251b 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/fixedShearStress/fixedShearStressFvPatchVectorField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/fixedShearStress/fixedShearStressFvPatchVectorField.H @@ -130,15 +130,6 @@ public: const fixedShearStressFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new fixedShearStressFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference fixedShearStressFvPatchVectorField ( @@ -146,16 +137,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new fixedShearStressFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.C b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.C index da66b10349caac8bf7d100eee85831cd151dc873..9e56bcb92d0d20ce8abc6e15a8cb0427b679be3f 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.C +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.C @@ -54,10 +54,10 @@ Foam::porousBafflePressureFvPatchField::porousBafflePressureFvPatchField const fvPatch& p, const DimensionedField<scalar, volMesh>& iF, const dictionary& dict, - const bool valueRequired + const bool needValue ) : - fixedJumpFvPatchField<scalar>(p, iF, dict, false), + fixedJumpFvPatchField<scalar>(p, iF, dict, false), // needValue = false phiName_(dict.getOrDefault<word>("phi", "phi")), rhoName_(dict.getOrDefault<word>("rho", "rho")), D_(Function1<scalar>::New("D", dict, &db())), @@ -65,11 +65,11 @@ Foam::porousBafflePressureFvPatchField::porousBafflePressureFvPatchField length_(dict.get<scalar>("length")), uniformJump_(dict.getOrDefault("uniformJump", false)) { - if (valueRequired) + if (needValue) { if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.H index 0fb4f64e3f6e91ec24dc575e68eb93f8cd75d221..ad9c2c60cd38f5ed3bf10fb91562dced459061c9 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/porousBafflePressure/porousBafflePressureFvPatchField.H @@ -163,7 +163,7 @@ public: const fvPatch&, const DimensionedField<scalar, volMesh>&, const dictionary&, - const bool valueRequired = true + const bool needValue = true ); //- Construct by mapping given porousBafflePressureFvPatchField @@ -182,15 +182,6 @@ public: const porousBafflePressureFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new porousBafflePressureFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference porousBafflePressureFvPatchField ( @@ -198,16 +189,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new porousBafflePressureFvPatchField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.H index db8c5fa6c6ffcddce13e4f959101f9489290a02e..622df17ae6858775dd4b0165efe75ac6cbeff00e 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.H @@ -212,15 +212,6 @@ public: const epsilonWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new epsilonWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference epsilonWallFunctionFvPatchScalarField ( @@ -228,16 +219,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new epsilonWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kLowReWallFunction/kLowReWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kLowReWallFunction/kLowReWallFunctionFvPatchScalarField.H index 9ddf258d94f44b9a3402afb15e9877b919a0f6ce..6c3aef724d0b05a44515cf06a92d536bd0c043fa 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kLowReWallFunction/kLowReWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kLowReWallFunction/kLowReWallFunctionFvPatchScalarField.H @@ -173,15 +173,6 @@ public: const kLowReWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new kLowReWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference kLowReWallFunctionFvPatchScalarField ( @@ -189,16 +180,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new kLowReWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kqRWallFunction/kqRWallFunctionFvPatchField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kqRWallFunction/kqRWallFunctionFvPatchField.H index 0c8d12d140232278a8244d51f2cefb4fcc798c88..5779218627f3f852b2d570d0791f207072849b10 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kqRWallFunction/kqRWallFunctionFvPatchField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/kqRWallFunctions/kqRWallFunction/kqRWallFunctionFvPatchField.H @@ -123,15 +123,6 @@ public: const kqRWallFunctionFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new kqRWallFunctionFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference kqRWallFunctionFvPatchField ( @@ -139,16 +130,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new kqRWallFunctionFvPatchField(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -157,7 +151,7 @@ public: //- Evaluate the patchField virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ); //- Write diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutLowReWallFunction/nutLowReWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutLowReWallFunction/nutLowReWallFunctionFvPatchScalarField.H index b90fd8a988da4a734c622418fdfcd917832bb36f..2c2cf4eff9406e64255d6dcc5b3d6998a1cc0764 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutLowReWallFunction/nutLowReWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutLowReWallFunction/nutLowReWallFunctionFvPatchScalarField.H @@ -129,15 +129,6 @@ public: const nutLowReWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutLowReWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutLowReWallFunctionFvPatchScalarField ( @@ -145,16 +136,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutLowReWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUBlendedWallFunction/nutUBlendedWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUBlendedWallFunction/nutUBlendedWallFunctionFvPatchScalarField.H index 3f84c8be6f472bab56534b08759d4dc28763a9f2..351bf184747bd5b1a43436ce4594bee6f7408e6f 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUBlendedWallFunction/nutUBlendedWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUBlendedWallFunction/nutUBlendedWallFunctionFvPatchScalarField.H @@ -175,15 +175,6 @@ public: const nutUBlendedWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutUBlendedWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutUBlendedWallFunctionFvPatchScalarField ( @@ -191,16 +182,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutUBlendedWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.H index 9a9e747781c68970cc5600e318e2f1ad057ba0ab..efcd889d931c4da63905f0579892237b1ec862cc 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.H @@ -171,15 +171,6 @@ public: const nutURoughWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutURoughWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutURoughWallFunctionFvPatchScalarField ( @@ -187,16 +178,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutURoughWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUSpaldingWallFunction/nutUSpaldingWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUSpaldingWallFunction/nutUSpaldingWallFunctionFvPatchScalarField.H index 09935152a5a77355537206891bee2ad26478c77d..edac484a4f77e34fa11ab5e12eea85f144acd901 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUSpaldingWallFunction/nutUSpaldingWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUSpaldingWallFunction/nutUSpaldingWallFunctionFvPatchScalarField.H @@ -189,15 +189,6 @@ public: const nutUSpaldingWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutUSpaldingWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutUSpaldingWallFunctionFvPatchScalarField ( @@ -205,16 +196,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutUSpaldingWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.H index 18cb1277384c77d191ceff750d1d54a40055993d..e2010c780c47edd189fab038f3afed8f97d47dd5 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.H @@ -156,15 +156,6 @@ public: const nutUTabulatedWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutUTabulatedWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutUTabulatedWallFunctionFvPatchScalarField ( @@ -172,16 +163,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutUTabulatedWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.H index 9b96cb2b68ab8ec2cc63731340d8fbe53a0ef41e..81f8ecaf9521b768f4aab6ec1f9b65c1b99925a5 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.H @@ -143,15 +143,6 @@ public: const nutUWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutUWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutUWallFunctionFvPatchScalarField ( @@ -159,16 +150,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutUWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkRoughWallFunction/nutkRoughWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkRoughWallFunction/nutkRoughWallFunctionFvPatchScalarField.H index 1f1da1e629cf343b6c6987bbfd888c8d3c40f1e5..322819f8bbc62163db43589aebd7e27ace6460cc 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkRoughWallFunction/nutkRoughWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkRoughWallFunction/nutkRoughWallFunctionFvPatchScalarField.H @@ -153,15 +153,6 @@ public: const nutkRoughWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutkRoughWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutkRoughWallFunctionFvPatchScalarField ( @@ -169,16 +160,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutkRoughWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkWallFunction/nutkWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkWallFunction/nutkWallFunctionFvPatchScalarField.H index e04791c48ba64f2740c675f8cca01fabd6a2108c..5691a52d087d76d5852325931504d3be9a611ef3 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkWallFunction/nutkWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutkWallFunction/nutkWallFunctionFvPatchScalarField.H @@ -134,15 +134,6 @@ public: const nutkWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutkWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutkWallFunctionFvPatchScalarField ( @@ -150,16 +141,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutkWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.H b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.H index 4fb98c8c34f9c195a4dc829fea58cc4f3ba27be8..0e0e25f9083f27d689f48754b7d22d3b1ce978fb 100644 --- a/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.H +++ b/src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.H @@ -203,15 +203,6 @@ public: const omegaWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new omegaWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference omegaWallFunctionFvPatchScalarField ( @@ -219,18 +210,22 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new omegaWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } + //- Destructor virtual ~omegaWallFunctionFvPatchScalarField() = default; diff --git a/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C b/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C index 47a4e601b60d38ffb4c4baa6bd1a0377b15ba698..f37ad54b4e36527de3595302c6daddd736224f5f 100644 --- a/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C +++ b/src/TurbulenceModels/turbulenceModels/eddyViscosity/eddyViscosity.C @@ -65,7 +65,8 @@ Foam::eddyViscosity<BasicTurbulenceModel>::eddyViscosity this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh_ ) @@ -97,29 +98,19 @@ Foam::eddyViscosity<BasicTurbulenceModel>::R() const if ( !fvPatchField<symmTensor>::patchConstructorTablePtr_ - ->found(patchFieldTypes[i]) + ->contains(patchFieldTypes[i]) ) { patchFieldTypes[i] = fvPatchFieldBase::calculatedType(); } } - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField - ( - IOobject - ( - IOobject::groupName("R", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - ((2.0/3.0)*I)*tk() - (nut_)*devTwoSymm(fvc::grad(this->U_)), - patchFieldTypes - ) + IOobject::groupName("R", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + ((2.0/3.0)*I)*tk() - (nut_)*devTwoSymm(fvc::grad(this->U_)), + patchFieldTypes ); } diff --git a/src/TurbulenceModels/turbulenceModels/laminar/Stokes/Stokes.C b/src/TurbulenceModels/turbulenceModels/laminar/Stokes/Stokes.C index 0e42398ef3da19957a2d71e7b7ef8594e6a78b23..e45fab2853bcb957ed268b2206c8f1cbdc84a38c 100644 --- a/src/TurbulenceModels/turbulenceModels/laminar/Stokes/Stokes.C +++ b/src/TurbulenceModels/turbulenceModels/laminar/Stokes/Stokes.C @@ -89,17 +89,10 @@ template<class BasicTurbulenceModel> tmp<volScalarField> Stokes<BasicTurbulenceModel>::nut() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("nut", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("nut", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(dimViscosity, Zero) ); @@ -113,10 +106,7 @@ Stokes<BasicTurbulenceModel>::nut const label patchi ) const { - return tmp<scalarField> - ( - new scalarField(this->mesh_.boundary()[patchi].size(), Zero) - ); + return tmp<scalarField>::New(this->mesh_.boundary()[patchi].size(), Zero); } @@ -124,12 +114,11 @@ template<class BasicTurbulenceModel> tmp<volScalarField> Stokes<BasicTurbulenceModel>::nuEff() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject::groupName("nuEff", this->alphaRhoPhi_.group()), this->nu() - ) + IOobject::groupName("nuEff", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + this->nu() ); } diff --git a/src/TurbulenceModels/turbulenceModels/laminar/generalizedNewtonian/generalizedNewtonianViscosityModels/strainRateFunction/strainRateFunction.C b/src/TurbulenceModels/turbulenceModels/laminar/generalizedNewtonian/generalizedNewtonianViscosityModels/strainRateFunction/strainRateFunction.C index 04d3792a9d883de7627b9fd479f55db4dd9bb3c3..a32f5e630b704120c42e8c34df12d8de8a99203e 100644 --- a/src/TurbulenceModels/turbulenceModels/laminar/generalizedNewtonian/generalizedNewtonianViscosityModels/strainRateFunction/strainRateFunction.C +++ b/src/TurbulenceModels/turbulenceModels/laminar/generalizedNewtonian/generalizedNewtonianViscosityModels/strainRateFunction/strainRateFunction.C @@ -110,6 +110,12 @@ nu dimensionedScalar(dimViscosity, Zero) ); + // Set the database - could not be done in constructor + const_cast<Function1<scalar>&>(strainRateFunction_()).resetDb + ( + nu0.mesh().thisDb() + ); + tnu.ref().primitiveFieldRef() = strainRateFunction_->value(strainRate); volScalarField::Boundary& nuBf = tnu.ref().boundaryFieldRef(); diff --git a/src/TurbulenceModels/turbulenceModels/laminar/laminarModel/laminarModel.C b/src/TurbulenceModels/turbulenceModels/laminar/laminarModel/laminarModel.C index 22e7af0fbcf2042781c05b145e28f4c5af264ad8..41444d6420a73221bbae1c6d762b72acabcb5345 100644 --- a/src/TurbulenceModels/turbulenceModels/laminar/laminarModel/laminarModel.C +++ b/src/TurbulenceModels/turbulenceModels/laminar/laminarModel/laminarModel.C @@ -189,17 +189,10 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volScalarField> Foam::laminarModel<BasicTurbulenceModel>::nut() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("nut", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("nut", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(dimViscosity, Zero) ); @@ -213,10 +206,7 @@ Foam::laminarModel<BasicTurbulenceModel>::nut const label patchi ) const { - return tmp<scalarField> - ( - new scalarField(this->mesh_.boundary()[patchi].size(), Zero) - ); + return tmp<scalarField>::New(this->mesh_.boundary()[patchi].size(), Zero); } @@ -224,12 +214,11 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volScalarField> Foam::laminarModel<BasicTurbulenceModel>::nuEff() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject::groupName("nuEff", this->alphaRhoPhi_.group()), this->nu() - ) + IOobject::groupName("nuEff", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, + this->nu() ); } @@ -249,17 +238,10 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volScalarField> Foam::laminarModel<BasicTurbulenceModel>::k() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("k", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("k", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(sqr(this->U_.dimensions()), Zero) ); @@ -270,17 +252,10 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volScalarField> Foam::laminarModel<BasicTurbulenceModel>::epsilon() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("epsilon", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("epsilon", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(sqr(this->U_.dimensions())/dimTime, Zero) ); @@ -291,17 +266,10 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volScalarField> Foam::laminarModel<BasicTurbulenceModel>::omega() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("omega", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("omega", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(dimless/dimTime, Zero) ); @@ -312,17 +280,10 @@ template<class BasicTurbulenceModel> Foam::tmp<Foam::volSymmTensorField> Foam::laminarModel<BasicTurbulenceModel>::R() const { - return tmp<volSymmTensorField>::New + return volSymmTensorField::New ( - IOobject - ( - IOobject::groupName("R", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("R", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedSymmTensor(sqr(this->U_.dimensions()), Zero) ); diff --git a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H index 2641003b1f7d4cf8b46dd408a82bbc62ff547ee2..f718dbeca3b8edba27ad41e0cb4e44a70d6f0708 100644 --- a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H @@ -149,15 +149,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletEpsilonFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmBoundaryLayerInletEpsilonFvPatchScalarField ( @@ -165,16 +156,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletEpsilonFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletK/atmBoundaryLayerInletKFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletK/atmBoundaryLayerInletKFvPatchScalarField.H index e2d8d70213d677cef2b3942ec57ff370c4f86447..db567693f70819b23b75297c31fa3f57da161951 100644 --- a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletK/atmBoundaryLayerInletKFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletK/atmBoundaryLayerInletKFvPatchScalarField.H @@ -148,15 +148,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletKFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmBoundaryLayerInletKFvPatchScalarField ( @@ -164,16 +155,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletKFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletOmega/atmBoundaryLayerInletOmegaFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletOmega/atmBoundaryLayerInletOmegaFvPatchScalarField.H index ffe51f9d3746af6414bc07236213b3de6ea4dbff..b1c0d08eca60dcb9353d9fb8792231ddf5a7b3a9 100644 --- a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletOmega/atmBoundaryLayerInletOmegaFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletOmega/atmBoundaryLayerInletOmegaFvPatchScalarField.H @@ -145,15 +145,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletOmegaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmBoundaryLayerInletOmegaFvPatchScalarField ( @@ -161,16 +152,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmBoundaryLayerInletOmegaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H index ddbbd8179e49c76148887a333217e8acd0adfaeb..fc541a22b7f25e0dd40474782af021df4f9d42be 100644 --- a/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H +++ b/src/atmosphericModels/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H @@ -152,15 +152,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new atmBoundaryLayerInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference atmBoundaryLayerInletVelocityFvPatchVectorField ( @@ -168,16 +159,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new atmBoundaryLayerInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/atmTurbulentHeatFluxTemperature/atmTurbulentHeatFluxTemperatureFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/atmTurbulentHeatFluxTemperature/atmTurbulentHeatFluxTemperatureFvPatchScalarField.H index af5169c21109dc8beace617d0d3d1ad43f82bd8a..003299c83f32132d40a0cacea8fe5c3fdcf944cb 100644 --- a/src/atmosphericModels/derivedFvPatchFields/atmTurbulentHeatFluxTemperature/atmTurbulentHeatFluxTemperatureFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/atmTurbulentHeatFluxTemperature/atmTurbulentHeatFluxTemperatureFvPatchScalarField.H @@ -177,15 +177,6 @@ public: const atmTurbulentHeatFluxTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmTurbulentHeatFluxTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmTurbulentHeatFluxTemperatureFvPatchScalarField ( @@ -193,20 +184,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmTurbulentHeatFluxTemperatureFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmAlphatkWallFunction/atmAlphatkWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmAlphatkWallFunction/atmAlphatkWallFunctionFvPatchScalarField.H index 3280cedc7d7761d7e4542ecfae8085b5b40fada6..94e6583857dcca8eb7a8cf53422aa61ab6649469 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmAlphatkWallFunction/atmAlphatkWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmAlphatkWallFunction/atmAlphatkWallFunctionFvPatchScalarField.H @@ -179,15 +179,6 @@ public: const atmAlphatkWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmAlphatkWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmAlphatkWallFunctionFvPatchScalarField ( @@ -195,16 +186,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmAlphatkWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmEpsilonWallFunction/atmEpsilonWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmEpsilonWallFunction/atmEpsilonWallFunctionFvPatchScalarField.H index e80434bf4739fb9d6bf055f0f8f27c4b85a85181..3101206000bb2427426310c82f7e26e5d9cceca9 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmEpsilonWallFunction/atmEpsilonWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmEpsilonWallFunction/atmEpsilonWallFunctionFvPatchScalarField.H @@ -170,15 +170,6 @@ public: const atmEpsilonWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmEpsilonWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmEpsilonWallFunctionFvPatchScalarField ( @@ -186,18 +177,22 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmEpsilonWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } + //- Destructor virtual ~atmEpsilonWallFunctionFvPatchScalarField() = default; diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutUWallFunction/atmNutUWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutUWallFunction/atmNutUWallFunctionFvPatchScalarField.H index c006c0249aa6770472132332638d958f0180b813..8dc5162c0e26755a45db91b892420ccad1b88aa8 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutUWallFunction/atmNutUWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutUWallFunction/atmNutUWallFunctionFvPatchScalarField.H @@ -170,15 +170,6 @@ public: const atmNutUWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmNutUWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmNutUWallFunctionFvPatchScalarField ( @@ -186,16 +177,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmNutUWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutWallFunction/atmNutWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutWallFunction/atmNutWallFunctionFvPatchScalarField.H index 2cace45acf502a35da104215483c6ace6e10006c..ecb892deab86a8a995d543c25fa7aed904c7af5a 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutWallFunction/atmNutWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutWallFunction/atmNutWallFunctionFvPatchScalarField.H @@ -207,15 +207,6 @@ public: const atmNutWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmNutWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmNutWallFunctionFvPatchScalarField ( @@ -223,16 +214,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmNutWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutkWallFunction/atmNutkWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutkWallFunction/atmNutkWallFunctionFvPatchScalarField.H index 0dce8f571cf3776f932e24eaa73716bf23601f0c..f17cbf217ef8c1cf0e4fd570cc6d295b14a0d008 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutkWallFunction/atmNutkWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmNutkWallFunction/atmNutkWallFunctionFvPatchScalarField.H @@ -191,15 +191,6 @@ public: const atmNutkWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmNutkWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmNutkWallFunctionFvPatchScalarField ( @@ -207,16 +198,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmNutkWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmOmegaWallFunction/atmOmegaWallFunctionFvPatchScalarField.H b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmOmegaWallFunction/atmOmegaWallFunctionFvPatchScalarField.H index 49b7a099921c3d42a6560614c3cda78cb8503e59..a3439bed586b5fa4fd5ce70e5c7644e7fd5e15ac 100644 --- a/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmOmegaWallFunction/atmOmegaWallFunctionFvPatchScalarField.H +++ b/src/atmosphericModels/derivedFvPatchFields/wallFunctions/atmOmegaWallFunction/atmOmegaWallFunctionFvPatchScalarField.H @@ -169,15 +169,6 @@ public: const atmOmegaWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new atmOmegaWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference atmOmegaWallFunctionFvPatchScalarField ( @@ -185,16 +176,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new atmOmegaWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/atmosphericModels/fvOptions/atmAmbientTurbSource/atmAmbientTurbSourceTemplates.C b/src/atmosphericModels/fvOptions/atmAmbientTurbSource/atmAmbientTurbSourceTemplates.C index e1dcf807480da5f7668b864478b8b2cd76cfb187..d4ef78c3cd38f8a8da1e9c5d179e98192fd6ee52 100644 --- a/src/atmosphericModels/fvOptions/atmAmbientTurbSource/atmAmbientTurbSourceTemplates.C +++ b/src/atmosphericModels/fvOptions/atmAmbientTurbSource/atmAmbientTurbSourceTemplates.C @@ -45,7 +45,8 @@ void Foam::fv::atmAmbientTurbSource::atmAmbientTurbSourceEpsilon ( turbulenceModel::propertiesName ); - const volScalarField& epsilon = turbPtr->epsilon(); + const tmp<volScalarField> tepsilon(turbPtr->epsilon()); + const volScalarField& epsilon = tepsilon(); // (Heuristically derived from RS:Eq. 4, rhs-term:5) eqn += @@ -67,7 +68,9 @@ void Foam::fv::atmAmbientTurbSource::atmAmbientTurbSourceOmega ( turbulenceModel::propertiesName ); - const volScalarField& omega = turbPtr->omega(); + const tmp<volScalarField> tomega(turbPtr->omega()); + const volScalarField& omega = tomega(); + const volScalarField::Internal& beta = mesh_.lookupObjectRef<volScalarField::Internal> ( @@ -93,7 +96,8 @@ void Foam::fv::atmAmbientTurbSource::atmAmbientTurbSourceK ( turbulenceModel::propertiesName ); - const volScalarField& k = turbPtr->k(); + const tmp<volScalarField> tk(turbPtr->k()); + const volScalarField& k = tk(); if (isEpsilon_) { diff --git a/src/atmosphericModels/fvOptions/atmBuoyancyTurbSource/atmBuoyancyTurbSourceTemplates.C b/src/atmosphericModels/fvOptions/atmBuoyancyTurbSource/atmBuoyancyTurbSourceTemplates.C index 468266ee3e50a77d3ac7bd3213e9f450b64d2725..c6a1e7f9b6d8e1faad542c6bbd57462b2a9f4d4d 100644 --- a/src/atmosphericModels/fvOptions/atmBuoyancyTurbSource/atmBuoyancyTurbSourceTemplates.C +++ b/src/atmosphericModels/fvOptions/atmBuoyancyTurbSource/atmBuoyancyTurbSourceTemplates.C @@ -47,8 +47,10 @@ void Foam::fv::atmBuoyancyTurbSource::atmBuoyancyTurbSourceEpsilon ); // Fetch required fields from the epsilon-based model - const volScalarField& k = turbPtr->k(); - const volScalarField& epsilon = turbPtr->epsilon(); + const tmp<volScalarField> tk(turbPtr->k()); + const volScalarField& k = tk(); + const tmp<volScalarField> tepsilon(turbPtr->epsilon()); + const volScalarField& epsilon = tepsilon(); const volScalarField::Internal& GbyNu = mesh_.lookupObjectRef<volScalarField::Internal> ( @@ -77,8 +79,10 @@ void Foam::fv::atmBuoyancyTurbSource::atmBuoyancyTurbSourceOmega ); // Fetch required fields from the omega-based model - const volScalarField& k = turbPtr->k(); - const volScalarField& omega = turbPtr->omega(); + const tmp<volScalarField> tk(turbPtr->k()); + const volScalarField& k = tk(); + const tmp<volScalarField> tomega(turbPtr->omega()); + const volScalarField& omega = tomega(); const volScalarField::Internal& GbyNu = mesh_.lookupObjectRef<volScalarField::Internal> ( @@ -121,7 +125,8 @@ void Foam::fv::atmBuoyancyTurbSource::atmBuoyancyTurbSourceK turbulenceModel::propertiesName ); - const volScalarField& k = turbPtr->k(); + const tmp<volScalarField> tk(turbPtr->k()); + const volScalarField& k = tk(); eqn += fvm::Sp(alpha()*rho()*B_/k(), k); } diff --git a/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSource.C b/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSource.C index ed01512dbdcc318f3ad7211b9f94203a0b1f73f7..b5b72cc4f3f5b4cea151c30ffb252c1916330bf2 100644 --- a/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSource.C +++ b/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2020 ENERCON GmbH - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,14 +58,14 @@ Foam::volScalarField& Foam::fv::atmPlantCanopyTurbSource::getOrReadField ( fieldName, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::AUTO_WRITE, IOobject::REGISTER ), mesh_ ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSourceTemplates.C b/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSourceTemplates.C index 0627313a52de8b391d49a405b7d56e1e40c91037..f7125eab8b19d06e8dfad3d8b2c8493a174a2a60 100644 --- a/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSourceTemplates.C +++ b/src/atmosphericModels/fvOptions/atmPlantCanopyTurbSource/atmPlantCanopyTurbSourceTemplates.C @@ -45,7 +45,8 @@ void Foam::fv::atmPlantCanopyTurbSource::atmPlantCanopyTurbSourceEpsilon ( turbulenceModel::propertiesName ); - const volScalarField& epsilon = turbPtr->epsilon(); + const tmp<volScalarField> tepsilon(turbPtr->epsilon()); + const volScalarField& epsilon = tepsilon(); const volVectorField::Internal& U = turbPtr->U()(); eqn -= fvm::Sp(alpha()*rho()*(C1_ - C2_)*calcPlantCanopyTerm(U), epsilon); @@ -66,7 +67,8 @@ void Foam::fv::atmPlantCanopyTurbSource::atmPlantCanopyTurbSourceOmega ( turbulenceModel::propertiesName ); - const volScalarField& omega = turbPtr->omega(); + const tmp<volScalarField> tomega(turbPtr->omega()); + const volScalarField& omega = tomega(); const volVectorField::Internal& U = turbPtr->U()(); const volScalarField::Internal& gamma = mesh_.lookupObjectRef<volScalarField::Internal> diff --git a/src/atmosphericModels/fvOptions/atmPlantCanopyUSource/atmPlantCanopyUSource.C b/src/atmosphericModels/fvOptions/atmPlantCanopyUSource/atmPlantCanopyUSource.C index 89beb351931fc6c46562726732f752e06ed87f1c..683d112c95c31b16f42561ff35022349d6600ac6 100644 --- a/src/atmosphericModels/fvOptions/atmPlantCanopyUSource/atmPlantCanopyUSource.C +++ b/src/atmosphericModels/fvOptions/atmPlantCanopyUSource/atmPlantCanopyUSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2020 ENERCON GmbH - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,14 +59,14 @@ Foam::volScalarField& Foam::fv::atmPlantCanopyUSource::getOrReadField ( fieldName, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::AUTO_WRITE, IOobject::REGISTER ), mesh_ ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/atmosphericModels/turbulenceModels/RAS/kL/kL.C b/src/atmosphericModels/turbulenceModels/RAS/kL/kL.C index 982e3cc70582ab10ee458c520f32880ae3c16968..7fded669b35ea7cf59afc4e91e9587fea9885756 100644 --- a/src/atmosphericModels/turbulenceModels/RAS/kL/kL.C +++ b/src/atmosphericModels/turbulenceModels/RAS/kL/kL.C @@ -80,17 +80,10 @@ tmp<volScalarField> kL<BasicTurbulenceModel>::epsilonCanopy() const return Cd*LAD*mag(U)*k_; } - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("epsilonCanopy", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("epsilonCanopy", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(sqr(dimLength)/pow3(dimTime), Zero) ); @@ -118,26 +111,22 @@ tmp<volScalarField> kL<BasicTurbulenceModel>::epsilon() const template<class BasicTurbulenceModel> tmp<volScalarField> kL<BasicTurbulenceModel>::canopyHeight() const { - const auto* canopyHeightPtr = - this->mesh_.template findObject<volScalarField>("canopyHeight"); + tmp<volScalarField> tcanopy; - if (canopyHeightPtr) + tcanopy.cref + ( + this->mesh_.template cfindObject<volScalarField>("canopyHeight") + ); + + if (tcanopy) { - const auto& canopyHeight = *canopyHeightPtr; - return canopyHeight; + return tcanopy; } - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - IOobject::groupName("canopyHeight", this->alphaRhoPhi_.group()), - this->runTime_.timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::groupName("canopyHeight", this->alphaRhoPhi_.group()), + IOobject::NO_REGISTER, this->mesh_, dimensionedScalar(dimLength, Zero) ); diff --git a/src/combustionModels/EDC/EDC.C b/src/combustionModels/EDC/EDC.C index 3e55ba9ce1c7850bddf216edc799c01727a1ef85..90fc7e26051fc64a8209265518218a6f6471ecc5 100644 --- a/src/combustionModels/EDC/EDC.C +++ b/src/combustionModels/EDC/EDC.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2019-2020,2023 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,11 +59,12 @@ Foam::combustionModels::EDC<ReactionThermo>::EDC ( IOobject ( - this->thermo().phasePropertyName(typeName + ":kappa"), + this->thermo().phaseScopedName(typeName, "kappa"), this->mesh().time().timeName(), this->mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimless, Zero) @@ -86,23 +87,23 @@ void Foam::combustionModels::EDC<ReactionThermo>::correct() if (this->active()) { tmp<volScalarField> tepsilon(this->turbulence().epsilon()); - const volScalarField& epsilon = tepsilon(); + const auto& epsilon = tepsilon(); tmp<volScalarField> tmu(this->turbulence().mu()); - const volScalarField& mu = tmu(); + const auto& mu = tmu(); tmp<volScalarField> tk(this->turbulence().k()); - const volScalarField& k = tk(); + const auto& k = tk(); tmp<volScalarField> trho(this->rho()); - const volScalarField& rho = trho(); + const auto& rho = trho(); scalarField tauStar(epsilon.size(), Zero); if (version_ == EDCversions::v2016) { tmp<volScalarField> ttc(this->chemistryPtr_->tc()); - const volScalarField& tc = ttc(); + const auto& tc = ttc(); forAll(tauStar, i) { @@ -199,22 +200,12 @@ template<class ReactionThermo> Foam::tmp<Foam::volScalarField> Foam::combustionModels::EDC<ReactionThermo>::Qdot() const { - tmp<volScalarField> tQdot + auto tQdot = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->thermo().phasePropertyName(typeName + ":Qdot"), - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + this->thermo().phaseScopedName(typeName, "Qdot"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); if (this->active()) diff --git a/src/combustionModels/FSD/FSD.C b/src/combustionModels/FSD/FSD.C index ef9f1d382dd2436b1e8bb83962a50ae373e9fe0c..03e4b93f686d69ed01de8e968413803d84a883f2 100644 --- a/src/combustionModels/FSD/FSD.C +++ b/src/combustionModels/FSD/FSD.C @@ -72,7 +72,8 @@ FSD<ReactionThermo, ThermoType>::FSD this->mesh().time().timeName(), this->mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimless, Zero) @@ -149,43 +150,23 @@ void FSD<ReactionThermo, ThermoType>::calculateSourceNorm() s.value()*YFuelFuelStream_.value() + YO2OxiStream_.value() ); - tmp<volScalarField> tPc + auto tPc = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->thermo().phasePropertyName("Pc"), - U.time().timeName(), - U.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(dimless, Zero) - ) + this->thermo().phasePropertyName("Pc"), + IOobject::NO_REGISTER, + U.mesh(), + dimensionedScalar(dimless, Zero) ); + auto& pc = tPc.ref(); - volScalarField& pc = tPc.ref(); - - tmp<volScalarField> tomegaFuel + auto tomegaFuel = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->thermo().phasePropertyName("omegaFuelBar"), - U.time().timeName(), - U.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(omegaFuel.dimensions(), Zero) - ) + this->thermo().phasePropertyName("omegaFuelBar"), + IOobject::NO_REGISTER, + U.mesh(), + dimensionedScalar(omegaFuel.dimensions(), Zero) ); - - volScalarField& omegaFuelBar = tomegaFuel.ref(); + auto& omegaFuelBar = tomegaFuel.ref(); // Calculation of the mixture fraction variance (ftVar) const compressible::LESModel& lesModel = @@ -294,24 +275,14 @@ void FSD<ReactionThermo, ThermoType>::calculateSourceNorm() } } - tmp<volScalarField> tproducts + auto tproducts = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->thermo().phasePropertyName("products"), - U.time().timeName(), - U.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - U.mesh(), - dimensionedScalar(dimless, Zero) - ) + this->thermo().phasePropertyName("products"), + IOobject::NO_REGISTER, + U.mesh(), + dimensionedScalar(dimless, Zero) ); - - volScalarField& products = tproducts.ref(); + auto& products = tproducts.ref(); forAll(productsIndex, j) { diff --git a/src/combustionModels/FSD/reactionRateFlameAreaModels/consumptionSpeed/consumptionSpeed.C b/src/combustionModels/FSD/reactionRateFlameAreaModels/consumptionSpeed/consumptionSpeed.C index 2322572550d2869565f91629c3ae1bcd1f704cfb..808348cd206fac79e9a321c72fbaf8b7535dd682 100644 --- a/src/combustionModels/FSD/reactionRateFlameAreaModels/consumptionSpeed/consumptionSpeed.C +++ b/src/combustionModels/FSD/reactionRateFlameAreaModels/consumptionSpeed/consumptionSpeed.C @@ -82,24 +82,14 @@ Foam::tmp<Foam::volScalarField> Foam::consumptionSpeed::omega0Sigma const volScalarField& sigma ) { - tmp<volScalarField> tomega0 + auto tomega0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "omega0", - sigma.time().timeName(), - sigma.db(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - sigma.mesh(), - dimensionedScalar(dimensionSet(1, -2, -1, 0, 0, 0, 0), Zero) - ) + "omega0", + IOobject::NO_REGISTER, + sigma.mesh(), + dimensionedScalar(dimensionSet(1, -2, -1, 0, 0, 0, 0), Zero) ); - - volScalarField& omega0 = tomega0.ref(); + auto& omega0 = tomega0.ref(); volScalarField::Internal& iomega0 = omega0; diff --git a/src/combustionModels/PaSR/PaSR.C b/src/combustionModels/PaSR/PaSR.C index 63559a0aafe1197a1f5f2c67d7d8600d8c06f3d8..77c75294fb1ceb637044be5685a4c44fbfa50a29 100644 --- a/src/combustionModels/PaSR/PaSR.C +++ b/src/combustionModels/PaSR/PaSR.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019,2023 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,11 +45,12 @@ Foam::combustionModels::PaSR<ReactionThermo>::PaSR ( IOobject ( - thermo.phasePropertyName(typeName + ":kappa"), + thermo.phaseScopedName(typeName, "kappa"), this->mesh().time().timeName(), this->mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimless, Zero) @@ -74,16 +75,16 @@ void Foam::combustionModels::PaSR<ReactionThermo>::correct() laminar<ReactionThermo>::correct(); tmp<volScalarField> tepsilon(this->turbulence().epsilon()); - const scalarField& epsilon = tepsilon(); + const auto& epsilon = tepsilon(); tmp<volScalarField> tmuEff(this->turbulence().muEff()); - const scalarField& muEff = tmuEff(); + const auto& muEff = tmuEff(); tmp<volScalarField> ttc(this->tc()); - const scalarField& tc = ttc(); + const auto& tc = ttc(); tmp<volScalarField> trho(this->rho()); - const scalarField& rho = trho(); + const auto& rho = trho(); forAll(epsilon, i) { @@ -118,13 +119,11 @@ template<class ReactionThermo> Foam::tmp<Foam::volScalarField> Foam::combustionModels::PaSR<ReactionThermo>::Qdot() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - this->thermo().phasePropertyName(typeName + ":Qdot"), - kappa_*laminar<ReactionThermo>::Qdot() - ) + this->thermo().phaseScopedName(typeName, "Qdot"), + IOobject::NO_REGISTER, + kappa_*laminar<ReactionThermo>::Qdot() ); } diff --git a/src/combustionModels/diffusionMulticomponent/diffusionMulticomponent.C b/src/combustionModels/diffusionMulticomponent/diffusionMulticomponent.C index fb5c15562506adbfa09300b6e99b83de6eb41bac..7a10ab2a1770b5c7afe9cbde38de432998d4594b 100644 --- a/src/combustionModels/diffusionMulticomponent/diffusionMulticomponent.C +++ b/src/combustionModels/diffusionMulticomponent/diffusionMulticomponent.C @@ -60,15 +60,7 @@ diffusionMulticomponent<ReactionThermo, ThermoType>::init() k, new volScalarField ( - IOobject - ( - "Rijk" + Foam::name(k), - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + this->mesh_.newIOobject("Rijk" + Foam::name(k)), this->mesh_, dimensionedScalar(dimMass/dimTime/dimVolume, Zero), fvPatchFieldBase::zeroGradientType() @@ -198,15 +190,7 @@ diffusionMulticomponent<ReactionThermo, ThermoType>::correct() k, new volScalarField ( - IOobject - ( - "Rijl" + Foam::name(k), - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + this->mesh_.newIOobject("Rijl" + Foam::name(k)), this->mesh_, dimensionedScalar(dimMass/dimTime/dimVolume, Zero), fvPatchFieldBase::zeroGradientType() @@ -374,9 +358,8 @@ Foam::combustionModels::diffusionMulticomponent<ReactionThermo, ThermoType>::R volScalarField& Y ) const { - tmp<fvScalarMatrix> tSu(new fvScalarMatrix(Y, dimMass/dimTime)); - - fvScalarMatrix& Su = tSu.ref(); + auto tSu = tmp<fvScalarMatrix>::New(Y, dimMass/dimTime); + auto& Su = tSu.ref(); if (this->active()) { @@ -395,23 +378,13 @@ Foam::tmp<Foam::volScalarField> Foam::combustionModels:: diffusionMulticomponent<ReactionThermo, ThermoType>::Qdot() const { - tmp<volScalarField> tQdot + auto tQdot = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Qdot", - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimEnergy/dimTime/dimVolume, Zero), - fvPatchFieldBase::zeroGradientType() - ) + "Qdot", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimEnergy/dimTime/dimVolume, Zero), + fvPatchFieldBase::zeroGradientType() ); if (this->active()) diff --git a/src/combustionModels/eddyDissipationDiffusionModel/eddyDissipationDiffusionModel.C b/src/combustionModels/eddyDissipationDiffusionModel/eddyDissipationDiffusionModel.C index fa042bfce06fdd113b0e2be845c950075331f075..b8c61234bee2a37e401e747c14646265bafb4e29 100644 --- a/src/combustionModels/eddyDissipationDiffusionModel/eddyDissipationDiffusionModel.C +++ b/src/combustionModels/eddyDissipationDiffusionModel/eddyDissipationDiffusionModel.C @@ -77,25 +77,16 @@ template<class ReactionThermo, class ThermoType> Foam::tmp<Foam::volScalarField> eddyDissipationDiffusionModel<ReactionThermo, ThermoType>::rtDiff() const { - tmp<volScalarField> tdelta + auto tdelta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tdelta", - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - this->mesh(), - dimensionedScalar(dimLength, Zero), - fvPatchFieldBase::zeroGradientType() - ) + "tdelta", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimLength, Zero), + fvPatchFieldBase::zeroGradientType() ); + auto& delta = tdelta.ref(); - volScalarField& delta = tdelta.ref(); delta.ref() = cbrt(this->mesh().V()); delta.correctBoundaryConditions(); diff --git a/src/combustionModels/laminar/laminar.C b/src/combustionModels/laminar/laminar.C index 50f568164339decca3611b709128a9e37830a4ac..feb5889bb582014d2c7267b4d4393dffc64676e8 100644 --- a/src/combustionModels/laminar/laminar.C +++ b/src/combustionModels/laminar/laminar.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -123,9 +123,8 @@ template<class ReactionThermo> Foam::tmp<Foam::fvScalarMatrix> Foam::combustionModels::laminar<ReactionThermo>::R(volScalarField& Y) const { - tmp<fvScalarMatrix> tSu(new fvScalarMatrix(Y, dimMass/dimTime)); - - fvScalarMatrix& Su = tSu.ref(); + auto tSu = tmp<fvScalarMatrix>::New(Y, dimMass/dimTime); + auto& Su = tSu.ref(); if (this->active()) { @@ -143,22 +142,12 @@ template<class ReactionThermo> Foam::tmp<Foam::volScalarField> Foam::combustionModels::laminar<ReactionThermo>::Qdot() const { - tmp<volScalarField> tQdot + auto tQdot = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->thermo().phasePropertyName(typeName + ":Qdot"), - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + this->thermo().phaseScopedName(typeName, "Qdot"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); if (this->active()) diff --git a/src/combustionModels/noCombustion/noCombustion.C b/src/combustionModels/noCombustion/noCombustion.C index e123b2f2dd5178eb2c40608331448063092ad711..7bbeafa7dcb2a34ef65433f2b3377d94ef6db6db 100644 --- a/src/combustionModels/noCombustion/noCombustion.C +++ b/src/combustionModels/noCombustion/noCombustion.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -65,12 +65,7 @@ Foam::combustionModels::noCombustion<ReactionThermo>::R volScalarField& Y ) const { - tmp<fvScalarMatrix> tSu - ( - new fvScalarMatrix(Y, dimMass/dimTime) - ); - - return tSu; + return tmp<fvScalarMatrix>::New(Y, dimMass/dimTime); } @@ -78,17 +73,10 @@ template<class ReactionThermo> Foam::tmp<Foam::volScalarField> Foam::combustionModels::noCombustion<ReactionThermo>::Qdot() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - this->thermo().phasePropertyName(typeName + ":Qdot"), - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + this->thermo().phaseScopedName(typeName, "Qdot"), + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); diff --git a/src/conversion/ccm/reader/ccmSolutionTable.H b/src/conversion/ccm/reader/ccmSolutionTable.H index 744015468625df84188f3bf3c3a851b60c12679f..d99b342eb4cc7e208f5b8d3a9218fb3974243a57 100644 --- a/src/conversion/ccm/reader/ccmSolutionTable.H +++ b/src/conversion/ccm/reader/ccmSolutionTable.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,6 +42,7 @@ namespace Foam namespace ccm { +// Forward Declarations class fieldEntry; class fieldTable; class solutionEntry; @@ -55,14 +56,16 @@ Ostream& operator<<(Ostream& os, const solutionEntry& entry); \*---------------------------------------------------------------------------*/ //- A linked-list that is searchable by the 'name()' of the items -template<class T> +template<class Type> class namesList : - public SLList<T> + public SLList<Type> { public: - using const_iterator = typename SLList<T>::const_iterator; - using iterator = typename SLList<T>::iterator; + + using const_iterator = typename SLList<Type>::const_iterator; + using iterator = typename SLList<Type>::iterator; + // Constructors @@ -72,12 +75,12 @@ public: // Access - //- Return true if a list element has a name that matches key + //- True if a list element has a name that matches key bool found(const word& key) const { - forAllConstIters(*this, iter) + for (const Type& item : *this) { - if (iter().name() == key) + if (item.name() == key) { return true; } @@ -87,18 +90,22 @@ public: } - //- Find a list element has a name matching key + //- Find list element by name iterator find(const word& key) { - forAllIters(*this, iter) + const auto last = SLList<Type>::end(); + + iterator iter = SLList<Type>::begin(); + + for (; (iter != last); ++iter) { - if (iter().name() == key) + if ((*iter).name() == key) { - return iter; + break; } } - return SLList<T>::end(); + return iter; } @@ -109,20 +116,22 @@ public: const wordRes& deny = wordRes() ) const { - List<word> matched(SLList<T>::size()); + List<word> matched(SLList<Type>::size()); - label matchi = 0; - forAllConstIters(*this, iter) + label count = 0; + + for (const Type& item : *this) { - const word& name = iter().name(); + const word& name = item.name(); if (allow.match(name) && !deny.match(name)) { - matched[matchi++] = name; + matched[count] = name; + ++count; } } - matched.resize(matchi); + matched.resize(count); return matched; } }; @@ -181,34 +190,19 @@ public: // Access //- The field name (PROSTAR short name) - const word& name() const - { - return name_; - } + const word& name() const noexcept { return name_; } //- The full field name - const string& fullName() const - { - return fullName_; - } + const string& fullName() const noexcept { return fullName_; } //- The field units - const string& units() const - { - return units_; - } + const string& units() const noexcept { return units_; } //- The max cell id for the field - label maxCellId() const - { - return maxCellId_; - } + label maxCellId() const noexcept { return maxCellId_; } //- The max face id for the field - label maxFaceId() const - { - return maxFaceId_; - } + label maxFaceId() const noexcept { return maxFaceId_; } // Edit @@ -223,21 +217,21 @@ public: } //- Set the max cell Id for the field - void maxCellId(const int newMax) + void maxCellId(const int val) { - if (maxCellId_ < newMax) + if (maxCellId_ < val) { - maxCellId_ = newMax; + maxCellId_ = val; } } //- Set the max face Id for the field - void maxFaceId(const int newMax) + void maxFaceId(const int val) { - if (maxFaceId_ < newMax) + if (maxFaceId_ < val) { - maxFaceId_ = newMax; + maxFaceId_ = val; } } @@ -299,22 +293,13 @@ public: // Access //- The solution name - const word& name() const - { - return name_; - } + const word& name() const noexcept { return name_; } //- The solution iteration/timestep - label iteration() const - { - return iter_; - } + label iteration() const noexcept { return iter_; } //- The solution time (sec) - scalar timeValue() const - { - return time_; - } + scalar timeValue() const noexcept { return time_; } // IOstream Operators @@ -356,11 +341,8 @@ public: // Constructor - //- Null construct - fieldTable() - : - namesList<fieldEntry>() - {} + //- Default construct + fieldTable() = default; // Access @@ -368,36 +350,36 @@ public: //- The maximum cell Id referenced in the list label maxCellId() const { - label maxId = 0; - forAllConstIters(*this, iter) + label result = 0; + for (const auto& item : *this) { - const label currMax = iter().maxCellId(); + const label val = item.maxCellId(); - if (maxId < currMax) + if (result < val) { - maxId = currMax; + result = val; } } - return maxId; + return result; } //- The maximum face Id referenced in the list label maxFaceId() const { - label maxId = 0; - forAllConstIters(*this, iter) + label result = 0; + for (const auto& item : *this) { - const label currMax = iter().maxFaceId(); + const label val = item.maxFaceId(); - if (maxId < currMax) + if (result < val) { - maxId = currMax; + result = val; } } - return maxId; + return result; } diff --git a/src/conversion/ccm/remapping b/src/conversion/ccm/remapping index 498f53bd9262563f3747ee63ac0f730acfc6a210..32caa078c072176478e1c40bedae8297c8bc4314 100644 --- a/src/conversion/ccm/remapping +++ b/src/conversion/ccm/remapping @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/conversion/common/tables/boundaryRegion.C b/src/conversion/common/tables/boundaryRegion.C index 4cfe6b70d26164e382bada5fc561ef1682910739..221df81be8e809502cce133d94109eb554dc7db6 100644 --- a/src/conversion/common/tables/boundaryRegion.C +++ b/src/conversion/common/tables/boundaryRegion.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,31 +29,59 @@ License #include "boundaryRegion.H" #include "IOMap.H" #include "OFstream.H" +#include "predicates.H" -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // -Foam::boundaryRegion::boundaryRegion() -: - Map<dictionary>() -{} +namespace Foam +{ +template<class MatchPredicate> +static Map<word> names_impl +( + const Map<dictionary>& input, + const MatchPredicate& nameMatcher +) +{ + Map<word> output; + output.reserve(input.size()); + + forAllConstIters(input, iter) + { + word lookupName; + if (!iter().readIfPresent("Label", lookupName)) + { + lookupName = "boundaryRegion_" + Foam::name(iter.key()); + } + + if (nameMatcher(lookupName)) + { + output.emplace(iter.key(), std::move(lookupName)); + } + } + + return output; +} + +} // End namespace Foam + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::boundaryRegion::boundaryRegion ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) -: - Map<dictionary>() { - readDict(registry, name, instance); + readDict(obr, name, instance); } // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -Foam::label Foam::boundaryRegion::append(const dictionary& dict) +Foam::label Foam::boundaryRegion::maxIndex() const { label maxId = -1; forAllConstIters(*this, iter) @@ -64,6 +92,14 @@ Foam::label Foam::boundaryRegion::append(const dictionary& dict) } } + return maxId; +} + + +Foam::label Foam::boundaryRegion::push_back(const dictionary& dict) +{ + label maxId = this->maxIndex(); + insert(++maxId, dict); return maxId; } @@ -71,64 +107,52 @@ Foam::label Foam::boundaryRegion::append(const dictionary& dict) Foam::Map<Foam::word> Foam::boundaryRegion::names() const { - Map<word> lookup; + return names_impl(*this, predicates::always{}); +} - forAllConstIters(*this, iter) - { - lookup.insert - ( - iter.key(), - iter().getOrDefault<word> - ( - "Label", - "boundaryRegion_" + Foam::name(iter.key()) - ) - ); - } - return lookup; +Foam::Map<Foam::word> Foam::boundaryRegion::names(const wordRes& patterns) const +{ + return names_impl(*this, patterns); } -Foam::Map<Foam::word> Foam::boundaryRegion::names -( - const wordRes& patterns -) const +Foam::Map<Foam::word> Foam::boundaryRegion::boundaryTypes() const { - Map<word> lookup; + Map<word> output; + output.reserve(size()); forAllConstIters(*this, iter) { - const word lookupName = iter().getOrDefault<word> - ( - "Label", - "boundaryRegion_" + Foam::name(iter.key()) - ); - - if (patterns.match(lookupName)) + word lookupType; + if (!iter().readIfPresent("BoundaryType", lookupType)) { - lookup.insert(iter.key(), lookupName); + lookupType = "patch"; } + + output.emplace(iter.key(), std::move(lookupType)); } - return lookup; + return output; } -Foam::Map<Foam::word> Foam::boundaryRegion::boundaryTypes() const +Foam::word Foam::boundaryRegion::name(const label id) const { - Map<word> lookup; + word lookupName; - forAllConstIters(*this, iter) + const auto iter = cfind(id); + if (iter.good()) { - lookup.insert - ( - iter.key(), - iter().getOrDefault<word>("BoundaryType", "patch") - ); + iter.val().readIfPresent("Label", lookupName); + } + + if (lookupName.empty() && id >= 0) + { + lookupName = "boundaryRegion_" + Foam::name(id); } - return lookup; + return lookupName; } @@ -141,7 +165,10 @@ Foam::label Foam::boundaryRegion::findIndex(const word& name) const forAllConstIters(*this, iter) { - if (iter().getOrDefault<word>("Label", word::null) == name) + const auto& dict = iter.val(); + + word lookupName; + if (dict.readIfPresent("Label", lookupName) && (lookupName == name)) { return iter.key(); } @@ -153,35 +180,35 @@ Foam::label Foam::boundaryRegion::findIndex(const word& name) const Foam::word Foam::boundaryRegion::boundaryType(const word& name) const { - word bndType("patch"); + word lookupType("patch"); - label id = this->findIndex(name); + const label id = this->findIndex(name); if (id >= 0) { - operator[](id).readIfPresent<word>("BoundaryType", bndType); + operator[](id).readIfPresent("BoundaryType", lookupType); } - return bndType; + return lookupType; } void Foam::boundaryRegion::readDict ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) { - clear(); + Map<dictionary>::clear(); - // read constant/dictName + // Read constant/dictName IOMap<dictionary> ioObj ( IOobject ( name, instance, - registry, + obr, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -201,7 +228,7 @@ void Foam::boundaryRegion::readDict void Foam::boundaryRegion::writeDict ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) const @@ -213,7 +240,7 @@ void Foam::boundaryRegion::writeDict ( name, instance, - registry, + obr, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -221,13 +248,16 @@ void Foam::boundaryRegion::writeDict ); ioObj.note() = - "persistent data for thirdParty mesh <-> OpenFOAM translation"; + "persistent data for third-party mesh <-> OpenFOAM translation"; - Info<< "Writing " << ioObj.name() << " to " << ioObj.objectPath() << endl; + Info<< "Writing " << ioObj.name() << " to " + << ioObj.objectRelPath() << endl; OFstream os(ioObj.objectPath()); ioObj.writeHeader(os); os << *this; + + IOobject::writeEndDivider(os); } @@ -259,6 +289,8 @@ void Foam::boundaryRegion::rename(const dictionary& mapDict) // This avoid re-matching any renamed regions Map<word> mapping; + mapping.reserve(mapDict.size()); + for (const entry& dEntry : mapDict) { const word oldName(dEntry.stream()); @@ -272,12 +304,19 @@ void Foam::boundaryRegion::rename(const dictionary& mapDict) forAllConstIters(mapping, iter) { + const word& newName = iter.val(); + dictionary& dict = operator[](iter.key()); - Info<< "rename patch: " << iter() - << " <- " << dict.get<word>("Label") << nl; + word oldName; + if (!dict.readIfPresent("Label", oldName)) + { + oldName = "boundaryRegion_" + Foam::name(iter.key()); + } + + Info<< "rename patch: " << newName << " <- " << oldName << nl; - dict.set("Label", iter()); + dict.set("Label", newName); } } diff --git a/src/conversion/common/tables/boundaryRegion.H b/src/conversion/common/tables/boundaryRegion.H index bad8b56108253564c3eed33457e3eb333c350028..c669d1e9d49ddb5abd535ab7dd1fd1b91cca3271 100644 --- a/src/conversion/common/tables/boundaryRegion.H +++ b/src/conversion/common/tables/boundaryRegion.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,14 +52,12 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef boundaryRegion_H -#define boundaryRegion_H +#ifndef Foam_boundaryRegion_H +#define Foam_boundaryRegion_H -#include "polyMesh.H" #include "Map.H" #include "dictionary.H" #include "labelList.H" -#include "wordList.H" #include "wordRes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -66,6 +65,9 @@ SourceFiles namespace Foam { +// Forward Declarations +class objectRegistry; + /*---------------------------------------------------------------------------*\ Class boundaryRegion Declaration \*---------------------------------------------------------------------------*/ @@ -74,23 +76,21 @@ class boundaryRegion : public Map<dictionary> { - // Private Member Functions - - //- No copy construct - boundaryRegion(const boundaryRegion&) = delete; +public: + //- No copy construct + boundaryRegion(const boundaryRegion&) = delete; -public: // Constructors - //- Construct null - boundaryRegion(); + //- Default construct + boundaryRegion() noexcept = default; - //- Construct read from registry, name. instance - boundaryRegion + //- Read construct from registry, name, instance + explicit boundaryRegion ( - const objectRegistry&, + const objectRegistry& obr, const word& name = "boundaryRegion", const fileName& instance = "constant" ); @@ -102,29 +102,38 @@ public: // Member Functions - //- Append to the end, return index - label append(const dictionary&); + //- Add to the end, return index + label push_back(const dictionary& dict); + + //- The max table index, -1 if empty + label maxIndex() const; - //- Return index corresponding to patch 'name' - // returns -1 if not found + //- The index corresponding to entry with 'Label' of given name, + //- or -1 if not found label findIndex(const word& name) const; - //- Return a Map of (id => name) + //- The 'Label' name corresponding to id, + //- or boundaryRegion_ID if not otherwise defined + word name(const label id) const; + + //- Return the extracted Map of (id => name) Map<word> names() const; - //- Return a Map of (id => names) selected by patterns + //- Return the extracted Map of (id => names) selected by patterns Map<word> names(const wordRes& patterns) const; - //- Return a Map of (id => type) + //- Return the extracted Map of (id => type) Map<word> boundaryTypes() const; - //- Return BoundaryType corresponding to patch 'name' + //- Return BoundaryType corresponding to patch 'name', + //- "patch" if not found word boundaryType(const word& name) const; + //- Read constant/boundaryRegion void readDict ( - const objectRegistry&, + const objectRegistry& obr, const word& name = "boundaryRegion", const fileName& instance = "constant" ); @@ -132,7 +141,7 @@ public: //- Write constant/boundaryRegion for later reuse void writeDict ( - const objectRegistry&, + const objectRegistry& obr, const word& name = "boundaryRegion", const fileName& instance = "constant" ) const; @@ -140,7 +149,7 @@ public: // Member Operators - //- Assignment + //- Copy assignment void operator=(const boundaryRegion&); //- Assign from Map<dictionary> @@ -155,8 +164,15 @@ public: // newPatchName originalName; // \endverbatim void rename(const dictionary&); + + + // Housekeeping + + //- Add to the end, return index + label append(const dictionary& dict) { return push_back(dict); } }; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/conversion/common/tables/cellTable.C b/src/conversion/common/tables/cellTable.C index 3ec2971c9642e89b045f02a0bbaa45832e39893f..ad4cf7929d2e373ef8cd59a71cdf2b0b657bd461 100644 --- a/src/conversion/common/tables/cellTable.C +++ b/src/conversion/common/tables/cellTable.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,43 +28,52 @@ License #include "cellTable.H" #include "IOMap.H" +#include "polyMesh.H" #include "OFstream.H" +#include "predicates.H" +#include "ListOps.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // -const char* const Foam::cellTable::defaultMaterial_ = "fluid"; +static const char* const defaultMaterial_ = "fluid"; -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // -Foam::Map<Foam::label> Foam::cellTable::zoneMap() const +namespace Foam { - Map<label> lookup; - - label zonei = 0; - forAllConstIters(*this, iter) - { - lookup.insert(iter.key(), zonei++); - } - return lookup; -} - - -Foam::wordList Foam::cellTable::namesList() const +template<class MatchPredicate> +static Map<word> names_impl +( + const Map<dictionary>& input, + const MatchPredicate& nameMatcher +) { - Map<word> lookup = names(); - wordList list(lookup.size()); + Map<word> output; + output.reserve(input.size()); - label zonei = 0; - forAllConstIters(lookup, iter) + forAllConstIters(input, iter) { - list[zonei++] = *iter; + word lookupName; + if (!iter().readIfPresent("Label", lookupName)) + { + lookupName = "cellTable_" + Foam::name(iter.key()); + } + + if (nameMatcher(lookupName)) + { + output.emplace(iter.key(), std::move(lookupName)); + } } - return list; + return output; } +} // End namespace Foam + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // void Foam::cellTable::addDefaults() { @@ -72,7 +81,7 @@ void Foam::cellTable::addDefaults() { if (!iter().found("MaterialType")) { - iter().add("MaterialType", defaultMaterial_); + iter().add("MaterialType", word(defaultMaterial_)); } } } @@ -81,12 +90,12 @@ void Foam::cellTable::addDefaults() void Foam::cellTable::setEntry ( const label id, - const word& keyWord, + const word& key, const word& value ) { dictionary dict; - dict.add(keyWord, value); + dict.add(key, value); iterator iter = find(id); if (iter.good()) @@ -102,28 +111,20 @@ void Foam::cellTable::setEntry // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::cellTable::cellTable() -: - Map<dictionary>() -{} - - Foam::cellTable::cellTable ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) -: - Map<dictionary>() { - readDict(registry, name, instance); + readDict(obr, name, instance); } // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -Foam::label Foam::cellTable::append(const dictionary& dict) +Foam::label Foam::cellTable::maxIndex() const { label maxId = -1; forAllConstIters(*this, iter) @@ -134,68 +135,47 @@ Foam::label Foam::cellTable::append(const dictionary& dict) } } - insert(++maxId, dict); return maxId; } -Foam::Map<Foam::word> Foam::cellTable::names() const +Foam::label Foam::cellTable::push_back(const dictionary& dict) { - Map<word> lookup; - - forAllConstIters(*this, iter) - { - lookup.insert - ( - iter.key(), - iter().getOrDefault<word> - ( - "Label", - "cellTable_" + Foam::name(iter.key()) - ) - ); - } + label maxId = this->maxIndex(); - return lookup; + insert(++maxId, dict); + return maxId; } -Foam::Map<Foam::word> Foam::cellTable::names -( - const wordRes& patterns -) const +Foam::Map<Foam::word> Foam::cellTable::names() const { - Map<word> lookup; - - forAllConstIters(*this, iter) - { - const word lookupName = iter().getOrDefault<word> - ( - "Label", - "cellTable_" + Foam::name(iter.key()) - ); + return names_impl(*this, predicates::always{}); +} - if (patterns.match(lookupName)) - { - lookup.insert(iter.key(), lookupName); - } - } - return lookup; +Foam::Map<Foam::word> Foam::cellTable::names(const wordRes& patterns) const +{ + return names_impl(*this, patterns); } Foam::word Foam::cellTable::name(const label id) const { - word theName("cellTable_" + Foam::name(id)); + word lookupName; - const_iterator iter = cfind(id); + const auto iter = cfind(id); if (iter.good()) { - iter().readIfPresent("Label", theName); + iter.val().readIfPresent("Label", lookupName); } - return theName; + if (lookupName.empty() && id >= 0) + { + lookupName = "cellTable_" + Foam::name(id); + } + + return lookupName; } @@ -208,7 +188,10 @@ Foam::label Foam::cellTable::findIndex(const word& name) const forAllConstIters(*this, iter) { - if (iter().getOrDefault<word>("Label", word::null) == name) + const auto& dict = iter.val(); + + word lookupName; + if (dict.readIfPresent("Label", lookupName) && (lookupName == name)) { return iter.key(); } @@ -220,28 +203,31 @@ Foam::label Foam::cellTable::findIndex(const word& name) const Foam::Map<Foam::word> Foam::cellTable::materialTypes() const { - Map<word> lookup; + Map<word> output; + output.reserve(size()); forAllConstIters(*this, iter) { - lookup.insert - ( - iter.key(), - iter().getOrDefault<word>("MaterialType", defaultMaterial_) - ); + word lookupType; + if (!iter().readIfPresent("MaterialType", lookupType)) + { + lookupType = defaultMaterial_; + } + + output.emplace(iter.key(), std::move(lookupType)); } - return lookup; + return output; } Foam::Map<Foam::word> Foam::cellTable::selectType(const word& matl) const { - Map<word> lookup; + Map<word> output; + output.reserve(size()); forAllConstIters(*this, iter) { - const label index = iter.key(); const dictionary& dict = iter.val(); if @@ -250,19 +236,17 @@ Foam::Map<Foam::word> Foam::cellTable::selectType(const word& matl) const == dict.getOrDefault<word>("MaterialType", defaultMaterial_) ) { - lookup.insert - ( - index, - dict.getOrDefault<word> - ( - "Label", - "cellTable_" + Foam::name(iter.key()) - ) - ); + word lookupName; + if (dict.readIfPresent("Label", lookupName)) + { + lookupName = "cellTable_" + Foam::name(iter.key()); + } + + output.emplace(iter.key(), std::move(lookupName)); } } - return lookup; + return output; } @@ -284,7 +268,6 @@ Foam::Map<Foam::word> Foam::cellTable::shells() const } - void Foam::cellTable::setMaterial(const label id, const word& matlType) { setEntry(id, "MaterialType", matlType); @@ -310,7 +293,7 @@ void Foam::cellTable::setName(const label id) void Foam::cellTable::readDict ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) @@ -324,7 +307,7 @@ void Foam::cellTable::readDict ( name, instance, - registry, + obr, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -345,7 +328,7 @@ void Foam::cellTable::readDict void Foam::cellTable::writeDict ( - const objectRegistry& registry, + const objectRegistry& obr, const word& name, const fileName& instance ) const @@ -357,7 +340,7 @@ void Foam::cellTable::writeDict ( name, instance, - registry, + obr, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -365,13 +348,16 @@ void Foam::cellTable::writeDict ); ioObj.note() = - "persistent data for thirdParty mesh <-> OpenFOAM translation"; + "persistent data for third-party mesh <-> OpenFOAM translation"; - Info<< "Writing " << ioObj.name() << " to " << ioObj.objectPath() << endl; + Info<< "Writing " << ioObj.name() << " to " + << ioObj.objectRelPath() << endl; OFstream os(ioObj.objectPath()); ioObj.writeHeader(os); os << *this; + + IOobject::writeEndDivider(os); } @@ -442,59 +428,81 @@ void Foam::cellTable::addCellZones const labelList& tableIds ) const { - Map<label> typeToZone = zoneMap(); - List<DynamicList<label>> zoneCells(size()); + // From cellTable ID => zone index + Map<label> typeToZone; + + // Name per zone (not cellTableID) + wordList zoneNames; + + { + // The cellTable ID => zone name + Map<word> namesLookup = this->names(); + + zoneNames.resize(namesLookup.size()); + typeToZone.reserve(namesLookup.size()); + + // Linear indexing + label zonei = 0; + for (const label id : namesLookup.sortedToc()) + { + typeToZone(id) = zonei; + zoneNames[zonei] = namesLookup[id]; + ++zonei; + } + } + + + List<DynamicList<label>> zoneCells(zoneNames.size()); forAll(tableIds, celli) { - const auto iter = typeToZone.cfind(tableIds[celli]); - if (iter.good()) + label zonei = typeToZone.lookup(tableIds[celli], -1); + if (zonei >= 0) { - zoneCells[*iter].append(celli); + zoneCells[zonei].push_back(celli); } } - // track which zones were actually used - labelList zoneUsed(zoneCells.size()); - wordList zoneNames(namesList()); + // Track which zones were actually used + DynamicList<label> zoneUsed(zoneCells.size()); - label nZone = 0; - forAll(zoneCells, zoneI) + forAll(zoneCells, zonei) { - zoneCells[zoneI].shrink(); - if (zoneCells[zoneI].size()) + zoneCells[zonei].shrink(); + if (!zoneCells[zonei].empty()) { - zoneUsed[nZone++] = zoneI; + zoneUsed.push_back(zonei); } } - zoneUsed.setSize(nZone); + + const label nZonesUsed = zoneUsed.size(); cellZoneMesh& czMesh = mesh.cellZones(); czMesh.clear(); - if (nZone <= 1) + if (nZonesUsed <= 1) { Info<< "cellZones not used" << endl; return; } - czMesh.setSize(nZone); + czMesh.resize(nZonesUsed); - forAll(zoneUsed, zoneI) + forAll(zoneUsed, zonei) { - const label origZoneI = zoneUsed[zoneI]; + const label origZonei = zoneUsed[zonei]; - Info<< "cellZone " << zoneI - << " (size: " << zoneCells[origZoneI].size() - << ") name: " << zoneNames[origZoneI] << endl; + Info<< "cellZone " << zonei + << " (size: " << zoneCells[origZonei].size() + << ") name: " << zoneNames[origZonei] << endl; czMesh.set ( - zoneI, + zonei, new cellZone ( - zoneNames[origZoneI], - zoneCells[origZoneI], - zoneI, + zoneNames[origZonei], + zoneCells[origZonei], + zonei, czMesh ) ); @@ -510,13 +518,13 @@ void Foam::cellTable::combine(const dictionary& mapDict, labelList& tableIds) return; } - Map<word> origNames(names()); - labelList mapping(identity(max(origNames.toc()) + 1)); + Map<word> origNames(this->names()); + labelList mapping(identity(this->maxIndex() + 1)); bool remap = false; - forAllConstIters(mapDict, iter) + for (const entry& dEntry : mapDict) { - wordRes patterns(iter().stream()); + wordRes patterns(dEntry.stream()); // find all matches Map<word> matches; @@ -530,14 +538,14 @@ void Foam::cellTable::combine(const dictionary& mapDict, labelList& tableIds) if (matches.size()) { - label targetId = this->findIndex(iter().keyword()); + label targetId = this->findIndex(dEntry.keyword()); - Info<< "combine cellTable: " << iter().keyword(); + Info<< "combine cellTable: " << dEntry.keyword(); if (targetId < 0) { // not found - reuse 1st element but with different name targetId = min(matches.toc()); - operator[](targetId).set("Label", iter().keyword()); + operator[](targetId).set("Label", dEntry.keyword()); Info<< " = ("; } diff --git a/src/conversion/common/tables/cellTable.H b/src/conversion/common/tables/cellTable.H index 58e477b3e849a6845297251bd567dfaedea0eab8..4cf3da2e4659a6f3d97f247d8e5cbf49a81591d7 100644 --- a/src/conversion/common/tables/cellTable.H +++ b/src/conversion/common/tables/cellTable.H @@ -59,14 +59,11 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cellTable_H -#define cellTable_H +#ifndef Foam_cellTable_H +#define Foam_cellTable_H -#include "polyMesh.H" #include "Map.H" #include "dictionary.H" -#include "labelList.H" -#include "wordList.H" #include "wordRes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -74,6 +71,10 @@ SourceFiles namespace Foam { +// Forward Declarations +class polyMesh; +class objectRegistry; + /*---------------------------------------------------------------------------*\ Class cellTable Declaration \*---------------------------------------------------------------------------*/ @@ -82,39 +83,29 @@ class cellTable : public Map<dictionary> { - // Private data - - static const char* const defaultMaterial_; - - // Private Member Functions - //- Map from cellTable ID => zone number - Map<label> zoneMap() const; - - //- A contiguous list of cellTable names - wordList namesList() const; - //- Add required entries - MaterialType void addDefaults(); - void setEntry(const label id, const word& keyWord, const word& value); - - //- No copy construct - cellTable(const cellTable&) = delete; + void setEntry(const label id, const word& key, const word& value); public: + //- No copy construct + cellTable(const cellTable&) = delete; + + // Constructors - //- Construct null - cellTable(); + //- Default construct + cellTable() noexcept = default; - //- Construct read from registry, name. instance - cellTable + //- Read construct from registry, name, instance + explicit cellTable ( - const objectRegistry&, + const objectRegistry& obr, const word& name = "cellTable", const fileName& instance = "constant" ); @@ -126,25 +117,28 @@ public: // Member Functions - //- Append to the end, return index - label append(const dictionary&); + //- Add to the end, return index + label push_back(const dictionary& dict); - //- Return index corresponding to name - // returns -1 if not found + //- The max table index, -1 if empty + label maxIndex() const; + + //- The index corresponding to entry with 'Label' of given name, + //- or -1 if not found label findIndex(const word& name) const; - //- Return the name corresponding to id - // returns cellTable_ID if not otherwise defined + //- The 'Label' name corresponding to id, + //- or cellTable_ID if not otherwise defined word name(const label id) const; - //- Return a Map of (id => name) + //- Return the extracted Map of (id => name) Map<word> names() const; - //- Return a Map of (id => names) selected by patterns + //- Return the extracted Map of (id => names) selected by patterns Map<word> names(const wordRes& patterns) const; - //- Return a Map of (id => name) for materialType - // (fluid | solid | shell) + //- Return the extracted Map of (id => name) for materialType + //- (fluid | solid | shell) Map<word> selectType(const word& materialType) const; //- Return a Map of (id => name) for fluids @@ -205,8 +199,15 @@ public: //- Combine tableIds together // each dictionary entry is a wordList void combine(const dictionary& mapDict, labelList& tableIds); + + + // Housekeeping + + //- Add to the end, return index + label append(const dictionary& dict) { return push_back(dict); } }; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/conversion/common/tables/remappingDict b/src/conversion/common/tables/remappingDict index 30757af3ddef2ebc10fb92245806361e10ad1a57..a7b162cb3c72ae8b32641f159de6cb35bc426c58 100644 --- a/src/conversion/common/tables/remappingDict +++ b/src/conversion/common/tables/remappingDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/conversion/ensight/output/ensightOutputVolFieldTemplates.C b/src/conversion/ensight/output/ensightOutputVolFieldTemplates.C index b940f11d23bdf735c642c3708a070c8a55e0aa47..0a2cb59146e7ca92b2a3182f8fb366683d1ca1f9 100644 --- a/src/conversion/ensight/output/ensightOutputVolFieldTemplates.C +++ b/src/conversion/ensight/output/ensightOutputVolFieldTemplates.C @@ -49,7 +49,7 @@ bool Foam::ensightOutput::writeVolField bool parallel = Pstream::parRun(); const fvMesh& mesh = vf.mesh(); - const polyBoundaryMesh& bmesh = mesh.boundaryMesh(); + const polyBoundaryMesh& pbm = mesh.boundaryMesh(); const Map<ensightCells>& cellZoneParts = ensMesh.cellZoneParts(); const Map<ensightFaces>& faceZoneParts = ensMesh.faceZoneParts(); @@ -69,13 +69,13 @@ bool Foam::ensightOutput::writeVolField { const ensightFaces& part = boundaryParts[patchId]; - if (patchId < 0 || patchId >= bmesh.size()) + if (patchId < 0 || patchId >= pbm.size()) { // Future handling of combined patches? continue; } - const label patchStart = bmesh[patchId].start(); + const label patchStart = pbm[patchId].start(); // Either use a flat boundary field for all patches, // or patch-local face ids @@ -107,34 +107,28 @@ bool Foam::ensightOutput::writeVolField // Flat boundary field // similar to volPointInterpolation::flatBoundaryField() - Field<Type> flat(mesh.nBoundaryFaces(), Zero); + Field<Type> flat(pbm.nFaces(), Foam::zero{}); - const fvBoundaryMesh& bm = mesh.boundary(); forAll(vf.boundaryField(), patchi) { - const polyPatch& pp = bm[patchi].patch(); - const auto& bf = vf.boundaryField()[patchi]; + const polyPatch& pp = pbm[patchi]; + const auto& pfld = vf.boundaryField()[patchi]; - if (isA<processorFvPatch>(bm[patchi])) + // Note: restrict transcribing to actual size of the patch field + // - handles "empty" patch type etc. + + SubList<Type> slice(flat, pfld.size(), pp.offset()); + + if (isA<processorPolyPatch>(pp)) { // Use average value for processor faces // own cell value = patchInternalField // nei cell value = evaluated boundary values - SubList<Type> - ( - flat, - bf.size(), - pp.offset() - ) = (0.5 * (bf.patchInternalField() + bf)); + slice = (0.5 * (pfld.patchInternalField() + pfld)); } - else if (!isA<emptyFvPatch>(bm[patchi])) + else if (!isA<emptyPolyPatch>(pp)) { - SubList<Type> - ( - flat, - bf.size(), - pp.offset() - ) = bf; + slice = pfld; } } diff --git a/src/conversion/vtk/output/foamVtkPatchWriterTemplates.C b/src/conversion/vtk/output/foamVtkPatchWriterTemplates.C index 0219a3b835c49e3dccd8c0f5fcd4b765aada333b..4c22bf3d653ef8d9c83f1b7aea32bf615bb0cdd0 100644 --- a/src/conversion/vtk/output/foamVtkPatchWriterTemplates.C +++ b/src/conversion/vtk/output/foamVtkPatchWriterTemplates.C @@ -90,7 +90,7 @@ void Foam::vtk::patchWriter::write // Receive each patch field and write for (const int subproci : Pstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); for (label i=0; i < nPatches; ++i) { @@ -105,8 +105,8 @@ void Foam::vtk::patchWriter::write // Send each patch field OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); for (const label patchId : patchIDs_) @@ -188,7 +188,7 @@ void Foam::vtk::patchWriter::write // Receive each patch field and write for (const int subproci : Pstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); for (label i=0; i < nPatches; ++i) { @@ -203,8 +203,8 @@ void Foam::vtk::patchWriter::write // Send each patch field OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); for (const label patchId : patchIDs_) @@ -287,14 +287,14 @@ void Foam::vtk::patchWriter::write // Patch Ids are identical across all processes const label nPatches = patchIDs_.size(); - if (Pstream::master()) + if (UPstream::master()) { Field<Type> recv; // Receive each patch field and write - for (const int subproci : Pstream::subProcs()) + for (const int subproci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); for (label i=0; i < nPatches; ++i) { @@ -309,8 +309,8 @@ void Foam::vtk::patchWriter::write // Send each patch field OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); for (const label patchId : patchIDs_) diff --git a/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.C b/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.C index 8bb1a1ee49e7c6df5ec5628c61eec9e65c4cc555..c6494bd880d50376e34657a195dc1e50a1c2074f 100644 --- a/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.C +++ b/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,35 +26,40 @@ License \*---------------------------------------------------------------------------*/ #include "foamVtkSurfaceFieldWriter.H" -#include "emptyFvsPatchFields.H" #include "fvsPatchFields.H" #include "surfaceFields.H" -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // -Foam::List<Foam::vector> Foam::vtk::surfaceFieldWriter::flattenBoundary +namespace Foam +{ + +// Flatten boundary field values into a contiguous list +template<class Type> +static List<Type> flattenBoundary ( - const surfaceVectorField& field -) const + const GeometricField<Type, fvsPatchField, surfaceMesh>& field +) { - // Boundary field - flatten + const polyBoundaryMesh& pbm = field.mesh().boundaryMesh(); - List<vector> flat(mesh_.nBoundaryFaces(), Zero); + List<Type> flat(pbm.nFaces(), Foam::zero{}); forAll(field.boundaryField(), patchi) { - const polyPatch& pp = mesh_.boundaryMesh()[patchi]; + const polyPatch& pp = pbm[patchi]; const auto& pfld = field.boundaryField()[patchi]; - if (!isA<emptyFvsPatchVectorField>(pfld)) - { - SubList<vector>(flat, pp.size(), pp.offset()) = pfld; - } + // Note: restrict transcribing to actual size of the patch field + // - handles "empty" patch type etc. + SubList<Type>(flat, pfld.size(), pp.offset()) = pfld; } return flat; } +} // End namespace Foam + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // diff --git a/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.H b/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.H index 1dc5ca1c6d7322f588e681f99c1e2a1109a50048..420fb0fca6d0ec81116b71588388291e350f8f1d 100644 --- a/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.H +++ b/src/conversion/vtk/output/foamVtkSurfaceFieldWriter.H @@ -82,11 +82,9 @@ class surfaceFieldWriter label numberOfPoints_; - // Private Member Functions - - //- Flatten boundary field values into a contiguous list - List<vector> flattenBoundary(const surfaceVectorField& field) const; +public: + // Generated Methods //- No copy construct surfaceFieldWriter(const surfaceFieldWriter&) = delete; @@ -95,8 +93,6 @@ class surfaceFieldWriter void operator=(const surfaceFieldWriter&) = delete; -public: - // Constructors //- Construct from mesh (default format INLINE_BASE64) diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/freeSurfacePointDisplacement.C b/src/dynamicFaMesh/interfaceTrackingFvMesh/freeSurfacePointDisplacement.C index d8d92e959c036caad1742bb6c70785558e178067..8661837cf23f48ec1ad612e2f88a305a23fd9edb 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/freeSurfacePointDisplacement.C +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/freeSurfacePointDisplacement.C @@ -364,7 +364,7 @@ Foam::interfaceTrackingFvMesh::pointDisplacement() { OPstream toNeighbProc ( - Pstream::commsTypes::blocking, + Pstream::commsTypes::buffered, procPatch.neighbProcNo() ); @@ -375,7 +375,7 @@ Foam::interfaceTrackingFvMesh::pointDisplacement() { IPstream fromNeighbProc ( - Pstream::commsTypes::blocking, + Pstream::commsTypes::buffered, procPatch.neighbProcNo() ); diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/functionObjects/writeFreeSurface/writeFreeSurface.C b/src/dynamicFaMesh/interfaceTrackingFvMesh/functionObjects/writeFreeSurface/writeFreeSurface.C index 93277dbaa339ff0b59077bd72ac36b56a4271d96..900c223b8aa057b1e45c0f8be75bb3ba62be0511 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/functionObjects/writeFreeSurface/writeFreeSurface.C +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/functionObjects/writeFreeSurface/writeFreeSurface.C @@ -51,19 +51,15 @@ namespace functionObjects void Foam::functionObjects::writeFreeSurface::writeData() { // refCast<interfaceTrackingFvMesh> - auto* itm = - const_cast<interfaceTrackingFvMesh*> - ( - isA<interfaceTrackingFvMesh>(mesh_) - ); + auto* itm = isA_constCast<interfaceTrackingFvMesh>(mesh_); - if (!itm) + if (itm) { - // FatalError + itm->writeVTKControlPoints(); } else { - itm->writeVTKControlPoints(); + // FatalError } } diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.C b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.C index a659bcf4c9c02b9cf54151b334774b457756d7b5..0039200efd24638d4bd6d15c1e1f9ca3bb1d242f 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.C +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.C @@ -139,22 +139,22 @@ void Foam::freeSurfacePressureFvPatchScalarField::updateCoeffs() // refCast<interfaceTrackingFvMesh> auto* itm = - const_cast<interfaceTrackingFvMesh*> + isA_constCast<interfaceTrackingFvMesh> ( - isA<interfaceTrackingFvMesh>(patch().boundaryMesh().mesh()) + patch().boundaryMesh().mesh() ); - if (!itm) - { - // FatalError - } - else + if (itm) { operator== ( pa_ + itm->freeSurfacePressureJump() ); } + else + { + // FatalError + } fixedValueFvPatchScalarField::updateCoeffs(); } diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.H b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.H index 818ce6ba41b5ec526020e2af2e090a5a38500a88..95a7f26b429dbc209bca2126e31b97e363911e87 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.H +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfacePressure/freeSurfacePressureFvPatchScalarField.H @@ -132,15 +132,6 @@ public: const freeSurfacePressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField > - ( - new freeSurfacePressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference freeSurfacePressureFvPatchScalarField ( @@ -148,16 +139,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new freeSurfacePressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfaceVelocity/freeSurfaceVelocityFvPatchVectorField.H b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfaceVelocity/freeSurfaceVelocityFvPatchVectorField.H index 77c81522deae2680dbf142d22af3fcae398369be..500a4aa322e04cd0d68c5c16571c9581f91f3937 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfaceVelocity/freeSurfaceVelocityFvPatchVectorField.H +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/fvPatchFields/freeSurfaceVelocity/freeSurfaceVelocityFvPatchVectorField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new freeSurfaceVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference freeSurfaceVelocityFvPatchVectorField ( @@ -106,16 +97,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new freeSurfaceVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/dynamicFaMesh/interfaceTrackingFvMesh/interfaceTrackingFvMesh.C b/src/dynamicFaMesh/interfaceTrackingFvMesh/interfaceTrackingFvMesh.C index ef431b1d9e40eadaef70b1ef70b0456a1b324d48..015aa5757112b417e672c2b79abacc4900e56315 100644 --- a/src/dynamicFaMesh/interfaceTrackingFvMesh/interfaceTrackingFvMesh.C +++ b/src/dynamicFaMesh/interfaceTrackingFvMesh/interfaceTrackingFvMesh.C @@ -50,6 +50,7 @@ License #include "demandDrivenData.H" #include "unitConversion.H" #include "foamVtkIndPatchWriter.H" +#include "calculatedFaPatchFields.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -295,46 +296,31 @@ void Foam::interfaceTrackingFvMesh::makeControlPoints() << abort(FatalError); } - IOobject controlPointsHeader + IOobject pointsIO ( "controlPoints", mesh().time().timeName(), mesh(), - IOobject::MUST_READ + IOobject::MUST_READ, + IOobject::AUTO_WRITE, + IOobject::REGISTER ); - if (controlPointsHeader.typeHeaderOk<vectorIOField>()) + if (pointsIO.typeHeaderOk<vectorIOField>()) { Info<< "Reading control points" << endl; - controlPointsPtr_ = - new vectorIOField - ( - IOobject - ( - "controlPoints", - mesh().time().timeName(), - mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ) - ); + controlPointsPtr_ = new vectorIOField(pointsIO); } else { + pointsIO.readOpt(IOobject::NO_READ); + Info<< "Creating new control points" << endl; - controlPointsPtr_ = - new vectorIOField - ( - IOobject - ( - "controlPoints", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - aMesh().areaCentres().internalField() - ); + controlPointsPtr_ = new vectorIOField + ( + pointsIO, + aMesh().areaCentres().internalField() + ); initializeControlPointsPosition(); } @@ -526,7 +512,7 @@ void Foam::interfaceTrackingFvMesh::makeBulkSurfactConc() const mesh().time().startTime().value() ), // mesh().time().timeName(), - aMesh().thisDb(), + mesh(), IOobject::MUST_READ, IOobject::AUTO_WRITE ), diff --git a/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/balanceParDict b/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/balanceParDict index e4153c40732eeee6271e887089d33541a326f6f2..90ed8c5652b8ccf32d1b83dd5827f208634c1eca 100644 --- a/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/balanceParDict +++ b/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/balanceParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/dynamicMeshDict b/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/dynamicMeshDict index ef4979f53eb18cd5d7aa9dd45c699b7e89921622..b21b392bd70df2f60130091d830b08470972671f 100644 --- a/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/dynamicMeshDict +++ b/src/dynamicFvMesh/dynamicRefineBalancedFvMesh/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict index 1a6d04b98795696b7a4d83c47fbddb967f844463..e37a6e509bcf9cc7cf917771ef98a863f84ac8ac 100644 --- a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict +++ b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/dynamicMesh/Make/files b/src/dynamicMesh/Make/files index d87341be3e23180d22edb7b0099ca6721b3d8d45..4f5379232b79b394000d0ea90544989d017da3f6 100644 --- a/src/dynamicMesh/Make/files +++ b/src/dynamicMesh/Make/files @@ -109,19 +109,6 @@ motionSolvers/displacement/solidBody/solidBodyMotionSolver.C motionSolvers/displacement/solidBody/multiSolidBodyMotionSolver.C motionSolvers/displacement/codedPoints0/codedPoints0MotionSolver.C -solidBodyMotionFunctions = motionSolvers/displacement/solidBody/solidBodyMotionFunctions -$(solidBodyMotionFunctions)/solidBodyMotionFunction/solidBodyMotionFunction.C -$(solidBodyMotionFunctions)/solidBodyMotionFunction/solidBodyMotionFunctionNew.C -$(solidBodyMotionFunctions)/SDA/SDA.C -$(solidBodyMotionFunctions)/tabulated6DoFMotion/tabulated6DoFMotion.C -$(solidBodyMotionFunctions)/linearMotion/linearMotion.C -$(solidBodyMotionFunctions)/drivenLinearMotion/drivenLinearMotion.C -$(solidBodyMotionFunctions)/rotatingMotion/rotatingMotion.C -$(solidBodyMotionFunctions)/axisRotationMotion/axisRotationMotion.C -$(solidBodyMotionFunctions)/multiMotion/multiMotion.C -$(solidBodyMotionFunctions)/oscillatingLinearMotion/oscillatingLinearMotion.C -$(solidBodyMotionFunctions)/oscillatingRotatingMotion/oscillatingRotatingMotion.C - motionSolvers/displacement/solidBody/pointPatchFields/derived/solidBodyMotionDisplacement/solidBodyMotionDisplacementPointPatchVectorField.C createShellMesh/createShellMesh.C diff --git a/src/dynamicMesh/attachDetach/detachInterface.C b/src/dynamicMesh/attachDetach/detachInterface.C index 34f94d4cad4bc5f08ea8b6cff8260aa3e45c7127..5e3fd103bc1998094a97289cf20acbac89b2a420 100644 --- a/src/dynamicMesh/attachDetach/detachInterface.C +++ b/src/dynamicMesh/attachDetach/detachInterface.C @@ -366,16 +366,8 @@ void Foam::attachDetach::detachInterface } // Create the master layer point map - Map<label> masterLayerPointMap(2*mp.size()); + Map<label> masterLayerPointMap(mp, addedPoints); - forAll(mp, pointi) - { - masterLayerPointMap.insert - ( - mp[pointi], - addedPoints[pointi] - ); - } // Grab the list of faces of the master layer const labelList masterCellFaces = masterCellFaceMap.toc(); diff --git a/src/dynamicMesh/fvMeshDistribute/fvMeshDistribute.C b/src/dynamicMesh/fvMeshDistribute/fvMeshDistribute.C index f4db96fdb812befbbbc2e6516d2bd628ed325330..b843e387670acde2f4653310902480d009f1851c 100644 --- a/src/dynamicMesh/fvMeshDistribute/fvMeshDistribute.C +++ b/src/dynamicMesh/fvMeshDistribute/fvMeshDistribute.C @@ -2017,7 +2017,14 @@ Foam::autoPtr<Foam::mapDistributePolyMesh> Foam::fvMeshDistribute::distribute // Remove meshPhi. Since this would otherwise disappear anyway // during topo changes and we have to guarantee that all the fields // can be sent. + + // NOTE: could/should use (isMeshUpdate = true) for mesh_.clearOut() + // but the bottom level will do a clearGeom() and that doesn't seem + // to work particularly well with isMeshUpdate at all. + // re-visit if needed... + mesh_.clearOut(); + mesh_.resetMotion(); // Get data to send. Make sure is synchronised @@ -2146,7 +2153,7 @@ Foam::autoPtr<Foam::mapDistributePolyMesh> Foam::fvMeshDistribute::distribute UPstream::allToAll(nSendCells, nRecvCells); // Allocate buffers - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // What to send to neighbouring domains @@ -2171,7 +2178,6 @@ Foam::autoPtr<Foam::mapDistributePolyMesh> Foam::fvMeshDistribute::distribute } // Pstream for sending mesh and fields - //OPstream str(Pstream::commsTypes::blocking, recvProc); UOPstream str(recvProc, pBufs); // Mesh subsetting engine - subset the cells of the current domain. diff --git a/src/dynamicMesh/layerAdditionRemoval/addCellLayer.C b/src/dynamicMesh/layerAdditionRemoval/addCellLayer.C index 2c6eb27b362e40754ea701c63d82a6653fa5e597..b7e7c1b4881b4971a40c27733ad2cec5500de37c 100644 --- a/src/dynamicMesh/layerAdditionRemoval/addCellLayer.C +++ b/src/dynamicMesh/layerAdditionRemoval/addCellLayer.C @@ -47,8 +47,8 @@ Foam::tmp<Foam::vectorField> Foam::layerAdditionRemoval::extrusionDir() const const pointField& points = mesh.points(); const labelList& mp = masterFaceLayer.meshPoints(); - tmp<vectorField> textrusionDir(new vectorField(mp.size())); - vectorField& extrusionDir = textrusionDir.ref(); + auto textrusionDir = tmp<vectorField>::New(mp.size()); + auto& extrusionDir = textrusionDir.ref(); if (setLayerPairing()) { @@ -562,16 +562,8 @@ void Foam::layerAdditionRemoval::addCellLayer } // Create the master layer point map - Map<label> masterLayerPointMap(2*mp.size()); + Map<label> masterLayerPointMap(mp, addedPoints); - forAll(mp, pointi) - { - masterLayerPointMap.insert - ( - mp[pointi], - addedPoints[pointi] - ); - } // Grab the list of faces of the master layer const labelList masterCellFaces = masterCellFaceMap.toc(); diff --git a/src/dynamicMesh/layerAdditionRemoval/removeCellLayer.C b/src/dynamicMesh/layerAdditionRemoval/removeCellLayer.C index e04075d2e0c8def7d9369ae02fa149d62877dd6c..34d8c13ae589ccb3a6e809ffa146d1852bbcc55b 100644 --- a/src/dynamicMesh/layerAdditionRemoval/removeCellLayer.C +++ b/src/dynamicMesh/layerAdditionRemoval/removeCellLayer.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -155,9 +155,9 @@ void Foam::layerAdditionRemoval::removeCellLayer } // Remove all points that will be collapsed - forAll(ptc, pointi) + for (const label pointi : ptc) { - ref.setAction(polyRemovePoint(ptc[pointi])); + ref.setAction(polyRemovePoint(pointi)); } // Grab all faces coming off points to be deleted. If the face @@ -167,15 +167,10 @@ void Foam::layerAdditionRemoval::removeCellLayer // Make a map of all point to be removed, giving the master point label // for each of them - Map<label> removedPointMap(2*ptc.size()); - const labelList& meshPoints = - mesh.faceZones()[faceZoneID_.index()]().meshPoints(); + mesh.faceZones()[faceZoneID_.index()].patch().meshPoints(); - forAll(ptc, pointi) - { - removedPointMap.insert(ptc[pointi], meshPoints[pointi]); - } + Map<label> removedPointMap(ptc, meshPoints); const labelListList& pf = mesh.pointFaces(); diff --git a/src/dynamicMesh/meshCut/meshModifiers/multiDirRefinement/multiDirRefinement.C b/src/dynamicMesh/meshCut/meshModifiers/multiDirRefinement/multiDirRefinement.C index 94b23d800e07377a35b6051926ba73d752aa6c44..497c7222196c294f830f4ba2c102fef07b729034 100644 --- a/src/dynamicMesh/meshCut/meshModifiers/multiDirRefinement/multiDirRefinement.C +++ b/src/dynamicMesh/meshCut/meshModifiers/multiDirRefinement/multiDirRefinement.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -277,16 +277,14 @@ void Foam::multiDirRefinement::refineHex8 { // Create count 1 for original cells Map<label> hexCellSet(2*hexCells.size()); - forAll(hexCells, i) + for (const label celli : hexCells) { - hexCellSet.insert(hexCells[i], 1); + hexCellSet.insert(celli, 1); } // Increment count - forAll(consistentCells, i) + for (const label celli : consistentCells) { - const label celli = consistentCells[i]; - auto iter = hexCellSet.find(celli); if (iter.good()) diff --git a/src/dynamicMesh/motionSmoother/motionSmootherAlgo.C b/src/dynamicMesh/motionSmoother/motionSmootherAlgo.C index ddb61551d57371d0376f0d724443d41ebf653255..93d9c97a8a217b82a17f3e84553dc66ed7465dd5 100644 --- a/src/dynamicMesh/motionSmoother/motionSmootherAlgo.C +++ b/src/dynamicMesh/motionSmoother/motionSmootherAlgo.C @@ -587,12 +587,12 @@ void Foam::motionSmootherAlgo::correctBoundaryConditions if (schedEval.init) { displacementBf[patchi] - .initEvaluate(Pstream::commsTypes::blocking); + .initEvaluate(Pstream::commsTypes::buffered); } else { displacementBf[patchi] - .evaluate(Pstream::commsTypes::blocking); + .evaluate(Pstream::commsTypes::buffered); } } } @@ -608,12 +608,12 @@ void Foam::motionSmootherAlgo::correctBoundaryConditions if (schedEval.init) { displacementBf[patchi] - .initEvaluate(Pstream::commsTypes::blocking); + .initEvaluate(Pstream::commsTypes::buffered); } else { displacementBf[patchi] - .evaluate(Pstream::commsTypes::blocking); + .evaluate(Pstream::commsTypes::buffered); } } } diff --git a/src/dynamicMesh/motionSmoother/motionSmootherAlgoTemplates.C b/src/dynamicMesh/motionSmoother/motionSmootherAlgoTemplates.C index 98f45bf5be828bd1c43b81b96f9ec730b298cbff..a38b0a163bdc2380e172cd120c4b4b1e99f7104e 100644 --- a/src/dynamicMesh/motionSmoother/motionSmootherAlgoTemplates.C +++ b/src/dynamicMesh/motionSmoother/motionSmootherAlgoTemplates.C @@ -67,12 +67,12 @@ void Foam::motionSmootherAlgo::checkConstraints forAllReverse(bFld, patchi) { - bFld[patchi].initEvaluate(Pstream::commsTypes::blocking); // buffered + bFld[patchi].initEvaluate(Pstream::commsTypes::buffered); } forAllReverse(bFld, patchi) { - bFld[patchi].evaluate(Pstream::commsTypes::blocking); + bFld[patchi].evaluate(Pstream::commsTypes::buffered); } diff --git a/src/dynamicMesh/motionSolvers/displacement/interpolation/displacementInterpolationMotionSolver.C b/src/dynamicMesh/motionSolvers/displacement/interpolation/displacementInterpolationMotionSolver.C index dbd93a73fbcbcca1cbd7a75102ab5e84b46fa5b9..2026e4e09e424b11f20057ed50ce9e8ef0b25546 100644 --- a/src/dynamicMesh/motionSolvers/displacement/interpolation/displacementInterpolationMotionSolver.C +++ b/src/dynamicMesh/motionSolvers/displacement/interpolation/displacementInterpolationMotionSolver.C @@ -339,8 +339,8 @@ Foam::displacementInterpolationMotionSolver::curPoints() const << " points." << exit(FatalError); } - tmp<pointField> tcurPoints(new pointField(points0())); - pointField& curPoints = tcurPoints.ref(); + auto tcurPoints = tmp<pointField>::New(points0()); + auto& curPoints = tcurPoints.ref(); // Interpolate the displacement of the face zones. vectorField zoneDisp(displacements_.size(), Zero); diff --git a/src/dynamicMesh/motionSolvers/displacement/layeredSolver/displacementLayeredMotionMotionSolver.C b/src/dynamicMesh/motionSolvers/displacement/layeredSolver/displacementLayeredMotionMotionSolver.C index 5b88d28c57265ef576651d4d7f3dcd209ec01c15..645be3cea28295c511a2db6c1b1b2838e8d62ce0 100644 --- a/src/dynamicMesh/motionSolvers/displacement/layeredSolver/displacementLayeredMotionMotionSolver.C +++ b/src/dynamicMesh/motionSolvers/displacement/layeredSolver/displacementLayeredMotionMotionSolver.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2019 OpenCFD Ltd. + Copyright (C) 2015-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -338,14 +338,9 @@ void Foam::displacementLayeredMotionMotionSolver::cellZoneSolve patchi, new pointVectorField ( - IOobject + mesh().newIOobject ( - mesh().cellZones()[cellZoneI].name() + "_" + fz.name(), - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER + mesh().cellZones()[cellZoneI].name() + "_" + fz.name() ), pointDisplacement_ // to inherit the boundary conditions ) @@ -429,20 +424,18 @@ void Foam::displacementLayeredMotionMotionSolver::cellZoneSolve if (debug) { // Normalised distance - pointScalarField distance + auto tdistance = pointScalarField::New ( - IOobject + IOobject::scopedName ( - mesh().cellZones()[cellZoneI].name() + ":distance", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER + mesh().cellZones()[cellZoneI].name(), + "distance" ), + IOobject::NO_REGISTER, pointMesh::New(mesh()), dimensionedScalar(dimLength, Zero) ); + auto& distance = tdistance.ref(); for (const label pointi : isZonePoint) { diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/pointPatchFields/derived/solidBodyMotionDisplacement/solidBodyMotionDisplacementPointPatchVectorField.H b/src/dynamicMesh/motionSolvers/displacement/solidBody/pointPatchFields/derived/solidBodyMotionDisplacement/solidBodyMotionDisplacementPointPatchVectorField.H index 1ed9211e1b6748cc758a015000593b9f5f5c5940..2a61023250452e7dd99fb9a375b23d7506545661 100644 --- a/src/dynamicMesh/motionSolvers/displacement/solidBody/pointPatchFields/derived/solidBodyMotionDisplacement/solidBodyMotionDisplacementPointPatchVectorField.H +++ b/src/dynamicMesh/motionSolvers/displacement/solidBody/pointPatchFields/derived/solidBodyMotionDisplacement/solidBodyMotionDisplacementPointPatchVectorField.H @@ -101,18 +101,6 @@ public: const solidBodyMotionDisplacementPointPatchVectorField& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new solidBodyMotionDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference solidBodyMotionDisplacementPointPatchVectorField ( @@ -121,20 +109,19 @@ public: ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new solidBodyMotionDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C index 85ce1edb056ba3d6b287571efe22e4dfe9465b3c..a2ff83268129796bea99d66eb587afd33441ae26 100644 --- a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C +++ b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C @@ -2698,37 +2698,14 @@ void Foam::polyMeshAdder::add const polyMesh& mesh = meshes[meshi]; const cellZoneMesh& cellZones = mesh.cellZones(); - // Precalc offset zones - labelList newZoneID(mesh.nCells(), -1); - - forAll(cellZones, zonei) - { - const labelList& cellLabels = cellZones[zonei]; - - for (const label celli : cellLabels) - { - if (newZoneID[celli] != -1) - { - WarningInFunction - << "Cell:" << celli - << " centre:" << mesh.cellCentres()[celli] - << " is in two zones:" - << cellZones[newZoneID[celli]].name() - << " and " << cellZones[zonei].name() << endl - << " This is not supported." - << " Continuing with first zone only." << endl; - } - else - { - newZoneID[celli] = cellZoneMap[meshi][zonei]; - } - } - } - // Add cells in mesh order cellProcAddressing[meshi].setSize(mesh.nCells()); + DynamicList<label> zones; for (label celli = 0; celli < mesh.nCells(); celli++) { + // Get current zones and renumber + cellZones.whichZones(celli, zones); + inplaceRenumber(cellZoneMap[meshi], zones); // Add cell from cell cellProcAddressing[meshi][celli] = meshMod.addCell ( @@ -2736,7 +2713,7 @@ void Foam::polyMeshAdder::add -1, -1, celli, - newZoneID[celli] + zones ); } } @@ -2755,30 +2732,21 @@ void Foam::polyMeshAdder::add const pointField& points = mesh.points(); const pointZoneMesh& pointZones = mesh.pointZones(); - // Precalc offset zones - labelList newZoneID(points.size(), -1); - - forAll(pointZones, zonei) - { - const labelList& pointLabels = pointZones[zonei]; - - for (const label pointi : pointLabels) - { - newZoneID[pointi] = pointZoneMap[meshi][zonei]; - } - } - // Add points in mesh order const labelList& myUniquePoints = uniquePoints[meshi]; + DynamicList<label> zones; for (const label pointi : myUniquePoints) { + // Get current zones and renumber + pointZones.whichZones(pointi, zones); + inplaceRenumber(pointZoneMap[meshi], zones); // Rewrite the addressing (should already be compact) just in // case the polyTopoChange does some special ordering pointProcAddressing[meshi][pointi] = meshMod.addPoint ( points[pointi], pointi, - newZoneID[pointi], + zones, true ); } @@ -2813,21 +2781,8 @@ void Foam::polyMeshAdder::add const labelList& faceNeighbour = mesh.faceNeighbour(); const faceZoneMesh& faceZones = mesh.faceZones(); - // Precalc offset zones - labelList newZoneID(faces.size(), -1); - boolList zoneFlip(faces.size(), false); - - forAll(faceZones, zonei) - { - const labelList& faceLabels = faceZones[zonei]; - const boolList& flipMap = faceZones[zonei].flipMap(); - - forAll(faceLabels, facei) - { - newZoneID[faceLabels[facei]] = faceZoneMap[meshi][zonei]; - zoneFlip[faceLabels[facei]] = flipMap[facei]; - } - } + DynamicList<label> zones; + DynamicList<bool> flips; // Add faces in mesh order @@ -2846,14 +2801,28 @@ void Foam::polyMeshAdder::add { newFace[fp] = pointProcAddressing[meshi][f[fp]]; } + + // Get current zones and renumber + faceZones.whichZones(facei, zones); + flips.clear(); + forAll(zones, i) + { + const label zonei = zones[i]; + const label index = faceZones[zonei].localID(facei); + flips.append(faceZones[zonei].flipMap()[index]); + } + inplaceRenumber(faceZoneMap[meshi], zones); + bool flipFaceFlux = false; - bool flip = zoneFlip[facei]; if (newNei < newOwn) { std::swap(newOwn, newNei); - newFace = newFace.reverseFace(); + newFace.flip(); flipFaceFlux = !flipFaceFlux; - flip = !flip; + for (bool& flip : flips) + { + flip = !flip; + } } const label newFacei = meshMod.addFace @@ -2866,8 +2835,8 @@ void Foam::polyMeshAdder::add facei, // masterFaceID flipFaceFlux, // flipFaceFlux -1, // patchID - newZoneID[facei], // zoneID - flip // zoneFlip + zones, // zoneIDs + flips // zoneFlips ); faceProcAddressing[meshi][facei] = newFacei; @@ -2892,6 +2861,17 @@ void Foam::polyMeshAdder::add const label newOwn = cellProcAddressing[meshi][faceOwner[facei]]; + faceZones.whichZones(facei, zones); + flips.clear(); + forAll(zones, i) + { + const label zonei = zones[i]; + const label index = faceZones[zonei].localID(facei); + flips.append(faceZones[zonei].flipMap()[index]); + } + inplaceRenumber(faceZoneMap[meshi], zones); + + // Neighbour mesh face const auto& nbrMesh = meshes[nbrMeshi]; const label nbrFacei = nbrMesh.nInternalFaces()+nbrBFacei; @@ -2912,7 +2892,6 @@ void Foam::polyMeshAdder::add newFace[fp] = pointProcAddressing[meshi][f[fp]]; } const bool flipFaceFlux = false; - const bool flip = zoneFlip[facei]; const label newFacei = meshMod.addFace ( newFace, @@ -2923,8 +2902,8 @@ void Foam::polyMeshAdder::add facei, // masterFaceID flipFaceFlux, // flipFaceFlux -1, // patchID - newZoneID[facei], // zoneID - flip // zoneFlip + zones, // zoneIDs + flips // zoneFlips ); faceProcAddressing[meshi][facei] = newFacei; @@ -2960,6 +2939,18 @@ void Foam::polyMeshAdder::add newFace[fp] = pointProcAddressing[meshi][f[fp]]; } + faceZones.whichZones(facei, zones); + flips.clear(); + forAll(zones, i) + { + const label zonei = zones[i]; + const label index = + faceZones[zonei].localID(facei); + flips.append(faceZones[zonei].flipMap()[index]); + } + inplaceRenumber(faceZoneMap[meshi], zones); + + const label newFacei = meshMod.addFace ( newFace, @@ -2970,8 +2961,8 @@ void Foam::polyMeshAdder::add facei, // masterFaceID false, // flipFaceFlux newPatchi, // patchID - newZoneID[facei], // zoneID - zoneFlip[facei] // zoneFlip + zones, // zoneID + flips // zoneFlip ); faceProcAddressing[meshi][facei] = newFacei; diff --git a/src/dynamicMesh/polyMeshFilter/polyMeshFilterTemplates.C b/src/dynamicMesh/polyMeshFilter/polyMeshFilterTemplates.C index e7cd13a97419fc930df042f7da16560049f8c459..ff5dbc9b3725954759600751edbe3927c3ca2d05 100644 --- a/src/dynamicMesh/polyMeshFilter/polyMeshFilterTemplates.C +++ b/src/dynamicMesh/polyMeshFilter/polyMeshFilterTemplates.C @@ -40,6 +40,10 @@ void Foam::polyMeshFilter::updateSets(const mapPolyMesh& map) // Update all sets in memory // + // Note: objectRegistry::lookupClass() instead of + // objectRegistry::csorted() since it is also used to check + // contains() in the next bit of code + const HashTable<const SetType*> sets ( map.mesh().objectRegistry::lookupClass<const SetType>() diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C index 373815305fed64f76038a2c171eddfdb65f44f0a..cd1b62ad59f2d01ab1dddd7f079f9dc9ab6e7949 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C @@ -48,6 +48,10 @@ License #include "refinementDistanceData.H" #include "degenerateMatcher.H" +//#include "fvMesh.H" +//#include "volFields.H" +//#include "OBJstream.H" + // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam @@ -2803,17 +2807,90 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 } + //{ + // const fvMesh& fMesh = reinterpret_cast<const fvMesh&>(mesh_); + // + // // Dump origin level + // volScalarField originLevel + // ( + // IOobject + // ( + // "originLevel_before_walk", + // fMesh.time().timeName(), + // fMesh, + // IOobject::NO_READ, + // IOobject::NO_WRITE, + // IOobject::NO_REGISTER + // ), + // fMesh, + // dimensionedScalar(dimless, Zero) + // ); + // + // forAll(originLevel, celli) + // { + // originLevel[celli] = allCellInfo[celli].originLevel(); + // } + // Pout<< "Writing " << originLevel.objectPath() << endl; + // originLevel.write(); + //} + //{ + // const auto& cc = mesh_.cellCentres(); + // + // mkDir(mesh_.time().timePath()); + // OBJstream os(mesh_.time().timePath()/"origin_before_walk.obj"); + // forAll(allCellInfo, celli) + // { + // os.write(linePointRef(cc[celli], allCellInfo[celli].origin())); + // } + //} + + // Labels of seed faces DynamicList<label> seedFaces(mesh_.nFaces()/100); // refinementLevel data on seed faces DynamicList<refinementDistanceData> seedFacesInfo(mesh_.nFaces()/100); const pointField& cc = mesh_.cellCentres(); + const polyBoundaryMesh& patches = mesh_.boundaryMesh(); - forAll(facesToCheck, i) + // Get neighbour boundary data: + // - coupled faces : owner data + // - non-coupled faces : owner level + 1 so we can treat + pointField nbrCc(mesh_.nBoundaryFaces(), point::max); + labelList nbrLevel(mesh_.nBoundaryFaces(), labelMax); + bitSet isBoundary(mesh_.nFaces()); { - label facei = facesToCheck[i]; + for (const polyPatch& pp : patches) + { + if (pp.coupled()) + { + const auto& faceCells = pp.faceCells(); + forAll(faceCells, i) + { + const label own = faceCells[i]; + nbrCc[pp.offset()+i] = cc[own]; + + const label ownLevel = + ( + allCellInfo[own].valid(dummyTrackData) + ? allCellInfo[own].originLevel() + : cellLevel_[own] + ); + nbrLevel[pp.offset()+i] = ownLevel; + } + } + else + { + isBoundary.set(pp.range()); + } + } + syncTools::swapBoundaryFaceList(mesh_, nbrCc); + syncTools::swapBoundaryFaceList(mesh_, nbrLevel); + } + + for (const label facei : facesToCheck) + { if (allFaceInfo[facei].valid(dummyTrackData)) { // Can only occur if face has already gone through loop below. @@ -2825,16 +2902,16 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 << abort(FatalError); } - label own = faceOwner[facei]; - - label ownLevel = + const label own = faceOwner[facei]; + const label ownLevel = ( allCellInfo[own].valid(dummyTrackData) ? allCellInfo[own].originLevel() : cellLevel_[own] ); + const point& ownCc = cc[own]; - if (!mesh_.isInternalFace(facei)) + if (isBoundary(facei)) { // Do as if boundary face would have neighbour with one higher // refinement level. @@ -2859,14 +2936,24 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 } else { - label nei = faceNeighbour[facei]; - - label neiLevel = - ( - allCellInfo[nei].valid(dummyTrackData) - ? allCellInfo[nei].originLevel() - : cellLevel_[nei] - ); + label neiLevel; + point neiCc; + if (mesh_.isInternalFace(facei)) + { + const label nei = faceNeighbour[facei]; + neiLevel = + ( + allCellInfo[nei].valid(dummyTrackData) + ? allCellInfo[nei].originLevel() + : cellLevel_[nei] + ); + neiCc = cc[nei]; + } + else + { + neiLevel = nbrLevel[facei-mesh_.nInternalFaces()]; + neiCc = nbrCc[facei-mesh_.nInternalFaces()]; + } if (ownLevel == neiLevel) { @@ -2875,8 +2962,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ( mesh_, facei, - nei, - refinementDistanceData(level0Size, cc[nei], neiLevel+1), + own, // not used, should be nei + refinementDistanceData(level0Size, neiCc, neiLevel+1), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2884,8 +2971,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ( mesh_, facei, - own, - refinementDistanceData(level0Size, cc[own], ownLevel+1), + own, // not used + refinementDistanceData(level0Size, ownCc, ownLevel+1), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2897,8 +2984,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ( mesh_, facei, - nei, - refinementDistanceData(level0Size, cc[nei], neiLevel), + own, // not used, should be nei + refinementDistanceData(level0Size, neiCc, neiLevel), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2906,8 +2993,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ( mesh_, facei, - own, - refinementDistanceData(level0Size, cc[own], ownLevel), + own, // not used + refinementDistanceData(level0Size, ownCc, ownLevel), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2918,31 +3005,45 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 } + // Create some initial seeds to start walking from. This is only if there // are no facesToCheck. // Just seed with all faces inbetween different refinement levels for now - forAll(faceNeighbour, facei) + // Note: no need to handle coupled faces since FaceCellWave below + // already swaps seedInfo upon start + //forAll(faceNeighbour, facei) + forAll(faceOwner, facei) { // Check if face already handled in loop above - if (!allFaceInfo[facei].valid(dummyTrackData)) + if (!allFaceInfo[facei].valid(dummyTrackData) && !isBoundary(facei)) { - label own = faceOwner[facei]; - - label ownLevel = + const label own = faceOwner[facei]; + const label ownLevel = ( allCellInfo[own].valid(dummyTrackData) ? allCellInfo[own].originLevel() : cellLevel_[own] ); + const point& ownCc = cc[own]; - label nei = faceNeighbour[facei]; - - label neiLevel = - ( - allCellInfo[nei].valid(dummyTrackData) - ? allCellInfo[nei].originLevel() - : cellLevel_[nei] - ); + label neiLevel; + point neiCc; + if (mesh_.isInternalFace(facei)) + { + const label nei = faceNeighbour[facei]; + neiLevel = + ( + allCellInfo[nei].valid(dummyTrackData) + ? allCellInfo[nei].originLevel() + : cellLevel_[nei] + ); + neiCc = cc[nei]; + } + else + { + neiLevel = nbrLevel[facei-mesh_.nInternalFaces()]; + neiCc = nbrCc[facei-mesh_.nInternalFaces()]; + } if (ownLevel > neiLevel) { @@ -2953,7 +3054,7 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 mesh_, facei, own, - refinementDistanceData(level0Size, cc[own], ownLevel), + refinementDistanceData(level0Size, ownCc, ownLevel), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2966,8 +3067,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ( mesh_, facei, - nei, - refinementDistanceData(level0Size, cc[nei], neiLevel), + own, // not used, should be nei, + refinementDistanceData(level0Size, neiCc, neiLevel), FaceCellWave<refinementDistanceData, int>::propagationTol(), dummyTrackData ); @@ -2992,8 +3093,45 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 ); + //- noted: origin is different face (? or cell) between non-parallel + // and parallel + //{ + // const auto& cc = mesh_.cellCentres(); + // + // mkDir(mesh_.time().timePath()); + // OBJstream os(mesh_.time().timePath()/"origin_after_walk.obj"); + // forAll(allCellInfo, celli) + // { + // os.write(linePointRef(cc[celli], allCellInfo[celli].origin())); + // } + //} + + + //if (debug) //{ + // const fvMesh& fMesh = reinterpret_cast<const fvMesh&>(mesh_); + // + // // Dump origin level + // volScalarField originLevel + // ( + // IOobject + // ( + // "originLevel_after_walk", + // fMesh.time().timeName(), + // fMesh, + // IOobject::NO_READ, + // IOobject::NO_WRITE, + // IOobject::NO_REGISTER + // ), + // fMesh, + // dimensionedScalar(dimless, Zero) + // ); + // + // forAll(originLevel, celli) + // { + // originLevel[celli] = allCellInfo[celli].originLevel(); + // } // // Dump wanted level // volScalarField wantedLevel // ( @@ -3015,6 +3153,9 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 // wantedLevel[celli] = allCellInfo[celli].wantedLevel(cc[celli]); // } // + // Pout<< "Writing " << originLevel.objectPath() << endl; + // //fMesh.write(); + // originLevel.write(); // Pout<< "Writing " << wantedLevel.objectPath() << endl; // wantedLevel.write(); //} diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.C index 3239bf801ad9a285dfa2172a3ae1ba942aef71a5..c842c2a696000b406207d8338b1a101d149c9d2e 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,7 +43,7 @@ namespace Foam // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -bool Foam::refinementHistory::readContents() +bool Foam::refinementHistory::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -566,7 +566,7 @@ Foam::refinementHistory::refinementHistory(const IOobject& io) // Warn for MUST_READ_IF_MODIFIED warnNoRereading<refinementHistory>(); - readContents(); + readIOcontents(); // When running in redistributePar + READ_IF_PRESENT it can happen // that some processors do have refinementHistory and some don't so @@ -602,7 +602,7 @@ Foam::refinementHistory::refinementHistory // Warn for MUST_READ_IF_MODIFIED warnNoRereading<refinementHistory>(); - readContents(); + readIOcontents(); // Check indices. checkIndices(); @@ -632,7 +632,7 @@ Foam::refinementHistory::refinementHistory // Warn for MUST_READ_IF_MODIFIED warnNoRereading<refinementHistory>(); - if (!readContents()) + if (!readIOcontents()) { visibleCells_.setSize(nCells); splitCells_.setCapacity(nCells); @@ -677,7 +677,7 @@ Foam::refinementHistory::refinementHistory // Warn for MUST_READ_IF_MODIFIED warnNoRereading<refinementHistory>(); - if (!readContents()) + if (!readIOcontents()) { visibleCells_.setSize(nCells); splitCells_.setCapacity(nCells); @@ -737,8 +737,7 @@ Foam::refinementHistory::refinementHistory if (io.isAnyRead()) { WarningInFunction - << "read option IOobject::MUST_READ or READ_IF_PRESENT " - << "or MUST_READ_IF_MODIFIED" + << "Read option MUST_READ, READ_IF_PRESENT or READ_MODIFIED" << " suggests that a read constructor would be more appropriate." << endl; } @@ -1272,6 +1271,9 @@ void Foam::refinementHistory::distribute(const mapDistributePolyMesh& map) // Create subsetted refinement tree consisting of all parents that // move in their whole to other processor. + + PstreamBuffers pBufs; + for (const int proci : Pstream::allProcs()) { //Pout<< "-- Subetting for processor " << proci << endl; @@ -1365,11 +1367,15 @@ void Foam::refinementHistory::distribute(const mapDistributePolyMesh& map) // Send to neighbours - OPstream toNbr(Pstream::commsTypes::blocking, proci); + UOPstream toNbr(proci, pBufs); toNbr << newSplitCells << newVisibleCells; } + // Wait for finish + pBufs.finishedSends(); + + // Receive from neighbours and merge // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -1383,7 +1389,7 @@ void Foam::refinementHistory::distribute(const mapDistributePolyMesh& map) for (const int proci : Pstream::allProcs()) { - IPstream fromNbr(Pstream::commsTypes::blocking, proci); + UIPstream fromNbr(proci, pBufs); List<splitCell8> newSplitCells(fromNbr); labelList newVisibleCells(fromNbr); diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.H b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.H index 49bd6fe7795c1e8311dcbe976ccee3499bf18ed3..6f40cf11dd6d6b560c7fc5aa136bc41759a07519 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.H +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -176,7 +176,7 @@ private: ); //- Read if IOobject flags set. Return true if read. - bool readContents(); + bool readIOcontents(); //- Check consistency of structure, i.e. indices into splitCells_. void checkIndices() const; diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.C index 50363fc4ba9b8f8a8541ce74f275987f6b02212d..0d83b5dc2f74a8acc3970426cefc1b3b763cb08d 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2015-2020,2022 OpenCFD Ltd. + Copyright (C) 2015-2020,2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,6 +34,7 @@ License #include "OFstream.H" #include "edgeHashes.H" #include "syncTools.H" +#include "dummyTransform.H" #include "triangle.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -52,6 +53,7 @@ Foam::tetDecomposer::decompositionTypeNames { decompositionType::FACE_CENTRE_TRIS, "faceCentre" }, { decompositionType::FACE_DIAG_TRIS, "faceDiagonal" }, { decompositionType::PYRAMID, "pyramid" }, + { decompositionType::FACE_DIAG_QUADS, "faceDiagonalQuads" }, }); @@ -69,6 +71,13 @@ void Foam::tetDecomposer::modifyFace const bool zoneFlip ) const { + if (own == nei) + { + FatalErrorInFunction + << "Problem own:" << own + << " nei:" << nei << exit(FatalError); + } + // First usage of face. Modify. if (nei == -1 || own < nei) { @@ -105,6 +114,7 @@ void Foam::tetDecomposer::addFace ( polyTopoChange& meshMod, const face& f, + const label facei, const label own, const label nei, const label masterPointID, @@ -115,9 +125,17 @@ void Foam::tetDecomposer::addFace const bool zoneFlip ) const { + if (own == nei) + { + FatalErrorInFunction + << "Problem own:" << own + << " nei:" << nei << exit(FatalError); + } + // Second or more usage of face. Add. if (nei == -1 || own < nei) { + //const label newFacei = meshMod.addFace ( f, // modified face @@ -134,6 +152,7 @@ void Foam::tetDecomposer::addFace } else { + //const label newFacei = meshMod.addFace ( f.reverseFace(), // modified face @@ -199,6 +218,273 @@ const } +void Foam::tetDecomposer::splitBoundaryFaces +( + List<faceList>& boundaryQuads, + List<faceList>& boundaryTris +) const +{ + // Work space + faceList quadFaces(1000); + faceList triFaces(1000); + + const auto& pbm = mesh_.boundaryMesh(); + for (const auto& pp : pbm) + { + if (pp.coupled() && refCast<const coupledPolyPatch>(pp).owner()) + { + forAll(pp, i) + { + const label facei = pp.start()+i; + const face& meshFace = pp[i]; + + if (meshFace.size() > 4) + { + label trii = 0; + label quadi = 0; + meshFace.trianglesQuads + ( + mesh_.points(), + trii, + quadi, + triFaces, + quadFaces + ); + + const label bFacei = facei-mesh_.nInternalFaces(); + + { + auto& faces = boundaryTris[bFacei]; + faces.setSize(trii); + // Express as relative w.r.t. 0th vertex + for (label i = 0; i < trii; i++) + { + const auto& f = triFaces[i]; + auto& verts = faces[i]; + verts.setSize(f.size()); + forAll(f, fp) + { + verts[fp] = meshFace.find(f[fp]); + } + } + } + { + auto& faces = boundaryQuads[bFacei]; + faces.setSize(quadi); + // Express as relative w.r.t. 0th vertex + for (label i = 0; i < quadi; i++) + { + const auto& f = quadFaces[i]; + auto& verts = faces[i]; + verts.setSize(f.size()); + forAll(f, fp) + { + verts[fp] = meshFace.find(f[fp]); + } + } + } + } + } + } + } + + // Send coupled side indices to neighbour. Note: could also do re-indexing + // here... + syncTools::syncBoundaryFaceList + ( + mesh_, + boundaryTris, + [](faceList& result, const faceList& input) + { + if (!result.size()) + { + result = input; + } + }, + dummyTransform() + ); + syncTools::syncBoundaryFaceList + ( + mesh_, + boundaryQuads, + [](faceList& result, const faceList& input) + { + if (!result.size()) + { + result = input; + } + }, + dummyTransform() + ); +} + + +void Foam::tetDecomposer::relativeIndicesToFace +( + const bool doFlip, + const face& meshFace, + const faceList& indexLists, + faceList& faces +) const +{ + //faces.setSize(indexLists.size()); + + if (!doFlip) + { + forAll(indexLists, facei) + { + const auto& verts = indexLists[facei]; + auto& f = faces[facei]; + f.setSize(verts.size()); + + forAll(verts, fp) + { + f[fp] = meshFace[verts[fp]]; + } + } + } + else + { + forAllReverse(indexLists, facei) + { + const auto& verts = indexLists[facei]; + auto& f = faces[facei]; + f.setSize(verts.size()); + + // - 0th vertex matches; walking order opposite + // - assemble in opposite order so as to flip normal + label destFp = verts.size()-1; + forAll(verts, fp) + { + if (verts[fp] == 0) + { + f[destFp] = meshFace[0]; + } + else + { + f[destFp] = meshFace[meshFace.size()-verts[fp]]; + } + --destFp; + } + } + } +} + + +void Foam::tetDecomposer::splitFace +( + const List<faceList>& boundaryQuads, + const List<faceList>& boundaryTris, + const label facei, + const label patchi, + label& quadi, + faceList& quadFaces, + label& trii, + faceList& triFaces +) const +{ + // Split face into quads (in quadFaces) and tris (in triFaces) + + const face& f = mesh_.faces()[facei]; + + trii = 0; + quadi = 0; + if (patchi != -1 && mesh_.boundaryMesh()[patchi].coupled()) + { + const auto& pp = mesh_.boundaryMesh()[patchi]; + const bool owner = + refCast<const coupledPolyPatch>(pp).owner(); + const label bFacei = facei-mesh_.nInternalFaces(); + + // Triangles + trii = boundaryTris[bFacei].size(); + relativeIndicesToFace + ( + !owner, + f, + boundaryTris[bFacei], + triFaces + ); + + // Quads + quadi = boundaryQuads[bFacei].size(); + relativeIndicesToFace + ( + !owner, + f, + boundaryQuads[bFacei], + quadFaces + ); + } + else if (f.size() == 4) + { + quadFaces[quadi++] = f; + } + else + { + f.trianglesQuads + ( + mesh_.points(), + trii, + quadi, + triFaces, + quadFaces + ); + } +} + + +void Foam::tetDecomposer::splitFace +( + const List<faceList>& boundaryQuads, + const List<faceList>& boundaryTris, + const label facei, + const label patchi, + faceList& quadFaces, + faceList& triFaces, + faceList& subFaces +) const +{ + const face& f = mesh_.faces()[facei]; + + if (f.size() <= 4) + { + subFaces.resize_nocopy(1); + subFaces[0] = f; + } + else + { + label trii; + label quadi; + splitFace + ( + boundaryQuads, + boundaryTris, + facei, + patchi, + quadi, + quadFaces, + trii, + triFaces + ); + + // Collect into single face list + subFaces.resize_nocopy(quadi+trii); + { + label subFacei = 0; + for (label i = 0; i < quadi; i++) + { + subFaces[subFacei++] = quadFaces[i]; + } + for (label i = 0; i < trii; i++) + { + subFaces[subFacei++] = triFaces[i]; + } + } + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::tetDecomposer::tetDecomposer(const polyMesh& mesh) @@ -216,25 +502,6 @@ void Foam::tetDecomposer::setRefinement polyTopoChange& meshMod ) { - cellToPoint_.setSize(mesh_.nCells(), -1); - forAll(mesh_.cellCentres(), celli) - { - if (decomposeCell[celli]) - { - // Any point on the cell - label masterPointi = mesh_.faces()[mesh_.cells()[celli][0]][0]; - - cellToPoint_[celli] = meshMod.addPoint - ( - mesh_.cellCentres()[celli], - masterPointi, - -1, - true - ); - } - } - - // Determine for every face whether it borders a cell that is decomposed bitSet decomposeFace(mesh_.nFaces()); { @@ -272,6 +539,95 @@ void Foam::tetDecomposer::setRefinement } } } + setRefinement(decomposeType, decomposeCell, decomposeFace, meshMod); +} + + +void Foam::tetDecomposer::setRefinement +( + const decompositionType decomposeType, + const bitSet& decomposeCell, + const bitSet& decomposeFace, + polyTopoChange& meshMod +) +{ + if (debug) + { + // Check that current mesh makes sense + const auto& faces = mesh_.faces(); + labelList nVerts(mesh_.nFaces()); + forAll(faces, facei) + { + nVerts[facei] = faces[facei].size(); + } + syncTools::swapFaceList(mesh_, nVerts); + forAll(nVerts, facei) + { + if (nVerts[facei] != faces[facei].size()) + { + FatalErrorInFunction<< "problem with nVerts" + << exit(FatalError); + } + } + } + if (debug) + { + // Check that decomposeFace makes sense + bitSet newDecomposeFace(decomposeFace); + syncTools::swapFaceList(mesh_, newDecomposeFace); + forAll(newDecomposeFace, facei) + { + if (decomposeFace[facei] != newDecomposeFace[facei]) + { + FatalErrorInFunction<< "problem with decomposeFace" + << exit(FatalError); + } + } + } + + + // For diagonal splitting : send over diagonals since two sides of + // coupled face might make different decisions + // TBD: probably also for FACE_DIAG_TRIS ? + faceList quadFaces; + faceList triFaces; + List<faceList> boundaryQuads; + List<faceList> boundaryTris; + faceList subFaces; + + if (decomposeType == FACE_DIAG_QUADS) + { + // Pre-calculate coupled faces triangulation. Store as indices w.r.t. + // vertex 0. + // Note: could triangulate all faces here but trying to save some + // memory so only doing: + // - faces on proc boundaries + // - faces > 4 verts + quadFaces.resize_nocopy(1000); + triFaces.resize_nocopy(1000); + boundaryQuads.resize_nocopy(mesh_.nBoundaryFaces()); + boundaryTris.resize_nocopy(mesh_.nBoundaryFaces()); + splitBoundaryFaces(boundaryQuads, boundaryTris); + } + + + cellToPoint_.setSize(mesh_.nCells(), -1); + forAll(mesh_.cellCentres(), celli) + { + if (decomposeCell[celli]) + { + // Any point on the cell + label masterPointi = mesh_.faces()[mesh_.cells()[celli][0]][0]; + + cellToPoint_[celli] = meshMod.addPoint + ( + mesh_.cellCentres()[celli], + masterPointi, + -1, + true + ); + } + } // Add face centre points @@ -306,9 +662,17 @@ void Foam::tetDecomposer::setRefinement { forAll(faceOwnerCells_, facei) { - const face& f = mesh_.faces()[facei]; - faceOwnerCells_[facei].setSize(f.size(), -1); - faceNeighbourCells_[facei].setSize(f.size(), -1); + if (decomposeFace[facei]) + { + const face& f = mesh_.faces()[facei]; + faceOwnerCells_[facei].setSize(f.size(), -1); + faceNeighbourCells_[facei].setSize(f.size(), -1); + } + else + { + faceOwnerCells_[facei].setSize(1, -1); + faceNeighbourCells_[facei].setSize(1, -1); + } } } else if (decomposeType == FACE_DIAG_TRIS) @@ -318,9 +682,78 @@ void Foam::tetDecomposer::setRefinement forAll(faceOwnerCells_, facei) { - const face& f = mesh_.faces()[facei]; - faceOwnerCells_[facei].setSize(f.size()-2, -1); - faceNeighbourCells_[facei].setSize(f.size()-2, -1); + if (decomposeFace[facei]) + { + const face& f = mesh_.faces()[facei]; + faceOwnerCells_[facei].setSize(f.size()-2, -1); + faceNeighbourCells_[facei].setSize(f.size()-2, -1); + } + else + { + faceOwnerCells_[facei].setSize(1, -1); + faceNeighbourCells_[facei].setSize(1, -1); + } + } + } + else if (decomposeType == FACE_DIAG_QUADS) + { + // Note: sizing according to the number of sub-faces, not according to + // f.size(). Plus: less storage. Min: much harder to look up + // cell corresponding to face+edge + + // Do coupled faces first - do not use local face triangulation + // but use coupled version instead + const auto& pbm = mesh_.boundaryMesh(); + for (const auto& pp : pbm) + { + if (pp.coupled()) + { + forAll(pp, i) + { + const label facei = pp.start()+i; + if (decomposeFace[facei]) + { + const label bFacei = pp.offset()+i; + const label n = + boundaryQuads[bFacei].size() + + boundaryTris[bFacei].size(); + + faceOwnerCells_[facei].setSize(n, -1); + faceNeighbourCells_[facei].setSize(n, -1); + } + } + } + } + + // Do all other faces + forAll(faceOwnerCells_, facei) + { + if (faceOwnerCells_[facei].empty()) + { + if (decomposeFace[facei]) + { + const face& f = mesh_.faces()[facei]; + + // Convention: quads first, followed by triangles + + label nTris = 0; + label nQuads = 0; + const label nSubFaces = f.nTrianglesQuads + ( + mesh_.points(), + nTris, + nQuads + ); + + faceOwnerCells_[facei].setSize(nSubFaces, -1); + faceNeighbourCells_[facei].setSize(nSubFaces, -1); + } + else + { + faceOwnerCells_[facei].setSize(1, -1); + faceNeighbourCells_[facei].setSize(1, -1); + } + } } } else @@ -345,7 +778,6 @@ void Foam::tetDecomposer::setRefinement forAll(cFaces, cFacei) { label facei = cFaces[cFacei]; - const face& f = mesh_.faces()[facei]; // Get reference to either owner or neighbour labelList& added = @@ -359,17 +791,17 @@ void Foam::tetDecomposer::setRefinement { if (decomposeType == FACE_CENTRE_TRIS) { - forAll(f, fp) + forAll(added, i) { if (!modifiedCell) { // Reuse cell itself - added[fp] = celli; + added[i] = celli; modifiedCell = true; } else { - added[fp] = meshMod.addCell + added[i] = meshMod.addCell ( -1, // masterPoint -1, // masterEdge @@ -380,19 +812,23 @@ void Foam::tetDecomposer::setRefinement } } } - else if (decomposeType == FACE_DIAG_TRIS) + else if + ( + decomposeType == FACE_DIAG_TRIS + || decomposeType == FACE_DIAG_QUADS + ) { - for (label triI = 0; triI < f.size()-2; triI++) + forAll(added, subi) { if (!modifiedCell) { // Reuse cell itself - added[triI] = celli; + added[subi] = celli; modifiedCell = true; } else { - added[triI] = meshMod.addCell + added[subi] = meshMod.addCell ( -1, // masterPoint -1, // masterEdge @@ -400,12 +836,6 @@ void Foam::tetDecomposer::setRefinement celli, // masterCell mesh_.cellZones().whichZone(celli) ); - //Pout<< "For cell:" << celli - // << " at:" << mesh_.cellCentres()[celli] - // << " face:" << facei - // << " at:" << mesh_.faceCentres()[facei] - // << " tri:" << triI - // << " added cell:" << added[triI] << endl; } } } @@ -413,6 +843,19 @@ void Foam::tetDecomposer::setRefinement { // Pyramidal decomposition. // Assign same cell to all slots + + if (added.size() != 1) + { + FatalErrorInFunction + << "For cell:" << celli + << " at:" << mesh_.cellCentres()[celli] + << " face:" << facei + << " at:" << mesh_.faceCentres()[facei] + << " added cells:" << added + << exit(FatalError); + } + + if (!modifiedCell) { // Reuse cell itself @@ -442,33 +885,36 @@ void Foam::tetDecomposer::setRefinement - // Add triangle faces + // Add split faces face triangle(3); forAll(mesh_.faces(), facei) { label own = mesh_.faceOwner()[facei]; - const labelList& addedOwn = faceOwnerCells_[facei]; - const labelList& addedNei = faceNeighbourCells_[facei]; + const auto& addedOwn = faceOwnerCells_[facei]; + const auto& addedNei = faceNeighbourCells_[facei]; const face& f = mesh_.faces()[facei]; + //const point& fc = mesh_.faceCentres()[facei]; + label nei = -1; label patchi = -1; if (facei >= mesh_.nInternalFaces()) { patchi = mesh_.boundaryMesh().whichPatch(facei); } + else + { + nei = mesh_.faceNeighbour()[facei]; + } - label zoneI = mesh_.faceZones().whichZone(facei); + label zonei = mesh_.faceZones().whichZone(facei); bool zoneFlip = false; - if (zoneI != -1) + if (zonei != -1) { - const faceZone& fz = mesh_.faceZones()[zoneI]; + const faceZone& fz = mesh_.faceZones()[zonei]; zoneFlip = fz.flipMap()[fz.whichFace(facei)]; } - //Pout<< "Face:" << facei << " at:" << mesh_.faceCentres()[facei] - // << endl; - if (decomposeType == FACE_CENTRE_TRIS && decomposeFace[facei]) { forAll(f, fp) @@ -480,12 +926,18 @@ void Foam::tetDecomposer::setRefinement triangle[1] = f[f.fcIndex(fp)]; triangle[2] = faceToPoint_[facei]; - //Pout<< " triangle:" << triangle - // << " points:" - // << UIndirectList<point>(meshMod.points(), triangle) - // << " between:" << addedOwn[fp] - // << " and:" << addedNei[fp] << endl; - + const label newOwn + ( + addedOwn.size() == 1 + ? addedOwn[0] + : addedOwn[fp] + ); + const label newNei + ( + addedNei.size() == 1 + ? addedNei[0] + : addedNei[fp] + ); if (fp == 0) { @@ -494,10 +946,10 @@ void Foam::tetDecomposer::setRefinement meshMod, triangle, facei, - addedOwn[fp], - addedNei[fp], + newOwn, + newNei, patchi, - zoneI, + zonei, zoneFlip ); } @@ -507,13 +959,14 @@ void Foam::tetDecomposer::setRefinement ( meshMod, triangle, - addedOwn[fp], - addedNei[fp], + facei, + newOwn, + newNei, -1, //point -1, //edge facei, //face patchi, - zoneI, + zonei, zoneFlip ); } @@ -534,6 +987,7 @@ void Foam::tetDecomposer::setRefinement ( meshMod, triangle, + facei, newOwn, newNei, f[fp], //point @@ -545,23 +999,20 @@ void Foam::tetDecomposer::setRefinement ); } // 2b. Within neighbour cell - to cell centre - if - ( - facei < mesh_.nInternalFaces() - && decomposeCell[mesh_.faceNeighbour()[facei]] - ) + if (facei < mesh_.nInternalFaces() && decomposeCell[nei]) { label newOwn = addedNei[f.rcIndex(fp)]; label newNei = addedNei[fp]; triangle[0] = f[fp]; triangle[1] = faceToPoint_[facei]; - triangle[2] = cellToPoint_[mesh_.faceNeighbour()[facei]]; + triangle[2] = cellToPoint_[nei]; addFace ( meshMod, triangle, + facei, newOwn, newNei, f[fp], //point @@ -579,9 +1030,9 @@ void Foam::tetDecomposer::setRefinement label fp0 = max(mesh_.tetBasePtIs()[facei], 0); label fp = f.fcIndex(fp0); - for (label triI = 0; triI < f.size()-2; triI++) + for (label trii = 0; trii < f.size()-2; trii++) { - label nextTri = triI+1; + label nextTri = trii+1; if (nextTri >= f.size()-2) { nextTri -= f.size()-2; @@ -589,27 +1040,40 @@ void Foam::tetDecomposer::setRefinement label nextFp = f.fcIndex(fp); - // Triangle triI consisiting of f[fp0], f[fp], f[nextFp] + // Triangle trii consisiting of f[fp0], f[fp], f[nextFp] // 1. Front triangle (decomposition of face itself) // (between owner and neighbour cell) { + const label newOwn + ( + addedOwn.size() == 1 + ? addedOwn[0] + : addedOwn[trii] + ); + const label newNei + ( + addedNei.size() == 1 + ? addedNei[0] + : addedNei[trii] + ); + triangle[0] = f[fp0]; triangle[1] = f[fp]; triangle[2] = f[nextFp]; - if (triI == 0) + if (trii == 0) { modifyFace ( meshMod, triangle, facei, - addedOwn[triI], - addedNei[triI], + newOwn, + newNei, patchi, - zoneI, + zonei, zoneFlip ); } @@ -619,13 +1083,14 @@ void Foam::tetDecomposer::setRefinement ( meshMod, triangle, - addedOwn[triI], - addedNei[triI], + facei, + newOwn, + newNei, -1, //point -1, //edge facei, //face patchi, - zoneI, + zonei, zoneFlip ); } @@ -633,11 +1098,11 @@ void Foam::tetDecomposer::setRefinement // 2. Within owner cell - diagonal to cell centre - if (triI < f.size()-3) + if (trii < f.size()-3) { if (decomposeCell[own]) { - label newOwn = addedOwn[triI]; + label newOwn = addedOwn[trii]; label newNei = addedOwn[nextTri]; triangle[0] = f[fp0]; @@ -648,6 +1113,7 @@ void Foam::tetDecomposer::setRefinement ( meshMod, triangle, + facei, newOwn, newNei, f[fp], //point @@ -660,24 +1126,20 @@ void Foam::tetDecomposer::setRefinement } // 2b. Within neighbour cell - to cell centre - if - ( - facei < mesh_.nInternalFaces() - && decomposeCell[mesh_.faceNeighbour()[facei]] - ) + if (facei < mesh_.nInternalFaces() && decomposeCell[nei]) { - label newOwn = addedNei[triI]; + label newOwn = addedNei[trii]; label newNei = addedNei[nextTri]; triangle[0] = f[nextFp]; triangle[1] = f[fp0]; - triangle[2] = - cellToPoint_[mesh_.faceNeighbour()[facei]]; + triangle[2] = cellToPoint_[nei]; addFace ( meshMod, triangle, + facei, newOwn, newNei, f[fp], //point @@ -694,6 +1156,175 @@ void Foam::tetDecomposer::setRefinement fp = nextFp; } } + else if (decomposeType == FACE_DIAG_QUADS && decomposeFace[facei]) + { + // Decompose face into subFaces (quads followed by any triangles) + splitFace + ( + boundaryQuads, + boundaryTris, + facei, + patchi, + quadFaces, // work space + triFaces, // work space + subFaces + ); + + EdgeMap<labelPair> edgeFaces(subFaces.size()); + + forAll(subFaces, subFacei) + { + const face& subF = subFaces[subFacei]; + + // 1. Front quad (decomposition of face itself) + // (between owner and neighbour cell) + { + const label newOwn + ( + addedOwn.size() == 1 + ? addedOwn[0] + : addedOwn[subFacei] + ); + const label newNei + ( + addedNei.size() == 1 + ? addedNei[0] + : addedNei[subFacei] + ); + + if (subFacei == 0) + { + modifyFace + ( + meshMod, + subF, + facei, + newOwn, + newNei, + patchi, + zonei, + zoneFlip + ); + } + else + { + addFace + ( + meshMod, + subF, + facei, + newOwn, + newNei, + -1, //point + -1, //edge + facei, //face + patchi, + zonei, + zoneFlip + ); + } + } + + // Populate edge-faces (note: in order of increasing subFacei + // and hence in order of added cells) + forAll(subF, fp) + { + const edge e(subF.edge(fp)); + auto eFnd = edgeFaces.find(e); + if (!eFnd) + { + edgeFaces.insert(e, labelPair(subFacei, -1)); + } + else + { + auto& eFaces = eFnd(); + if (eFaces[1] != -1) + { + FatalErrorInFunction << "edgeFaces:" << edgeFaces + << exit(FatalError); + } + eFaces[1] = subFacei; + } + } + } + + // Get diagonals + forAllConstIters(edgeFaces, iter) + { + const auto& e = iter.key(); + const auto& eFaces = iter(); + + if (eFaces.find(-1) != -1) + { + // Open edge + //Pout<< "for face:" << facei + // << " ignoring open edge:" << e << endl; + continue; + } + + if (decomposeCell[own]) + { + const label newOwn(addedOwn[eFaces[0]]); + const label newNei(addedOwn[eFaces[1]]); + + if (newNei < newOwn) FatalErrorInFunction << "problem" + << exit(FatalError); + + // Point out of owner side + triangle[0] = e[1]; + triangle[1] = e[0]; + triangle[2] = cellToPoint_[own]; + + addFace + ( + meshMod, + triangle, + facei, + newOwn, + newNei, + e[0], //point ? or edge ? or face ? + -1, //edge + -1, //face + -1, //patchi + -1, //zone + false + ); + } + + // 2b. Within neighbour cell - to cell centre + if + ( + facei < mesh_.nInternalFaces() + && decomposeCell[nei] + ) + { + const label newOwn(addedNei[eFaces[0]]); + const label newNei(addedNei[eFaces[1]]); + + if (newNei < newOwn) FatalErrorInFunction << "problem" + << exit(FatalError); + + triangle[0] = e[0]; + triangle[1] = e[1]; + triangle[2] = cellToPoint_[nei]; + + addFace + ( + meshMod, + triangle, + facei, + newOwn, + newNei, + e[0], //point ? or edge ? or face ? + -1, //edge + -1, //face + -1, //patchi + -1, //zone + false + ); + } + } + } else { // No decomposition. Use zero'th slot. @@ -705,31 +1336,32 @@ void Foam::tetDecomposer::setRefinement addedOwn[0], addedNei[0], patchi, - zoneI, + zonei, zoneFlip ); } } - - // Add triangles for all edges. + // Add triangles to the cell centre for all edges to form the pyramids EdgeMap<label> edgeToFace; forAll(mesh_.cells(), celli) { - const cell& cFaces = mesh_.cells()[celli]; - - edgeToFace.clear(); - - forAll(cFaces, cFacei) + if (decomposeCell[celli]) { - label facei = cFaces[cFacei]; + const cell& cFaces = mesh_.cells()[celli]; - if (decomposeCell[celli]) + edgeToFace.clear(); + + forAll(cFaces, cFacei) { + const label facei = cFaces[cFacei]; + const label patchi = mesh_.boundaryMesh().whichPatch(facei); const face& f = mesh_.faces()[facei]; - //const labelList& fEdges = mesh_.faceEdges()[facei]; + + // Loop over edges of face. Avoid constructing faceEdges for + // whole mesh. forAll(f, fp) { label p0 = f[fp]; @@ -782,79 +1414,173 @@ void Foam::tetDecomposer::setRefinement } // Determine tets on either side - label thisTet, otherTet; + + const auto& thisCells = + ( + (mesh_.faceOwner()[facei] == celli) + ? faceOwnerCells_[facei] + : faceNeighbourCells_[facei] + ); + const auto& otherCells = + ( + (mesh_.faceOwner()[otherFacei] == celli) + ? faceOwnerCells_[otherFacei] + : faceNeighbourCells_[otherFacei] + ); + + label thisTet = -1; + label otherTet = -1; if (decomposeType == FACE_CENTRE_TRIS) { - if (mesh_.faceOwner()[facei] == celli) + if (thisCells.size() == 1) { - thisTet = faceOwnerCells_[facei][fp]; + thisTet = thisCells[0]; } else { - thisTet = faceNeighbourCells_[facei][fp]; + thisTet = thisCells[fp]; } - if (mesh_.faceOwner()[otherFacei] == celli) + if (otherCells.size() == 1) { - otherTet = - faceOwnerCells_[otherFacei][otherFp]; + otherTet = otherCells[0]; } else { - otherTet = - faceNeighbourCells_[otherFacei][otherFp]; + otherTet = otherCells[otherFp]; } } else if (decomposeType == FACE_DIAG_TRIS) { - label thisTriI = triIndex(facei, fp); - if (mesh_.faceOwner()[facei] == celli) + if (thisCells.size() == 1) { - thisTet = faceOwnerCells_[facei][thisTriI]; + thisTet = thisCells[0]; } else { - thisTet = faceNeighbourCells_[facei][thisTriI]; + thisTet = thisCells[triIndex(facei, fp)]; } - label otherTriI = triIndex(otherFacei, otherFp); - if (mesh_.faceOwner()[otherFacei] == celli) + if (otherCells.size() == 1) { - otherTet = - faceOwnerCells_[otherFacei][otherTriI]; + otherTet = otherCells[0]; } else { otherTet = - faceNeighbourCells_[otherFacei][otherTriI]; + otherCells[triIndex(otherFacei, otherFp)]; } } - else + else if (decomposeType == FACE_DIAG_QUADS) { - if (mesh_.faceOwner()[facei] == celli) + // Get added cell on facei + if (thisCells.size() == 1) { - thisTet = faceOwnerCells_[facei][0]; + thisTet = thisCells[0]; } else { - thisTet = faceNeighbourCells_[facei][0]; + // We have not stored the face-split so + // don't know yet the correspondence. Maybe + // store to avoid re-doing split? + splitFace + ( + boundaryQuads, + boundaryTris, + facei, + patchi, + quadFaces, // work space + triFaces, // work space + subFaces + ); + + // Find the edge. Should be only on one of the + // subfaces. + forAll(subFaces, subFacei) + { + const auto& subF = subFaces[subFacei]; + if (subF.find(e) != -1) + { + thisTet = thisCells[subFacei]; + break; + } + } + if (thisTet == -1) + { + FatalErrorInFunction + << "For cell:" << celli + << " at:" << mesh_.cellCentres()[celli] + << " patch:" << patchi + << " face:" << facei + << " at:" << mesh_.faceCentres()[facei] + << " did not find edge:" << e + << " at:" << e.line(mesh_.points()) + << " in OWNER-side decomposed faces:" + << flatOutput(subFaces) + << exit(FatalError); + } } - if (mesh_.faceOwner()[otherFacei] == celli) + + + // Get added cell on otherFacei + if (otherCells.size() == 1) { - otherTet = faceOwnerCells_[otherFacei][0]; + otherTet = otherCells[0]; } else { - otherTet = - faceNeighbourCells_[otherFacei][0]; + splitFace + ( + boundaryQuads, + boundaryTris, + otherFacei, + mesh_.boundaryMesh().whichPatch(otherFacei), + quadFaces, // work space + triFaces, // work space + subFaces + ); + + // Find the edge. Should be only on one of the + // subfaces. + forAll(subFaces, subFacei) + { + const auto& subF = subFaces[subFacei]; + if (subF.find(e) != -1) + { + otherTet = otherCells[subFacei]; + break; + } + } + if (otherTet == -1) + { + FatalErrorInFunction + << "For cell:" << celli + << " at:" << mesh_.cellCentres()[celli] + << " patch:" + << mesh_.boundaryMesh().whichPatch(otherFacei) + << " face:" << otherFacei + << " at:" + << mesh_.faceCentres()[otherFacei] + << " did not find edge:" << e + << " at:" << e.line(mesh_.points()) + << " in decomposed faces:" + << flatOutput(subFaces) + << exit(FatalError); + } } } + else + { + thisTet = thisCells[0]; + otherTet = otherCells[0]; + } addFace ( meshMod, triangle, + facei, otherTet, thisTet, -1, //masterPoint diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.H b/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.H index cd53c03499c95f55a42f65b1416c16f078964216..215bf1fecbec5a0e57867baf8951baecce8e49a7 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.H +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/tetDecomposer.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2020,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,7 @@ Class Foam::tetDecomposer Description - Decomposes polyMesh into tets or pyramids. + Decomposes polyMesh into tets (or pyramids) Cells neighbouring decomposed cells are not decomposed themselves so will be polyhedral. @@ -46,6 +46,7 @@ SourceFiles #include "boolList.H" #include "typeInfo.H" #include "Enum.H" +#include "faceList.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -72,7 +73,8 @@ public: FACE_CENTRE_TRIS, //- Faces decomposed into triangles // using face-centre FACE_DIAG_TRIS, //- Faces decomposed into triangles diagonally - PYRAMID //- Faces not decomposed (generates pyramids) + PYRAMID, //- Faces not decomposed (generates pyramids) + FACE_DIAG_QUADS //- Like FACE_DIAG_TRIS but does quads mainly }; static const Enum<decompositionType> decompositionTypeNames; @@ -89,7 +91,6 @@ private: //- From face to tet point labelList faceToPoint_; - // Per face, per point (faceCentre) or triangle (faceDiag) // the added tet on the owner side labelListList faceOwnerCells_; @@ -119,6 +120,7 @@ private: ( polyTopoChange& meshMod, const face& f, + const label facei, const label own, const label nei, const label masterPointID, @@ -132,6 +134,46 @@ private: //- Work out triangle index given the starting vertex in the face label triIndex(const label facei, const label fp) const; + //- Calculate triangulation of boundary faces + void splitBoundaryFaces + ( + List<faceList>& boundaryQuads, + List<faceList>& boundaryTris + ) const; + + //- Correct coupled faces to match up + void relativeIndicesToFace + ( + const bool doFlip, + const face& meshFace, + const faceList& indexLists, + faceList& faces + ) const; + + //- Calculate triangulation of any face + void splitFace + ( + const List<faceList>& boundaryQuads, + const List<faceList>& boundaryTris, + const label facei, + const label patchi, + label& quadi, + faceList& quadFaces, + label& trii, + faceList& triFaces + ) const; + + void splitFace + ( + const List<faceList>& boundaryQuads, + const List<faceList>& boundaryTris, + const label facei, + const label patchi, + faceList& quadFaces, + faceList& triFaces, + faceList& subFaces + ) const; + //- No copy construct tetDecomposer(const tetDecomposer&) = delete; @@ -188,11 +230,22 @@ public: // Edit //- Insert all changes into meshMod to convert the polyMesh into - // tets. + // subshapes (tets/prisms) + void setRefinement + ( + const decompositionType decomposeType, + const bitSet& decomposeCell, + polyTopoChange& meshMod + ); + + //- Insert all changes into meshMod to convert the polyMesh into + //- subshapes (tets/prisms). Explicit control over which faces + //- get decomposed. Can be used e.g. to not split triangles. void setRefinement ( const decompositionType decomposeType, const bitSet& decomposeCell, + const bitSet& decomposeFace, polyTopoChange& meshMod ); diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C index 022de1d90db2fa53fc1212a4ca3f59c653381be9..bae650eadaaf4333e95bdfe17397b7ae1a9b4b0a 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,7 +42,7 @@ namespace Foam // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -bool Foam::polyTopoChanger::readContents() +bool Foam::polyTopoChanger::readIOcontents() { if (isReadRequired() || (isReadOptional() && headerOk())) { @@ -93,7 +93,7 @@ Foam::polyTopoChanger::polyTopoChanger // Warn for MUST_READ_IF_MODIFIED warnNoRereading<polyTopoChanger>(); - readContents(); + readIOcontents(); } diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.H b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.H index 8ed5efdda1bbdd29d5bb97952b663b3227ba6cc9..d930b56563e32ebbe8b97c089fb005b4c50f60a4 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.H +++ b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -68,7 +68,7 @@ class polyTopoChanger // Private Member Functions //- Read if IOobject flags set, set modifiers. Return true if read. - bool readContents(); + bool readIOcontents(); //- No copy construct polyTopoChanger(const polyTopoChanger&) = delete; diff --git a/src/dynamicMesh/setUpdater/setUpdaterTemplates.C b/src/dynamicMesh/setUpdater/setUpdaterTemplates.C index d1f7ade2b2cbf11657b0814f5b38f7c85335a829..f01feda9ad297a0cbb09185038cff96733f06fd3 100644 --- a/src/dynamicMesh/setUpdater/setUpdaterTemplates.C +++ b/src/dynamicMesh/setUpdater/setUpdaterTemplates.C @@ -41,6 +41,10 @@ void Foam::setUpdater::updateSets(const mapPolyMesh& map) // Update all sets in memory // + // Note: objectRegistry::lookupClass() instead of + // objectRegistry::csorted() since it is also used to check + // contains() in the next bit of code + const HashTable<const SetType*> sets ( map.mesh().objectRegistry::lookupClass<const SetType>() diff --git a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatch.C b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatch.C index e3b7833bbdee4440578b3a47ba32f2fa11574e1c..05e9d45beb51a68fc0ec5fc48046606696ebcea2 100644 --- a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatch.C +++ b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,6 +29,7 @@ License #include "enrichedPatch.H" #include "OFstream.H" #include "meshTools.H" +#include "ListOps.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -65,12 +66,8 @@ void Foam::enrichedPatch::calcLocalFaces() const // Invert mesh points and renumber faces using it const labelList& mp = meshPoints(); - Map<label> mpLookup(2*mp.size()); + Map<label> mpLookup(invertToMap(mp)); - forAll(mp, mpi) - { - mpLookup.insert(mp[mpi], mpi); - } // Create local faces. // Copy original faces and overwrite vertices after @@ -82,10 +79,7 @@ void Foam::enrichedPatch::calcLocalFaces() const for (face& f : locFaces) { - for (label& pointi : f) - { - pointi = *(mpLookup.cfind(pointi)); - } + inplaceRenumber(mpLookup, f); } } diff --git a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C index a5b63a7ca90c259f3acb8a39b40ed5a484066c18..2d6bedee3aef7afe7a3e90b5a393ddf23cdc7c71 100644 --- a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C +++ b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C @@ -90,28 +90,28 @@ void Foam::fvMotionSolverEngineMesh::move() motionSolver_.solve(); - if (engineDB_.foundObject<surfaceScalarField>("phi")) - { - surfaceScalarField& phi = - engineDB_.lookupObjectRef<surfaceScalarField>("phi"); - const volScalarField& rho = - engineDB_.lookupObject<volScalarField>("rho"); + auto* phiPtr = engineDB_.getObjectPtr<surfaceScalarField>("phi"); + + if (phiPtr) + { + auto& phi = *phiPtr; - const volVectorField& U = - engineDB_.lookupObject<volVectorField>("U"); + const auto& rho = engineDB_.lookupObject<volScalarField>("rho"); + const auto& U = engineDB_.lookupObject<volVectorField>("U"); - bool absolutePhi = false; - if (moving()) + const bool absolutePhi = moving(); + if (absolutePhi) { + // cf. fvc::makeAbsolute phi += fvc::interpolate(rho)*fvc::meshPhi(rho, U); - absolutePhi = true; } movePoints(motionSolver_.curPoints()); if (absolutePhi) { + // cf. fvc::makeRelative phi -= fvc::interpolate(rho)*fvc::meshPhi(rho, U); } } diff --git a/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C b/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C index 753285b438f77ac5855d86d1dd76ef37952e12e4..31575e631b38d030f35132c2e28624af718d6369 100644 --- a/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C +++ b/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C @@ -85,28 +85,28 @@ void Foam::layeredEngineMesh::move() } } - if (engineDB_.foundObject<surfaceScalarField>("phi")) - { - surfaceScalarField& phi = - engineDB_.lookupObjectRef<surfaceScalarField>("phi"); - const volScalarField& rho = - engineDB_.lookupObject<volScalarField>("rho"); + auto* phiPtr = engineDB_.getObjectPtr<surfaceScalarField>("phi"); + + if (phiPtr) + { + auto& phi = *phiPtr; - const volVectorField& U = - engineDB_.lookupObject<volVectorField>("U"); + const auto& rho = engineDB_.lookupObject<volScalarField>("rho"); + const auto& U = engineDB_.lookupObject<volVectorField>("U"); - bool absolutePhi = false; - if (moving()) + const bool absolutePhi = moving(); + if (absolutePhi) { + // cf. fvc::makeAbsolute phi += fvc::interpolate(rho)*fvc::meshPhi(rho, U); - absolutePhi = true; } movePoints(newPoints); if (absolutePhi) { + // cf. fvc::makeRelative phi -= fvc::interpolate(rho)*fvc::meshPhi(rho, U); } } diff --git a/src/engine/engineTime/freePiston/freePiston.C b/src/engine/engineTime/freePiston/freePiston.C index ff490dcf110d51966d268aca092fe25e9413b55a..e29ae83c5b8f6bff2bfafba59d3795b01fa037fc 100644 --- a/src/engine/engineTime/freePiston/freePiston.C +++ b/src/engine/engineTime/freePiston/freePiston.C @@ -59,7 +59,7 @@ Foam::freePiston::freePiston ), pistonPositionTime_ ( - Function1<scalar>::New("pistonPositionTime", dict_) + Function1<scalar>::New("pistonPositionTime", dict_, &db()) ) {} diff --git a/src/faOptions/faOption/faOptionListTemplates.C b/src/faOptions/faOption/faOptionListTemplates.C index b71f49588007f30fb80ab31f06db1faafeffb6d6..ab68dfd555246fdd086fa92c81ad2a3c3ed424df 100644 --- a/src/faOptions/faOption/faOptionListTemplates.C +++ b/src/faOptions/faOption/faOptionListTemplates.C @@ -41,8 +41,8 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::source { checkApplied(); - tmp<faMatrix<Type>> tmtx(new faMatrix<Type>(field, ds)); - faMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<faMatrix<Type>>::New(field, ds); + auto& mtx = tmtx.ref(); for (fa::option& source : *this) { @@ -50,7 +50,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::source if (fieldi != -1) { - addProfiling(faopt, "faOption()." + source.name()); + addProfiling(faopt, "faOption().", source.name()); source.setApplied(fieldi); @@ -132,8 +132,8 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::operator() rho.dimensions()*field.dimensions()/dimTime*dimArea ); - tmp<faMatrix<Type>> tmtx(new faMatrix<Type>(field, ds)); - faMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<faMatrix<Type>>::New(field, ds); + auto& mtx = tmtx.ref(); for (fa::option& source : *this) { @@ -141,7 +141,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::operator() if (fieldi != -1) { - addProfiling(faopt, "faOption()." + source.name()); + addProfiling(faopt, "faOption().", source.name()); source.setApplied(fieldi); @@ -184,8 +184,8 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::operator() const dimensionSet dsMat(ds*dimArea); - tmp<faMatrix<Type>> tmtx(new faMatrix<Type>(field, dsMat)); - faMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<faMatrix<Type>>::New(field, dsMat); + auto& mtx = tmtx.ref(); for (fa::option& source : *this) { @@ -193,7 +193,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::fa::optionList::operator() if (fieldi != -1) { - addProfiling(faopt, "faOption()." + source.name()); + addProfiling(faopt, "faOption().", source.name()); source.setApplied(fieldi); @@ -256,7 +256,7 @@ void Foam::fa::optionList::constrain(faMatrix<Type>& eqn) if (fieldi != -1) { - addProfiling(faopt, "faOption::constrain." + eqn.psi().name()); + addProfiling(faopt, "faOption::constrain.", eqn.psi().name()); source.setApplied(fieldi); @@ -299,7 +299,7 @@ void Foam::fa::optionList::correct if (fieldi != -1) { - addProfiling(faopt, "faOption::correct." + source.name()); + addProfiling(faopt, "faOption::correct.", source.name()); source.setApplied(fieldi); diff --git a/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C b/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C index 051cd3d7b89c85c7de20ddf80d3785949b1e06cb..5921e788fcfe3c8265946a6edd7972ec0a84b726 100644 --- a/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C +++ b/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C @@ -58,11 +58,12 @@ Foam::fa::jouleHeatingSource::jouleHeatingSource ( IOobject ( - typeName + ":V_" + regionName_, + IOobject::scopedName(typeName, "V_" + regionName_), regionMesh().thisDb().time().timeName(), regionMesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), regionMesh() ), @@ -141,6 +142,11 @@ void Foam::fa::jouleHeatingSource::addSup } // Add the Joule heating contribution + const word sigmaName + ( + IOobject::scopedName(typeName, "sigma_" + regionName_) + ); + areaVectorField gradV("gradV", fac::grad(V_)); if (debug > 1 && mesh().time().writeTime()) @@ -156,20 +162,14 @@ void Foam::fa::jouleHeatingSource::addSup if (anisotropicElectricalConductivity_) { const auto& sigma = - obr.lookupObject<areaTensorField> - ( - typeName + ":sigma_" + regionName_ - ); + obr.lookupObject<areaTensorField>(sigmaName); tsource = (h*sigma & gradV) & gradV; } else { const auto& sigma = - obr.lookupObject<areaScalarField> - ( - typeName + ":sigma_" + regionName_ - ); + obr.lookupObject<areaScalarField>(sigmaName); tsource = (h*sigma*gradV) & gradV; } diff --git a/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C b/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C index a59bdc65acb054dd2ad604c5763fde542cf27eda..351b5146544ceac2c0fc689e140f1154f356d315 100644 --- a/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C +++ b/src/faOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,54 +36,52 @@ void Foam::fa::jouleHeatingSource::initialiseSigma autoPtr<Function1<Type>>& sigmaVsTPtr ) { - typedef GeometricField<Type, faPatchField, areaMesh> AreaFieldType; + typedef GeometricField<Type, faPatchField, areaMesh> FieldType; auto& obr = regionMesh().thisDb(); + IOobject io + ( + IOobject::scopedName(typeName, "sigma_" + regionName_), + obr.time().timeName(), + obr, + IOobject::NO_READ, + IOobject::AUTO_WRITE, + IOobject::REGISTER + ); + + autoPtr<FieldType> tsigma; + if (dict.found("sigma")) { // Sigma to be defined using a Function1 type sigmaVsTPtr = Function1<Type>::New("sigma", dict, &mesh_); - auto tsigma = tmp<AreaFieldType>::New + tsigma.reset ( - IOobject + new FieldType ( - typeName + ":sigma_" + regionName_, - obr.time().timeName(), - obr, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - regionMesh(), - dimensioned<Type>(sqr(dimCurrent)/dimPower/dimLength, Zero) + io, + regionMesh(), + Foam::zero{}, // value + sqr(dimCurrent)/dimPower/dimLength + ) ); - regIOobject::store(tsigma.ptr()); - Info<< " Conductivity 'sigma' read from dictionary as f(T)" << nl << endl; } else { // Sigma to be defined by user input - auto tsigma = tmp<AreaFieldType>::New - ( - IOobject - ( - typeName + ":sigma_" + regionName_, - obr.time().timeName(), - obr, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - regionMesh() - ); + io.readOpt(IOobject::MUST_READ); - regIOobject::store(tsigma.ptr()); + tsigma.reset(new FieldType(io, regionMesh())); Info<< " Conductivity 'sigma' read from file" << nl << endl; } + + regIOobject::store(tsigma); } @@ -94,12 +92,15 @@ Foam::fa::jouleHeatingSource::updateSigma const autoPtr<Function1<Type>>& sigmaVsTPtr ) const { - typedef GeometricField<Type, faPatchField, areaMesh> AreaFieldType; + typedef GeometricField<Type, faPatchField, areaMesh> FieldType; const auto& obr = regionMesh().thisDb(); auto& sigma = - obr.lookupObjectRef<AreaFieldType>(typeName + ":sigma_" + regionName_); + obr.lookupObjectRef<FieldType> + ( + IOobject::scopedName(typeName, "sigma_" + regionName_) + ); if (!sigmaVsTPtr) { @@ -117,11 +118,11 @@ Foam::fa::jouleHeatingSource::updateSigma // Boundary field - typename AreaFieldType::Boundary& bf = sigma.boundaryFieldRef(); + auto& bf = sigma.boundaryFieldRef(); forAll(bf, patchi) { faPatchField<Type>& pf = bf[patchi]; - if (!isA<emptyFaPatch>(bf[patchi])) + if (!isA<emptyFaPatch>(pf)) { const scalarField& Tbf = T.boundaryField()[patchi]; forAll(pf, facei) diff --git a/src/fileFormats/common/manifoldCellsMeshObject.C b/src/fileFormats/common/manifoldCellsMeshObject.C index 3810334129924f737ef4dbf2f416128cad0f4ecb..8bc6714bffa15b99049378ce3c6f9d937145bebc 100644 --- a/src/fileFormats/common/manifoldCellsMeshObject.C +++ b/src/fileFormats/common/manifoldCellsMeshObject.C @@ -166,7 +166,7 @@ Foam::refPtr<Foam::cellList> Foam::manifoldCellsMeshObject::filter Foam::manifoldCellsMeshObject::manifoldCellsMeshObject(const polyMesh& mesh) : - MeshObject<polyMesh, UpdateableMeshObject, manifoldCellsMeshObject>(mesh), + MeshObject_type(mesh), cellsPtr_(nullptr), nCorrected_(-1) {} diff --git a/src/fileFormats/common/manifoldCellsMeshObject.H b/src/fileFormats/common/manifoldCellsMeshObject.H index b063576102dfc7f301280c7420f278329e232bbf..57aebd52b24c9cf4ec921170f57feaf7a1eb83ca 100644 --- a/src/fileFormats/common/manifoldCellsMeshObject.H +++ b/src/fileFormats/common/manifoldCellsMeshObject.H @@ -55,6 +55,16 @@ class manifoldCellsMeshObject : public MeshObject<polyMesh, UpdateableMeshObject, manifoldCellsMeshObject> { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + UpdateableMeshObject, + manifoldCellsMeshObject + > MeshObject_type; + + // Private Data //- The adjusted cells list @@ -90,7 +100,7 @@ public: // Constructors //- Construct from mesh - manifoldCellsMeshObject(const polyMesh& mesh); + explicit manifoldCellsMeshObject(const polyMesh& mesh); //- Destructor diff --git a/src/fileFormats/ensight/file/ensightCase.C b/src/fileFormats/ensight/file/ensightCase.C index 648ae075f788f1e1865fbf0360893db5b5813e1e..58e38f2119cab2211f55c65a6eae7b603ee5e667 100644 --- a/src/fileFormats/ensight/file/ensightCase.C +++ b/src/fileFormats/ensight/file/ensightCase.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "ensightCase.H" -#include "ensightGeoFile.H" #include "Time.H" #include "cloud.H" #include "IOmanip.H" @@ -42,15 +41,26 @@ const char* Foam::ensightCase::geometryName = "geometry"; // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // -Foam::word Foam::ensightCase::padded(const int nwidth, const label value) +Foam::word Foam::ensightCase::mask(const int nwidth) { if (nwidth < 1) { - return Foam::name(value); + return word(); + } + + return word(std::string(nwidth, '*'), false); // stripping=false +} + + +Foam::word Foam::ensightCase::padded(const int nwidth, const label index) +{ + if (nwidth < 1) + { + return Foam::name(index); } std::ostringstream oss; - oss << std::setfill('0') << std::setw(nwidth) << value; + oss << std::setfill('0') << std::setw(nwidth) << index; return word(oss.str(), false); // stripping=false } @@ -230,7 +240,7 @@ void Foam::ensightCase::initialize() // eg, convert new results or a particular time interval // OR remove everything - if (isDir(ensightDir_)) + if (Foam::isDir(ensightDir_)) { if (options_->overwrite()) { @@ -245,7 +255,7 @@ void Foam::ensightCase::initialize() } // Create ensight and data directories - mkDir(dataDir()); + Foam::mkDir(dataDir()); // The case file is always ASCII os_.reset(new OFstream(ensightDir_/caseName_, IOstreamOption::ASCII)); @@ -508,7 +518,7 @@ Foam::ensightCase::createDataFile // Note that data/ITER is indeed a valid ensight::FileName const fileName outdir = dataDir()/padded(timeIndex_); - mkDir(outdir); + Foam::mkDir(outdir); return autoPtr<ensightFile>::New(outdir, name, format()); } @@ -537,7 +547,7 @@ Foam::ensightCase::createCloudFile : (dataDir() / padded(timeIndex_) / cloud::prefix / cloudName) ); - mkDir(outdir); // should be unnecessary after newCloud() + Foam::mkDir(outdir); // should be unnecessary after newCloud() return autoPtr<ensightFile>::New(outdir, name, format()); } @@ -561,13 +571,7 @@ Foam::ensightCase::ensightCase caseName_(caseName + ".case"), changed_(false), timeIndex_(0), - timeValue_(0), - timesUsed_(), - geomTimes_(), - cloudTimes_(), - variables_(), - nodeVariables_(), - cloudVars_() + timeValue_(0) { initialize(); } @@ -586,13 +590,7 @@ Foam::ensightCase::ensightCase caseName_(caseName + ".case"), changed_(false), timeIndex_(0), - timeValue_(0), - timesUsed_(), - geomTimes_(), - cloudTimes_(), - variables_(), - nodeVariables_(), - cloudVars_() + timeValue_(0) { initialize(); } @@ -624,7 +622,7 @@ void Foam::ensightCase::setTime(const scalar value, const label index) // Note that data/ITER is indeed a valid ensight::FileName const fileName outdir = dataDir()/padded(timeIndex_); - mkDir(outdir); + Foam::mkDir(outdir); // place a timestamp in the directory for future reference OFstream timeStamp(outdir/"time"); @@ -842,7 +840,7 @@ Foam::ensightCase::newGeometry bool moving ) const { - autoPtr<Foam::ensightGeoFile> output; + autoPtr<ensightGeoFile> filePtr; if (UPstream::master()) { @@ -859,14 +857,16 @@ Foam::ensightCase::newGeometry // Static mesh: write as "data/constant/geometry" path = dataDir()/word("constant"); } - mkDir(path); + Foam::mkDir(path); noteGeometry(moving); // note for later use - return autoPtr<ensightGeoFile>::New(path, geometryName, format()); + filePtr.reset(new ensightGeoFile(path, geometryName, format())); + + // Before 2024-05 also implicitly called beginGeometry() } - return nullptr; + return filePtr; } @@ -876,23 +876,24 @@ Foam::ensightCase::newCloud const word& cloudName ) const { - autoPtr<Foam::ensightFile> output; + autoPtr<ensightFile> filePtr; if (UPstream::master()) { - output = createCloudFile(cloudName, "positions"); + filePtr = createCloudFile(cloudName, "positions"); + auto& os = filePtr(); // Tag binary format (just like geometry files) - output().writeBinaryHeader(); + os.writeBinaryHeader(); // Description - output().write(cloud::prefix/cloudName); - output().newline(); + os.write(cloud::prefix/cloudName); + os.newline(); noteCloud(cloudName); // note for later use } - return output; + return filePtr; } diff --git a/src/fileFormats/ensight/file/ensightCase.H b/src/fileFormats/ensight/file/ensightCase.H index 185e59dcfbb9901cd5e7ea36fd21bf721350de30..e07601d9548f3b95346c930aa6070f4079ea723b 100644 --- a/src/fileFormats/ensight/file/ensightCase.H +++ b/src/fileFormats/ensight/file/ensightCase.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,13 +42,11 @@ SourceFiles #define Foam_ensightCase_H #include "autoPtr.H" -#include "HashSet.H" #include "InfoProxy.H" -#include "Map.H" #include "HashSet.H" +#include "Map.H" #include "Pstream.H" #include "ensightGeoFile.H" -#include <memory> // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -195,6 +193,10 @@ private: ) const; +public: + + // Generated Methods + //- No copy construct ensightCase(const ensightCase&) = delete; @@ -202,8 +204,6 @@ private: void operator=(const ensightCase&) = delete; -public: - // Constructors //- Construct from components @@ -229,8 +229,19 @@ public: // Static Functions - //- Stringified zero-padded integer value - static word padded(const int nwidth, const label value); + //- A '*' mask of specified width + static word mask(const int nwidth); + + //- Stringified zero-padded integer value of specified width + static word padded(const int nwidth, const label index); + + //- Replace the '*' mask chars with zero-padded integer value + template<class StringType> + static StringType expand_mask + ( + const StringType& input, + const label index + ); // Member Functions @@ -285,6 +296,7 @@ public: // Addition of entries to case file //- Open stream for new geometry file (on master). + //- Does not include beginGeometry() marker. autoPtr<ensightGeoFile> newGeometry(bool moving = false) const; //- Open stream for new cloud positions (on master). diff --git a/src/fileFormats/ensight/file/ensightCaseI.H b/src/fileFormats/ensight/file/ensightCaseI.H index 9008c1bde2f816fa4f9fe766b172109d4a98f27c..f11604169111c5b8c5f651a1ca4b4ad30214ffcd 100644 --- a/src/fileFormats/ensight/file/ensightCaseI.H +++ b/src/fileFormats/ensight/file/ensightCaseI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -73,7 +73,7 @@ inline bool Foam::ensightCase::separateCloud() const inline Foam::Ostream& Foam::ensightCase::operator()() const { - return *os_; + return (os_ ? *os_ : Foam::Snull); } diff --git a/src/fileFormats/ensight/file/ensightCaseTemplates.C b/src/fileFormats/ensight/file/ensightCaseTemplates.C index 8b1105ead66668d87c1ec0827fd0467354dbac2e..8bd3fe5e8425e650e69d1f6fc7e2d8c7338add51 100644 --- a/src/fileFormats/ensight/file/ensightCaseTemplates.C +++ b/src/fileFormats/ensight/file/ensightCaseTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,6 +28,35 @@ License #include "cloud.H" #include "ensightPTraits.H" +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +template<class StringType> +StringType Foam::ensightCase::expand_mask +( + const StringType& input, + const label timeIndex +) +{ + StringType result(input); + + const auto nMask = std::count(input.begin(), input.end(), '*'); + + // If there are any '*' chars, they are assumed to be contiguous + // Eg, data/******/geometry + + if (nMask) + { + result.replace + ( + ensightCase::mask(nMask), + ensightCase::padded(nMask, timeIndex) + ); + } + + return result; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/fileFormats/ensight/file/ensightFile.C b/src/fileFormats/ensight/file/ensightFile.C index dca789e4c15d0f4a59757cb466a1b0ffbd90fec7..b1d477881d4e5a30fd20d68d5145ac10eb3aecfd 100644 --- a/src/fileFormats/ensight/file/ensightFile.C +++ b/src/fileFormats/ensight/file/ensightFile.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,6 +27,7 @@ License \*---------------------------------------------------------------------------*/ #include "ensightFile.H" +#include "ensightReadFile.H" #include "error.H" #include "List.H" #include <cstring> @@ -41,6 +42,37 @@ float Foam::ensightFile::undefValue_ = Foam::floatScalarVGREAT; const char* const Foam::ensightFile::coordinates = "coordinates"; +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // + +namespace Foam +{ + +// Put integers, floats etc in binary or ascii. +template<class Type> +static inline void putPrimitive +( + const Type& value, + OFstream& os, + const int fieldWidth +) +{ + auto& oss = os.stdStream(); + + if (os.format() == IOstreamOption::BINARY) + { + oss.write(reinterpret_cast<const char*>(&value), sizeof(Type)); + } + else + { + oss.width(fieldWidth); + oss << value; + } + os.syncState(); +} + +} // End namespace Foam + + // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // bool Foam::ensightFile::hasUndef(const UList<float>& field) @@ -82,6 +114,51 @@ void Foam::ensightFile::init() std::ios_base::floatfield ); precision(5); + + // Handle transient single-file timestep information + auto& oss = OFstream::stdStream(); + + if (OFstream::is_appending()) + { + // Already positioned at the EOF (in append mode), but be certain + oss.seekp(0, std::ios_base::end); + origFileSize_ = oss.tellp(); + } + else + { + origFileSize_ = 0; + } + + int64_t begin_footer(-1); + List<int64_t> offsets; + + if (OFstream::is_appending()) + { + // Temporarily open for reading as well. + // No race condition since no writing is done concurrently with the + // reading + IFstream is(OFstream::name(), OFstream::format()); + + begin_footer = + ensightReadFile::getTimeStepFooter + ( + is, + offsets + ); + } + + timeStepOffsets_ = std::move(offsets); + + if (OFstream::is_appending() && begin_footer > 0) + { + oss.seekp(begin_footer); + OFstream::syncState(); + } + + // InfoErr << "output at: " << label(begin_footer) << nl; + // InfoErr + // << "footer: " << label(begin_footer) + // << " time-steps: " << offsets.size() << nl; } @@ -89,11 +166,30 @@ void Foam::ensightFile::init() Foam::ensightFile::ensightFile ( + std::nullptr_t, // dispatch tag + IOstreamOption::appendType append, const fileName& pathname, IOstreamOption::streamFormat fmt ) : - OFstream(IOstreamOption::ATOMIC, ensight::FileName(pathname), fmt) + OFstream + ( + ( + // Only use atomic when not appending + (append == IOstreamOption::NO_APPEND) + ? IOstreamOption::ATOMIC + : IOstreamOption::NON_ATOMIC + ), + pathname, + fmt, + ( + // Change APPEND_APP -> APPEND_ATE (file rewriting) + (append == IOstreamOption::APPEND_APP) + ? IOstreamOption::APPEND_ATE + : append + ) + ), + origFileSize_(0) { init(); } @@ -101,14 +197,44 @@ Foam::ensightFile::ensightFile Foam::ensightFile::ensightFile ( + IOstreamOption::appendType append, + const fileName& pathname, + IOstreamOption::streamFormat fmt +) +: + ensightFile + ( + nullptr, + append, + ensight::FileName(pathname), + fmt + ) +{} + + +Foam::ensightFile::ensightFile +( + IOstreamOption::appendType append, const fileName& path, const fileName& name, IOstreamOption::streamFormat fmt ) : - OFstream(IOstreamOption::ATOMIC, path/ensight::FileName(name), fmt) + ensightFile + ( + nullptr, + append, + path/ensight::FileName(name), + fmt + ) +{} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +Foam::ensightFile::~ensightFile() { - init(); + (void) writeTimeStepFooter(); } @@ -158,9 +284,11 @@ void Foam::ensightFile::writeString(const char* str, size_t len) std::copy_n(str, len, buf); std::fill_n(buf + len, (80 - len), '\0'); // Pad trailing with nul + auto& oss = stdStream(); + if (format() == IOstreamOption::BINARY) { - write(buf, 80); + oss.write(buf, 80); } else { @@ -170,9 +298,10 @@ void Foam::ensightFile::writeString(const char* str, size_t len) // char* p = ::strchr(buf, '\n'); // if (p) *p = 0; - stdStream() << buf; - syncState(); + oss << buf; } + + syncState(); } @@ -209,6 +338,7 @@ Foam::Ostream& Foam::ensightFile::write(const std::string& str) } +// Same as OFstream::writeRaw(buf, count) Foam::Ostream& Foam::ensightFile::write ( const char* buf, @@ -221,80 +351,57 @@ Foam::Ostream& Foam::ensightFile::write } -Foam::Ostream& Foam::ensightFile::write(const int32_t val) +void Foam::ensightFile::writeInt(const int32_t val, const int fieldWidth) { - if (format() == IOstreamOption::BINARY) - { - write - ( - reinterpret_cast<const char *>(&val), - sizeof(int32_t) - ); - } - else - { - stdStream().width(10); - stdStream() << val; - syncState(); - } + putPrimitive<int32_t>(val, *this, fieldWidth); +} - return *this; + +void Foam::ensightFile::writeInt(const int64_t val, const int fieldWidth) +{ + putPrimitive<int32_t>(narrowInt32(val), *this, fieldWidth); } -Foam::Ostream& Foam::ensightFile::write(const int64_t val) +void Foam::ensightFile::writeFloat(const float val, const int fieldWidth) { - int32_t ivalue(narrowInt32(val)); + putPrimitive<float>(val, *this, fieldWidth); +} + - return write(ivalue); +void Foam::ensightFile::writeFloat(const double val, const int fieldWidth) +{ + putPrimitive<float>(narrowFloat(val), *this, fieldWidth); } -Foam::Ostream& Foam::ensightFile::write(const float val) +Foam::Ostream& Foam::ensightFile::write(const int32_t val) { - if (format() == IOstreamOption::BINARY) - { - write - ( - reinterpret_cast<const char *>(&val), - sizeof(float) - ); - } - else - { - stdStream().width(12); - stdStream() << val; - syncState(); - } + putPrimitive<int32_t>(val, *this, 10); return *this; } -Foam::Ostream& Foam::ensightFile::write(const double val) +Foam::Ostream& Foam::ensightFile::write(const int64_t val) { - float fvalue(narrowFloat(val)); + putPrimitive<int32_t>(narrowInt32(val), *this, 10); - return write(fvalue); + return *this; } -Foam::Ostream& Foam::ensightFile::write -( - const label value, - const label fieldWidth -) +Foam::Ostream& Foam::ensightFile::write(const float val) { - if (format() == IOstreamOption::BINARY) - { - write(value); - } - else - { - stdStream().width(fieldWidth); - stdStream() << value; - syncState(); - } + putPrimitive<float>(val, *this, 12); + + return *this; +} + + +Foam::Ostream& Foam::ensightFile::write(const double val) +{ + putPrimitive<float>(narrowFloat(val), *this, 12); return *this; } @@ -304,8 +411,7 @@ void Foam::ensightFile::newline() { if (format() == IOstreamOption::ASCII) { - stdStream() << nl; - syncState(); + OFstream::write('\n'); } } @@ -340,28 +446,124 @@ void Foam::ensightFile::writeBinaryHeader() if (format() == IOstreamOption::BINARY) { writeString("C Binary"); - // Is binary: newline() is a no-op + // newline(); // A no-op in binary } } -void Foam::ensightFile::beginTimeStep() +// Footer information looks like this +// +/* |---------------|---------------|-----------------------| + * | ASCII | BINARY | element | + * |---------------|---------------|-----------------------| + * | "%20lld\n" | int32 | nSteps | + * | "%20lld\n" | int64 | offset step 1 | + * | "%20lld\n" | int64 | offset step 2 | + * | "%20lld\n" | .. | | + * | "%20lld\n" | int64 | offset step n | + * | "%20lld\n" | int32 | flag (unused) | + * | "%20lld\n" | int64 | offset to nSteps | + * | "%s\n" | char[80] | 'FILE_INDEX' | + * |---------------|---------------|-----------------------| + */ + +int64_t Foam::ensightFile::writeTimeStepFooter() +{ + if (timeStepOffsets_.empty()) + { + return -1; + } + + auto& oss = OFstream::stdStream(); + + // The footer begin, which is also the current position + const int64_t footer_begin(oss.tellp()); + + // nSteps + putPrimitive<int32_t>(int32_t(timeStepOffsets_.size()), *this, 20); + newline(); + + // offset step 1, 2, ... N + for (int64_t off : timeStepOffsets_) + { + putPrimitive<int64_t>(off, *this, 20); + newline(); + } + + // flag (unused) + putPrimitive<int32_t>(0, *this, 20); + newline(); + + // The footer begin == position of nSteps + putPrimitive<int64_t>(footer_begin, *this, 20); + newline(); + + // FILE_INDEX is "%s\n", not "%79s\n" + // but our ASCII strings are truncated (nul-padded) anyhow + + writeString("FILE_INDEX"); + newline(); + + // Reposition to begin of footer so that any subsequent output + // will overwrite the footer too + oss.seekp(footer_begin); + + return footer_begin; +} + + +// +// Convenience Output Methods +// + +int64_t Foam::ensightFile::beginTimeStep() { writeString("BEGIN TIME STEP"); newline(); + + auto& oss = OFstream::stdStream(); + + const int64_t curr_pos(oss.tellp()); + timeStepOffsets_.push_back(curr_pos); + + // To avoid partly incomplete/incorrect footer information, + // overwrite original footer if needed. + + if (curr_pos >= 0 && curr_pos < origFileSize_) + { + const char fill[] = "deadbeef"; + + for + ( + int64_t pos = curr_pos; + pos < origFileSize_ && bool(oss); + pos += 8 + ) + { + // Overwrite with specified "junk" to avoid/detect corrupt + // files etc. Don't worry about slightly increasing the + // file size (ie, max 7 bytes) - it's unimportant + oss.write(fill, 8); + } + + // Maintain the original output position + oss.seekp(curr_pos); + + OFstream::syncState(); + } + + return curr_pos; } -void Foam::ensightFile::endTimeStep() +int64_t Foam::ensightFile::endTimeStep() { writeString("END TIME STEP"); newline(); -} + return int64_t(stdStream().tellp()); +} -// -// Convenience Output Methods -// void Foam::ensightFile::beginPart(const label index) { @@ -372,11 +574,33 @@ void Foam::ensightFile::beginPart(const label index) } +void Foam::ensightFile::beginPart +( + const label index, + const std::string& description +) +{ + beginPart(index); + writeString(description); + newline(); +} + + +void Foam::ensightFile::beginCoordinates(const label npoints) +{ + writeString("coordinates"); + newline(); + + write(npoints); + newline(); +} + + void Foam::ensightFile::beginParticleCoordinates(const label nparticles) { writeString("particle coordinates"); newline(); - write(nparticles, 8); // unusual width + writeInt(nparticles, 8); // Warning: unusual width newline(); } diff --git a/src/fileFormats/ensight/file/ensightFile.H b/src/fileFormats/ensight/file/ensightFile.H index e565f3eb2cbe22ec0b4142d0dc82a4314f978e80..a0231593c1f7961172f5a559a6be0d61ca783e8a 100644 --- a/src/fileFormats/ensight/file/ensightFile.H +++ b/src/fileFormats/ensight/file/ensightFile.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,8 +28,8 @@ Class Foam::ensightFile Description - Ensight output with specialized write() for strings, integers and floats. - Correctly handles binary write as well. + A variant of OFstream with specialised handling for Ensight writing + of strings, integers and floats (ASCII and BINARY). \*---------------------------------------------------------------------------*/ @@ -39,6 +39,7 @@ Description #include "OFstream.H" #include "ensightFileName.H" #include "ensightVarName.H" +#include "DynamicList.H" #include "IndirectListBase.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -62,17 +63,36 @@ class ensightFile //- Value to represent undef in results (default: 1e+37, floatVGREAT) static float undefValue_; + //- Transient single-file: + //- the original file size when opened in append mode, zero otherwise + int64_t origFileSize_; + + //- Transient single-file: + //- the time-step file-offsets (position after "BEGIN TIME STEP"). + // Set on initial reading and added to by beginTimeStep(). + DynamicList<int64_t> timeStepOffsets_; + // Private Member Functions - //- Initialize sets the ASCII output formatting + //- Set the ASCII output formatting etc, + //- and handle transient single-file timestep information void init(); - //- No copy construct - ensightFile(const ensightFile&) = delete; - //- No copy assignment - void operator=(const ensightFile&) = delete; + // Constructors + + //- Construct with file name, no ensight file naming adjustment. + // Created as an atomic or in append-mode (single-file format). + // In append-mode, attempts to parse existing time-step information. + // Changes APPEND_APP to APPEND_ATE (file rewriting). + ensightFile + ( + std::nullptr_t, // dispatch tag + IOstreamOption::appendType append, // (NO_APPEND or APPEND_ATE) + const fileName& pathname, + IOstreamOption::streamFormat fmt + ); public: @@ -92,36 +112,76 @@ public: // Static Functions //- Return a null ensightFile - static const ensightFile& null() + static const ensightFile& null() noexcept { return NullObjectRef<ensightFile>(); } + // Generated Methods + + //- No copy construct + ensightFile(const ensightFile&) = delete; + + //- No copy assignment + void operator=(const ensightFile&) = delete; + + // Constructors //- Construct from path-name. // The path-name is adjusted for valid ensight file naming. - // Always created as an atomic - explicit ensightFile + // Created as an atomic or in append mode (single-file format). + // In append mode, attempts to parse existing time-step information. + ensightFile ( + //! Append mode: NO_APPEND or APPEND_ATE + IOstreamOption::appendType append, const fileName& pathname, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); //- Construct from path and name. // Only the name portion is adjusted for valid ensight file naming. - // Always created as an atomic + // Created as an atomic or in append mode (single-file format). + // In append mode, attempts to parse existing time-step information. ensightFile ( + //! Append mode: NO_APPEND or APPEND_ATE + IOstreamOption::appendType append, const fileName& path, const fileName& name, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + //- Construct from path-name. + // The path-name is adjusted for valid ensight file naming. + // Created as an atomic, non-append mode. + explicit ensightFile + ( + const fileName& pathname, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + : + ensightFile(IOstreamOption::NO_APPEND, pathname, fmt) + {} + + //- Construct from path and name. + // Only the name portion is adjusted for valid ensight file naming. + // Created as an atomic, non-append mode. + ensightFile + ( + const fileName& path, + const fileName& name, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + : + ensightFile(IOstreamOption::NO_APPEND, path, name, fmt) + {} + - //- Destructor - ~ensightFile() = default; + //- Destructor. Commits the time-step footer information (if any) + ~ensightFile(); // Member Functions @@ -148,12 +208,6 @@ public: //- Write "C Binary" string for binary files (eg, geometry/measured) void writeBinaryHeader(); - //- Write "BEGIN TIME STEP" string and newline - void beginTimeStep(); - - //- Write "END TIME STEP" string and newline - void endTimeStep(); - //- Write character/string content as "%79s" or as binary (max 80 chars) void writeString(const char* str, size_t len); @@ -163,6 +217,18 @@ public: //- Write string as "%79s" or as binary (max 80 chars) void writeString(const std::string& str); + //- Write integer value with specified width or as binary + void writeInt(const int32_t val, const int fieldWidth); + + //- Write (narrowed) integer value with specified width or as binary + void writeInt(const int64_t val, const int fieldWidth); + + //- Write floating-point with specified width or as binary + void writeFloat(const float val, const int fieldWidth); + + //- Write (narrowed) floating-point with specified width or as binary + void writeFloat(const double val, const int fieldWidth); + //- Write undef value void writeUndef(); @@ -197,15 +263,12 @@ public: //- Write string, uses writeString() virtual Ostream& write(const std::string& str) override; - //- Write integer as "%10d" or as binary + //- Write integer value as "%10d" or as binary virtual Ostream& write(const int32_t val) override; - //- Write integer as "%10d" or as binary + //- Write integer value as "%10d" or as binary (narrowed to int32_t) virtual Ostream& write(const int64_t val) override; - //- Write integer with specified width or as binary - Ostream& write(const label value, const label fieldWidth); - //- Write floating-point as "%12.5e" or as binary virtual Ostream& write(const float val) override; @@ -216,11 +279,59 @@ public: void newline(); + // Transient single-file format + + //- Write "BEGIN TIME STEP" string and newline + //- (for transient single-file format). + // \returns file position after the write + int64_t beginTimeStep(); + + //- Write "END TIME STEP" string and newline + //- (for transient single-file format) + // \returns file position after the write + int64_t endTimeStep(); + + //- Transient single-file: + //- write the time-step file-offsets as footer information. + // Maintains the current file position to allow manual use + // and seamless overwriting. + // \return the output file position at the start of the footer + int64_t writeTimeStepFooter(); + + //- Transient single-file: + //- forget time-step file positions (advanced use) + void clearTimeSteps() noexcept + { + timeStepOffsets_.clear(); + } + + //- Transient single-file: + //- the current number of time steps + label nTimes() const noexcept + { + return timeStepOffsets_.size(); + } + + //- Transient single-file: + //- the current file-offsets for time steps within the file + const UList<int64_t>& timeStepOffets() const noexcept + { + return timeStepOffsets_; + } + + // Convenience Output Methods //- Begin a part (0-based index internally). void beginPart(const label index); + //- Begin a part (0-based index internally), with a description. + //- Only used for geometry files + void beginPart(const label index, const std::string& description); + + //- Begin a "coordinates" block. Only used for geometry files. + void beginCoordinates(const label nparticles); + //- Begin a "particle coordinates" block (measured data) void beginParticleCoordinates(const label nparticles); diff --git a/src/fileFormats/ensight/file/ensightGeoFile.C b/src/fileFormats/ensight/file/ensightGeoFile.C index f5da0c33ca12ec4c79b4a9c6cc6044876161900b..ef28bcef3c1185409e8736af940360cfea282e30 100644 --- a/src/fileFormats/ensight/file/ensightGeoFile.C +++ b/src/fileFormats/ensight/file/ensightGeoFile.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,61 +29,38 @@ License #include "ensightGeoFile.H" #include "foamVersion.H" -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -void Foam::ensightGeoFile::init() -{ - writeBinaryHeader(); - beginGeometry(); -} - - -void Foam::ensightGeoFile::beginGeometry() -{ - // Description line 1 - writeString("Ensight Geometry File"); - newline(); - - // Description line 2 - writeString("Written by OpenFOAM " + std::to_string(foamVersion::api)); - newline(); - - writeString("node id assign"); - newline(); - - writeString("element id assign"); - newline(); -} - - -void Foam::ensightGeoFile::endGeometry() -{} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::ensightGeoFile::ensightGeoFile ( + IOstreamOption::appendType append, const fileName& pathname, IOstreamOption::streamFormat fmt ) : - ensightFile(pathname, fmt) + ensightFile(append, pathname, fmt) { - init(); + if (!OFstream::is_appending()) + { + writeBinaryHeader(); // Mandatory for geometry files + } } Foam::ensightGeoFile::ensightGeoFile ( + IOstreamOption::appendType append, const fileName& path, const fileName& name, IOstreamOption::streamFormat fmt ) : - ensightFile(path, name, fmt) + ensightFile(append, path, name, fmt) { - init(); + if (!OFstream::is_appending()) + { + writeBinaryHeader(); // Mandatory for geometry files + } } @@ -102,24 +79,20 @@ Foam::Ostream& Foam::ensightGeoFile::writeKeyword(const keyType& key) // Convenience Output Methods // -void Foam::ensightGeoFile::beginPart -( - const label index, - const std::string& description -) +void Foam::ensightGeoFile::beginGeometry() { - beginPart(index); - writeString(description); + // Description line 1 + writeString("Ensight Geometry File"); newline(); -} + // Description line 2 + writeString("Written by OpenFOAM " + std::to_string(foamVersion::api)); + newline(); -void Foam::ensightGeoFile::beginCoordinates(const label npoints) -{ - writeString(ensightFile::coordinates); + writeString("node id assign"); newline(); - write(npoints); + writeString("element id assign"); newline(); } diff --git a/src/fileFormats/ensight/file/ensightGeoFile.H b/src/fileFormats/ensight/file/ensightGeoFile.H index 86d2d9beed719e808e6d6d5ddcb952d238bfb178..6eed4f0270788cc71c62b6bbd9f632004e489c45 100644 --- a/src/fileFormats/ensight/file/ensightGeoFile.H +++ b/src/fileFormats/ensight/file/ensightGeoFile.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,8 @@ Class Foam::ensightGeoFile Description - Specialized Ensight output with extra geometry file header + A variant of ensightFile (Ensight writing) that includes + the extra geometry file header information. \*---------------------------------------------------------------------------*/ @@ -50,16 +51,18 @@ class ensightGeoFile : public ensightFile { - // Private Member Functions +public: - //- Initialize outputs the header information and beginGeometry - void init(); + // Static Functions - //- Start of geometry information - void beginGeometry(); + //- Return a null ensightGeoFile + static const ensightGeoFile& null() noexcept + { + return NullObjectRef<ensightGeoFile>(); + } - //- End of geometry information - void endGeometry(); + + // Generated Methods //- No copy construct ensightGeoFile(const ensightGeoFile&) = delete; @@ -67,36 +70,59 @@ class ensightGeoFile //- No copy assignment void operator=(const ensightGeoFile&) = delete; -public: - - // Static Functions - - //- Return a null ensightGeoFile - static const ensightGeoFile& null() - { - return NullObjectRef<ensightGeoFile>(); - } - // Constructors - //- Construct from path-name. + //- Construct from path-name and initialise the binary header. // The path-name is adjusted for valid ensight file naming. - explicit ensightGeoFile + // Created as an atomic or in append mode (single-file format). + ensightGeoFile ( + //! Append mode: NO_APPEND or APPEND_ATE + IOstreamOption::appendType append, const fileName& pathname, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); - //- Construct from path and name. + //- Construct from path / name and initialise the binary header. // Only the name portion is adjusted for valid ensight file naming. + // Created as an atomic or in append mode (single-file format). ensightGeoFile ( + //! Append mode: NO_APPEND or APPEND_ATE + IOstreamOption::appendType append, const fileName& path, const fileName& name, IOstreamOption::streamFormat fmt = IOstreamOption::BINARY ); + //- Construct from path-name and initialise the binary header. + // The path-name is adjusted for valid ensight file naming. + // Created as an atomic, non-append mode. + // \note Since 2024-05 does \em not call beginGeometry() !! + explicit ensightGeoFile + ( + const fileName& pathname, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + : + ensightGeoFile(IOstreamOption::NO_APPEND, pathname, fmt) + {} + + //- Construct from path / name and initialise the binary header. + // Only the name portion is adjusted for valid ensight file naming. + // Created as an atomic, non-append mode. + // \note Since 2024-05 does \em not call beginGeometry() !! + ensightGeoFile + ( + const fileName& path, + const fileName& name, + IOstreamOption::streamFormat fmt = IOstreamOption::BINARY + ) + : + ensightGeoFile(IOstreamOption::NO_APPEND, path, name, fmt) + {} + //- Destructor ~ensightGeoFile() = default; @@ -107,19 +133,13 @@ public: // Output //- Write keyword with trailing newline - virtual Ostream& writeKeyword(const keyType& key); + virtual Ostream& writeKeyword(const keyType& key) override; // Convenience Output Methods - //- Begin a part (0-based index). - using ensightFile::beginPart; - - //- Begin a "part" (0-based index), with a description. - void beginPart(const label index, const std::string& description); - - //- Begin a "coordinates" block - void beginCoordinates(const label npoints); + //- Start of geometry information + void beginGeometry(); }; diff --git a/src/fileFormats/ensight/file/ensightWriterCaching.C b/src/fileFormats/ensight/file/ensightWriterCaching.C index 4d6ed044bc262d0fb294473cddce628ac1e43126..7674415e81e9ceb9ab7cc775fe48fb310f7f0faf 100644 --- a/src/fileFormats/ensight/file/ensightWriterCaching.C +++ b/src/fileFormats/ensight/file/ensightWriterCaching.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -203,7 +203,7 @@ bool Foam::ensightOutput::writerCaching::update const scalar timeValue, const bool geomChanged, const word& fieldName, - const word& fieldType, + const string& fieldType, // May contain spaces (eg, "tensor symm") const word& varName ) { diff --git a/src/fileFormats/ensight/file/ensightWriterCaching.H b/src/fileFormats/ensight/file/ensightWriterCaching.H index b9a1abfd88eac536ea71e05f4ef932d2fdeacecf..40b56a20e8b85a154e7e39c01da62b968e333948 100644 --- a/src/fileFormats/ensight/file/ensightWriterCaching.H +++ b/src/fileFormats/ensight/file/ensightWriterCaching.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -139,6 +139,10 @@ public: //- Update time/geometry information and file cache. //- This routine should only be called from the master process + // + // Note that the ensight field type may contain spaces + // (eg, "tensor symm") + // // \return True if there is a state change, which is either a // geometry change or a new time interval bool update @@ -147,7 +151,7 @@ public: const scalar timeValue, //!< The current time value const bool geomChanged, //!< Monitored geometry changed const word& fieldName, //!< Name of field - const word& fieldType, //!< Type of field + const string& fieldType, //!< Ensight type of field const word& varName = word::null //!< Alternative field name ); }; diff --git a/src/fileFormats/ensight/mesh/ensightMesh.C b/src/fileFormats/ensight/mesh/ensightMesh.C index 8681c14abbcb1ba9eaeba5c8c2b38ce46e09fb19..dd5652b3d69902cd90a8984bfc39371d1fd66df3 100644 --- a/src/fileFormats/ensight/mesh/ensightMesh.C +++ b/src/fileFormats/ensight/mesh/ensightMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,6 +31,7 @@ License #include "polyMesh.H" #include "emptyPolyPatch.H" #include "processorPolyPatch.H" +#include "stringListOps.H" // For stringListOps::findMatching() // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -432,6 +433,11 @@ void Foam::ensightMesh::write bool parallel ) const { + if (UPstream::master()) + { + os.beginGeometry(); + } + // The internalMesh, cellZones for (const label id : cellZoneParts_.sortedToc()) { @@ -449,6 +455,19 @@ void Foam::ensightMesh::write { faceZoneParts_[id].write(os, mesh_, parallel); } + + // No geometry parts written? + // - with lagrangian-only output the VTK EnsightReader still + // needs a volume geometry, and ensight usually does too + if + ( + cellZoneParts_.empty() + && boundaryParts_.empty() + && faceZoneParts_.empty() + ) + { + ensightCells::writeBox(os, mesh_.bounds()); + } } diff --git a/src/fileFormats/ensight/mesh/ensightMesh.H b/src/fileFormats/ensight/mesh/ensightMesh.H index fb61d716ebd2efce8df315a32ed0ab17138ebb03..55101f15d41ac36ea3cb98868e4c49cd622a0631 100644 --- a/src/fileFormats/ensight/mesh/ensightMesh.H +++ b/src/fileFormats/ensight/mesh/ensightMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -216,18 +216,23 @@ public: // Output - //- Write geometry to file. Normally in parallel + //- Write geometry to file (normally in parallel). + //- Adds beginGeometry() marker. + // If all geometry is disabled, it will simply writes the mesh + // bounding box (to ensure that the geometry file is non-empty) void write ( ensightGeoFile& os, - bool parallel = Pstream::parRun() + bool parallel = UPstream::parRun() ) const; - //- Write geometry to file. Normally in parallel + //- Write geometry to file (normally in parallel). + //- Adds beginGeometry() marker. + FOAM_DEPRECATED_FOR(2024-05, "write(ensightGeoFile&, ...") inline void write ( autoPtr<ensightGeoFile>& os, - bool parallel = Pstream::parRun() + bool parallel = UPstream::parRun() ) const; }; diff --git a/src/fileFormats/ensight/name/ensightFileName.H b/src/fileFormats/ensight/name/ensightFileName.H index 0e15cb19192f96e93d6046798161636cf43f89a8..d4240a8bd716d6965b526cb5c5e2a1008ac3a94d 100644 --- a/src/fileFormats/ensight/name/ensightFileName.H +++ b/src/fileFormats/ensight/name/ensightFileName.H @@ -41,8 +41,8 @@ Note \*---------------------------------------------------------------------------*/ -#ifndef ensightFileName_H -#define ensightFileName_H +#ifndef Foam_ensightFileName_H +#define Foam_ensightFileName_H #include "fileName.H" #include "word.H" @@ -81,6 +81,9 @@ public: //- Copy construct from std::string inline explicit FileName(const std::string& s); + //- Move construct from std::string + inline explicit FileName(std::string&& s); + // Member Functions diff --git a/src/fileFormats/ensight/name/ensightFileNameI.H b/src/fileFormats/ensight/name/ensightFileNameI.H index 193c546eb099e2bd1a381f00ebf2d11748c0749e..7d76cf5aa20b79263b2050f1eff3e83c436d9164 100644 --- a/src/fileFormats/ensight/name/ensightFileNameI.H +++ b/src/fileFormats/ensight/name/ensightFileNameI.H @@ -46,6 +46,14 @@ inline Foam::ensight::FileName::FileName(const std::string& s) } +inline Foam::ensight::FileName::FileName(std::string&& s) +: + fileName(std::move(s), false) +{ + stripInvalid(); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // inline bool Foam::ensight::FileName::valid(char c) @@ -65,11 +73,11 @@ inline void Foam::ensight::FileName::stripInvalid() // Avoid characters that upset Windows or others string::replaceAny(":<>[]", '_'); - removeRepeated('_'); + string::removeRepeated('_'); // Minor cleanup of fileName - removeRepeated('/'); - removeEnd('/'); + string::removeRepeated('/'); + string::removeEnd('/'); if (empty()) { diff --git a/src/fileFormats/ensight/name/ensightVarName.H b/src/fileFormats/ensight/name/ensightVarName.H index dab88dd446c37100b58ff9c687732ebb1f2379b6..f818e554e3d99afb4345fd5bf728d57915fd02f1 100644 --- a/src/fileFormats/ensight/name/ensightVarName.H +++ b/src/fileFormats/ensight/name/ensightVarName.H @@ -41,8 +41,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef ensightVarName_H -#define ensightVarName_H +#ifndef Foam_ensightVarName_H +#define Foam_ensightVarName_H #include "word.H" @@ -80,6 +80,9 @@ public: //- Copy construct from std::string inline explicit VarName(const std::string& s); + //- Move construct from std::string + inline explicit VarName(std::string&& s); + // Member Functions diff --git a/src/fileFormats/ensight/name/ensightVarNameI.H b/src/fileFormats/ensight/name/ensightVarNameI.H index 49ffb145a24e5fe14c5cfac3845740e1698c35e6..45ce8d3ed31aa383054195164a80989fb30fba19 100644 --- a/src/fileFormats/ensight/name/ensightVarNameI.H +++ b/src/fileFormats/ensight/name/ensightVarNameI.H @@ -46,6 +46,14 @@ inline Foam::ensight::VarName::VarName(const std::string& s) } +inline Foam::ensight::VarName::VarName(std::string&& s) +: + word(std::move(s), false) +{ + stripInvalid(); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // inline bool Foam::ensight::VarName::valid(char c) @@ -73,7 +81,7 @@ inline bool Foam::ensight::VarName::valid(char c) inline void Foam::ensight::VarName::stripInvalid() { - string::stripInvalid<VarName>(*this); + string::stripInvalid<ensight::VarName>(*this); if (empty()) { @@ -83,10 +91,9 @@ inline void Foam::ensight::VarName::stripInvalid() } // Prefix with '_' to avoid starting with leading digits - std::string::iterator iter = begin(); - if (isdigit(*iter)) + if (std::isdigit(front())) { - insert(iter, '_'); + insert(0, 1, '_'); } } diff --git a/src/fileFormats/ensight/part/cells/ensightCells.H b/src/fileFormats/ensight/part/cells/ensightCells.H index ac64cd0d81c6fa3f7aec5b420e3825d332df6a56..6ad3b1b426d49772935a9ec72fea0d17979c69b5 100644 --- a/src/fileFormats/ensight/part/cells/ensightCells.H +++ b/src/fileFormats/ensight/part/cells/ensightCells.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,6 +46,7 @@ namespace Foam // Forward Declarations class bitSet; +class boundBox; class polyMesh; template<class T> class InfoProxy; @@ -273,12 +274,24 @@ public: virtual void writeDict(Ostream& os, const bool full=false) const; //- Write geometry, using a mesh reference (serial only) + //- No beginGeometry() marker. virtual void write ( ensightGeoFile& os, const polyMesh& mesh, bool parallel ) const; + + //- Write bounding box geometry. + //- All parameters are only relevant on master + //- No beginGeometry() marker. + static void writeBox + ( + ensightGeoFile& os, + const boundBox& bb, + const label partIndex = 0, + const word& partName = "geometry-box" + ); }; diff --git a/src/fileFormats/ensight/part/cells/ensightCellsIO.C b/src/fileFormats/ensight/part/cells/ensightCellsIO.C index f45f70a4176983ec5e246b833d2a6836331569d3..2223861df624a51b668cc99db7fec5ff3625b312 100644 --- a/src/fileFormats/ensight/part/cells/ensightCellsIO.C +++ b/src/fileFormats/ensight/part/cells/ensightCellsIO.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,9 @@ License #include "ensightCells.H" #include "ensightOutput.H" #include "InfoProxy.H" +#include "boundBox.H" #include "polyMesh.H" +#include "cellModel.H" #include "globalIndex.H" #include "globalMeshData.H" #include "manifoldCellsMeshObject.H" @@ -330,6 +332,44 @@ void Foam::ensightCells::write } +void Foam::ensightCells::writeBox +( + ensightGeoFile& os, + const boundBox& bb, + const label partIndex, + const word& partName +) +{ + pointField points; + cellShapeList shapes; + + if (UPstream::master()) + { + points = bb.hexCorners(); + shapes.emplace_back(cellModel::HEX, identity(8)); + } + + ensightOutput::Detail::writeCoordinates + ( + os, + partIndex, + partName, + 8, // nPoints (global) + points, + false // serial only! (parallel=false) + ); + + if (UPstream::master()) + { + os.writeKeyword(ensightCells::key(ensightCells::elemType::HEXA8)); + os.write(shapes.size()); // one cell (global) + os.newline(); + + ensightOutput::writeCellShapes(os, shapes); + } +} + + // * * * * * * * * * * * * * * * Ostream Operator * * * * * * * * * * * * * // template<> diff --git a/src/fileFormats/ensight/part/faces/ensightFaces.C b/src/fileFormats/ensight/part/faces/ensightFaces.C index 404a4e3f343565651658fb7a68b3eb28aab2ac19..4b41a67fd20e7061e6219766928903aa0917fc28 100644 --- a/src/fileFormats/ensight/part/faces/ensightFaces.C +++ b/src/fileFormats/ensight/part/faces/ensightFaces.C @@ -54,7 +54,7 @@ namespace { // Trivial shape classifier -inline Foam::ensightFaces::elemType whatType(const Foam::face& f) +inline Foam::ensightFaces::elemType whatType(const Foam::face& f) noexcept { return ( diff --git a/src/fileFormats/ensight/part/faces/ensightFaces.H b/src/fileFormats/ensight/part/faces/ensightFaces.H index 0243ba510ec547c9153835798dca85dc70c1c4e3..7109ce0588f395a771aa3ffd62518fa1a46a4e07 100644 --- a/src/fileFormats/ensight/part/faces/ensightFaces.H +++ b/src/fileFormats/ensight/part/faces/ensightFaces.H @@ -266,6 +266,7 @@ public: virtual void writeDict(Ostream& os, const bool full=false) const; //- Write geometry, using a mesh reference + //- No beginGeometry() marker. virtual void write ( ensightGeoFile& os, diff --git a/src/fileFormats/ensight/part/part/ensightPart.C b/src/fileFormats/ensight/part/part/ensightPart.C index 4f218b7864573e70e1342493099fcb0c25e04464..d40b45e6e2af6841c26d35af6314655088e84f43 100644 --- a/src/fileFormats/ensight/part/part/ensightPart.C +++ b/src/fileFormats/ensight/part/part/ensightPart.C @@ -61,9 +61,7 @@ void Foam::ensightPart::decrAddressing(const label off) Foam::ensightPart::ensightPart() : index_(0), - identifier_(-1), - name_(), - address_() + identifier_(-1) {} diff --git a/src/fileFormats/ensight/part/part/ensightPart.H b/src/fileFormats/ensight/part/part/ensightPart.H index a420b6bb1e304f19419608dbdd3c6d9f63db575d..e6244e9df583a53019ac473b31493d612b75795a 100644 --- a/src/fileFormats/ensight/part/part/ensightPart.H +++ b/src/fileFormats/ensight/part/part/ensightPart.H @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef ensightPart_H -#define ensightPart_H +#ifndef Foam_ensightPart_H +#define Foam_ensightPart_H #include "ensightGeoFile.H" #include "labelList.H" diff --git a/src/fileFormats/ensight/part/surface/ensightOutputSurface.H b/src/fileFormats/ensight/part/surface/ensightOutputSurface.H index fd3fd37d73de49959be363b21899d4740a6a0c7a..90b9ed1808dfc866037b145322104c0402e44bc0 100644 --- a/src/fileFormats/ensight/part/surface/ensightOutputSurface.H +++ b/src/fileFormats/ensight/part/surface/ensightOutputSurface.H @@ -42,8 +42,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef ensightOutputSurface_H -#define ensightOutputSurface_H +#ifndef Foam_ensightOutputSurface_H +#define Foam_ensightOutputSurface_H #include "ensightFaces.H" @@ -69,7 +69,9 @@ class ensightOutputSurface const faceList& faces_; - // Private Member Functions +public: + + // Generated Methods //- No copy construct ensightOutputSurface(const ensightOutputSurface&) = delete; @@ -78,8 +80,6 @@ class ensightOutputSurface void operator=(const ensightOutputSurface&) = delete; -public: - // Constructors //- Construct from points and faces. @@ -98,7 +98,8 @@ public: // Member Functions - //- Write processor-local geometry (serial-only) + //- Write processor-local geometry (serial-only). + //- No beginGeometry() marker. void write(ensightGeoFile& os) const; //- Write a field of face or point values (serial-only) @@ -121,7 +122,8 @@ public: // Housekeeping - //- Cannot write geometry with a mesh reference + //- Cannot write geometry with a mesh reference. + //- No beginGeometry() marker. virtual void write(ensightGeoFile&, const polyMesh&, bool) const {} }; diff --git a/src/fileFormats/ensight/read/ensightReadFile.C b/src/fileFormats/ensight/read/ensightReadFile.C index 1ceb274c32e89575b87277830abc7cb22a24abc3..bdb2642c5ad55377aea294a906d0795ff92a49e6 100644 --- a/src/fileFormats/ensight/read/ensightReadFile.C +++ b/src/fileFormats/ensight/read/ensightReadFile.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,50 +26,300 @@ License \*---------------------------------------------------------------------------*/ #include "ensightReadFile.H" +#include "stringOps.H" +#include "defineDebugSwitch.H" +#include "registerSwitch.H" -// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +defineDebugSwitchWithName(Foam::ensightReadFile, "ensightReadFile", 0); + +registerDebugSwitchWithName(Foam::ensightReadFile, ensight, "ensightReadFile"); + + +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // + +namespace Foam +{ -Foam::IOstreamOption::streamFormat -Foam::ensightReadFile::detectBinaryHeader(const fileName& pathname) +// Get integers, floats etc in binary or ascii. +template<class Type> +static inline Type getPrimitive(IFstream& is) { - IOstreamOption::streamFormat fmt(IOstreamOption::BINARY); + Type value(0); - // Detect BINARY vs ASCII by testing for initial "(C|Fortran) Binary" + auto& iss = is.stdStream(); + + if (is.format() == IOstreamOption::BINARY) + { + iss.read(reinterpret_cast<char*>(&value), sizeof(Type)); + } + else { - IFstream ifs(pathname, IOstreamOption::BINARY); + iss >> value; + } + is.syncState(); + + return value; +} - if (!ifs.good()) - { - FatalErrorInFunction - << "Cannot read file " << ifs.name() << nl - << exit(FatalError); - } - istream& iss = ifs.stdStream(); +// Get an Ensight string value (binary or ascii). +static inline void readEnsightString(IFstream& is, std::string& value) +{ + if (is.format() == IOstreamOption::BINARY) + { + auto& iss = is.stdStream(); // Binary string is *exactly* 80 characters - string buf(size_t(80), '\0'); - iss.read(&buf[0], 80); + value.resize(80, '\0'); + iss.read(&value[0], 80); const std::streamsize gcount = iss.gcount(); - buf.erase(gcount <= 0 ? 0 : gcount); // Truncated? + value.erase(gcount <= 0 ? 0 : gcount); // Truncated? // Could exit on truncated input, but no real advantage // Truncate at the first embedded '\0' - const auto endp = buf.find('\0'); + const auto endp = value.find('\0'); + if (endp != std::string::npos) { - buf.erase(endp); + value.erase(endp); + } + + // May have been padded with trailing spaces - remove those + stringOps::inplaceTrimRight(value); + + is.syncState(); + } + else + { + value.clear(); + while (value.empty() && !is.eof()) + { + is.getLine(value); + } + } +} + + +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +// Footer information looks like this +// +/* |---------------|---------------|-----------------------| + * | ASCII | BINARY | element | + * |---------------|---------------|-----------------------| + * | "%20lld\n" | int32 | nSteps | + * | "%20lld\n" | int64 | offset step 1 | + * | "%20lld\n" | int64 | offset step 2 | + * | "%20lld\n" | .. | | + * | "%20lld\n" | int64 | offset step n | + * | "%20lld\n" | int32 | flag (unused) | + * | "%20lld\n" | int64 | offset to nSteps | + * | "%s\n" | char[80] | 'FILE_INDEX' | + * |---------------|---------------|-----------------------| + */ + +int64_t Foam::ensightReadFile::getTimeStepFooter +( + IFstream& is, + // File offsets for each time step (if any) + List<int64_t>& offsets +) +{ + std::string buffer; + + auto& iss = is.stdStream(); + const auto lineNum = is.lineNumber(); + const auto curr_pos = iss.tellg(); + + if (curr_pos < 0) + { + // Impossible positioning - exit + is.lineNumber(lineNum); // Restore line number + offsets.clear(); + return -1; + } + + iss.seekg(0, std::ios_base::end); + const auto end_pos = iss.tellg(); + + // As a minimum, expect at least 1 time step, so have four integers + // (nSteps, offset step 1, flag, file offset) and the string (10 chars). + // Thus always at least 80+ chars. + + if (end_pos <= 80) + { + // Looks quite impossible - exit + + is.lineNumber(lineNum); // Restore line number + iss.seekg(curr_pos); // Restore file position + + offsets.clear(); + return -1; + } + + // Get the last 80 chars as a character string + iss.seekg(-80, std::ios_base::end); + + const auto fmt = is.format(IOstreamOption::BINARY); + readEnsightString(is, buffer); + is.format(fmt); + + int64_t footer_begin(0); + + const auto endp = buffer.find("FILE_INDEX"); + + if (endp == std::string::npos) + { + // Not found + + is.lineNumber(lineNum); // Restore line number + iss.seekg(curr_pos); // Restore file position + + offsets.clear(); + return -1; + } + else if (fmt == IOstreamOption::ASCII) + { + // In ASCII, the last 80 chars will also include a few integers + buffer.erase(endp); // Remove FILE_INDEX ... + auto split = stringOps::splitSpace(buffer); + + if (!split.empty()) + { + footer_begin = Foam::readInt64(split.back().str()); + } + } + else + { + // Position before string (80 bytes) and int64 value (8 bytes) + iss.seekg(-88, std::ios_base::end); + footer_begin = getPrimitive<int64_t>(is); + } + + + // The number of steps is stored as int32 at the beginning of the footer + int32_t nSteps(0); + + if (footer_begin) + { + iss.seekg(footer_begin); + nSteps = getPrimitive<int32_t>(is); + } + + offsets.resize_nocopy(nSteps); + + // Next footer entries are the offsets per time-step + for (int32_t step = 0; step < nSteps; ++step) + { + offsets[step] = getPrimitive<int64_t>(is); + } + + is.lineNumber(lineNum); // Restore line number + iss.seekg(curr_pos); // Restore file position + + return footer_begin; +} + +} // End namespace Foam + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +void Foam::ensightReadFile::readString(std::string& value) +{ + readEnsightString(*this, value); +} + + +void Foam::ensightReadFile::init(bool detectFormat) +{ + if (!IFstream::good()) + { + FatalErrorInFunction + << "Cannot read file " << IFstream::name() << nl + << exit(FatalError); + } + + auto& iss = stdStream(); + + auto lineNum = lineNumber(); + auto curr_pos = iss.tellg(); // The starting position (should be 0) + + string buffer; + + if (detectFormat) + { + // Read initial string as BINARY + IFstream::format(IOstreamOption::BINARY); + + readEnsightString(*this, buffer); + + // Detect BINARY vs ASCII by testing for initial "(C|Fortran) Binary" + if (buffer.contains("Binary") || buffer.contains("binary")) + { + // Format is BINARY + IFstream::format(IOstreamOption::BINARY); + + // New backtracking point is after the initial "C Binary" string + curr_pos = iss.tellg(); + + // Get the next (optional) line after the "C Binary" (if any) + // and before the description. + readEnsightString(*this, buffer); + } + else + { + // Not binary => ASCII + IFstream::format(IOstreamOption::ASCII); + + // Rewind to the beginning again + iss.seekg(curr_pos); } + } + else + { + // Get the next line. + // It is either the description line or "BEGIN TIME STEP". + readEnsightString(*this, buffer); + } + + + // The buffer string now either contains the description line + // or "BEGIN TIME STEP" + + if (buffer.starts_with("BEGIN TIME STEP")) + { + // Transient single file. + // File position is now after the "BEGIN TIME STEP" string + + curr_pos = iss.tellg(); // Fallback value - // ASCII if it does not contain "C Binary" - if (!buf.contains("Binary") && !buf.contains("binary")) + timeStepFooterBegin_ = getTimeStepFooter(*this, timeStepOffsets_); + + if (timeStepOffsets_.empty()) { - fmt = IOstreamOption::ASCII; + // Treat like a single time step + timeStepOffsets_.resize(1, int64_t(curr_pos)); } } + else + { + // A description line and not "BEGIN TIME STEP" + // so backtrack to before it was read + + lineNumber(lineNum); // Restore line number + iss.seekg(curr_pos); // Restore file position - return fmt; + timeStepFooterBegin_ = -1; // safety + timeStepOffsets_.clear(); // safety + } + + DebugInfo<< "Time-steps: " << timeStepOffsets_.size() << endl; + + syncState(); } @@ -80,8 +330,11 @@ Foam::ensightReadFile::ensightReadFile const fileName& pathname ) : - IFstream(pathname, ensightReadFile::detectBinaryHeader(pathname)) -{} + IFstream(pathname, IOstreamOption::BINARY), // Start as BINARY + timeStepFooterBegin_(-1) +{ + init(true); // detectFormat = true +} Foam::ensightReadFile::ensightReadFile @@ -90,12 +343,16 @@ Foam::ensightReadFile::ensightReadFile IOstreamOption::streamFormat fmt ) : - IFstream(pathname, fmt) -{} + IFstream(pathname, fmt), + timeStepFooterBegin_(-1) +{ + init(false); // detectFormat = false +} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +// Same as IFstream::readRaw(buf, count) Foam::Istream& Foam::ensightReadFile::read ( char* buf, @@ -108,133 +365,123 @@ Foam::Istream& Foam::ensightReadFile::read } -Foam::Istream& Foam::ensightReadFile::read(string& value) -{ - if (format() == IOstreamOption::BINARY) - { - auto& iss = stdStream(); +// TBD +// Foam::Istream& Foam::ensightReadFile::read(word& value) +// { +// readString(value); +// string::stripInvalid<word>(value); +// return *this; +// } - // Binary string is *exactly* 80 characters - value.resize(80, '\0'); - iss.read(&value[0], 80); - const std::streamsize gcount = iss.gcount(); - value.erase(gcount <= 0 ? 0 : gcount); // Truncated? - - // Could exit on truncated input, but no real advantage - - syncState(); - // Truncate at the first embedded '\0' - auto endp = value.find('\0'); +Foam::Istream& Foam::ensightReadFile::read(string& value) +{ + readString(value); + return *this; +} - if (endp != std::string::npos) - { - value.erase(endp); - } - // May have been padded with trailing spaces - remove those - endp = value.find_last_not_of(" \t\f\v\n\r"); +Foam::Istream& Foam::ensightReadFile::read(label& value) +{ + value = getPrimitive<int>(*this); + return *this; +} - if (endp != std::string::npos) - { - value.erase(endp + 1); - } - } - else - { - value.clear(); - while (value.empty() && !eof()) - { - getLine(value); - } - } +Foam::Istream& Foam::ensightReadFile::read(float& value) +{ + value = getPrimitive<float>(*this); return *this; } -Foam::Istream& Foam::ensightReadFile::read(label& value) +Foam::Istream& Foam::ensightReadFile::read(double& value) { - int ivalue; + value = getPrimitive<float>(*this); + return *this; +} - if (format() == IOstreamOption::BINARY) - { - read - ( - reinterpret_cast<char*>(&ivalue), - sizeof(ivalue) - ); - } - else - { - stdStream() >> ivalue; - syncState(); - } - value = ivalue; +Foam::Istream& Foam::ensightReadFile::readKeyword(string& key) +{ + read(key); return *this; } -Foam::Istream& Foam::ensightReadFile::read(float& value) +void Foam::ensightReadFile::readPoints +( + const label nPoints, + List<floatVector>& points +) { - if (format() == IOstreamOption::BINARY) + points.resize_nocopy(nPoints); + + for (auto& p : points) { - read - ( - reinterpret_cast<char*>(&value), - sizeof(value) - ); + read(p.x()); } - else + for (auto& p : points) { - stdStream() >> value; - syncState(); + read(p.y()); + } + for (auto& p : points) + { + read(p.z()); } - - return *this; } -Foam::Istream& Foam::ensightReadFile::read(double& value) +void Foam::ensightReadFile::readPoints +( + const label nPoints, + List<doubleVector>& points +) { - float fvalue; + points.resize_nocopy(nPoints); - if (format() == IOstreamOption::BINARY) + for (auto& p : points) { - read - ( - reinterpret_cast<char*>(&fvalue), - sizeof(fvalue) - ); + read(p.x()); } - else + for (auto& p : points) { - stdStream() >> fvalue; - syncState(); + read(p.y()); + } + for (auto& p : points) + { + read(p.z()); } - - value = fvalue; - return *this; } -Foam::Istream& Foam::ensightReadFile::readKeyword(string& key) +bool Foam::ensightReadFile::seekTime(const label timeIndex) { - read(key); - return *this; -} + if (timeIndex >= 0 && timeIndex < timeStepOffsets_.size()) + { + auto& iss = stdStream(); + iss.seekg(timeStepOffsets_[timeIndex]); + syncState(); -Foam::Istream& Foam::ensightReadFile::readBinaryHeader() -{ - if (format() == IOstreamOption::BINARY) + if (debug) + { + Info<< "seek time " + << timeIndex << '/' << nTimes() + << " offset:" << label(timeStepOffsets_[timeIndex]) << nl; + } + + return true; + } + + if (debug) { - string buffer; - read(buffer); + Info<< "seek time " + << timeIndex << '/' << nTimes() + << " ignored" << nl; } - return *this; + return false; } diff --git a/src/fileFormats/ensight/read/ensightReadFile.H b/src/fileFormats/ensight/read/ensightReadFile.H index f11cead56efd45ac28fd998fd7f32b185075241e..f0f47170b57534850118d7a9cba1d565b02bb6af 100644 --- a/src/fileFormats/ensight/read/ensightReadFile.H +++ b/src/fileFormats/ensight/read/ensightReadFile.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,9 +27,8 @@ Class Foam::ensightReadFile Description - A variant of IFstream with specialised read() for - strings, integers and floats. - Correctly handles binary read as well. + A variant of IFstream with specialised handling for Ensight reading + of strings, integers and floats (ASCII and BINARY). \*---------------------------------------------------------------------------*/ @@ -38,6 +37,7 @@ Description #include "IFstream.H" #include "IOstream.H" +#include "vector.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -52,9 +52,28 @@ class ensightReadFile : public IFstream { -public: + // Private Data + + //- Transient single-file: + //- beginning of time-step footer + //- as read from the file + int64_t timeStepFooterBegin_; + + //- Transient single-file: + //- the time-step file-offsets (position after "BEGIN TIME STEP") + //- as read from the file + List<int64_t> timeStepOffsets_; + - // Generated Methods + // Private Member Functions + + //- Read string as "%80s" or as binary + void readString(std::string& value); + + //- Initializes read information + //- (optional detection of "C Binary" header) + //- and scan for transient single-file format. + void init(bool detectFormat); //- No copy construct ensightReadFile(const ensightReadFile&) = delete; @@ -63,10 +82,20 @@ public: void operator=(const ensightReadFile&) = delete; +public: + + //- Debug switch + static int debug; + + // Constructors - //- Construct from pathname, auto-detect the format - explicit ensightReadFile(const fileName& pathname); + //- Construct a geometry reader, auto-detecting the "C Binary" header + //- for binary files and skipping past it. + explicit ensightReadFile + ( + const fileName& pathname + ); //- Construct from pathname, use the specified (ascii/binary) format ensightReadFile @@ -82,11 +111,13 @@ public: // Static Functions - //- Detect if the file is \em binary by testing for initial - //- "(C|Fortran) Binary" - static IOstreamOption::streamFormat detectBinaryHeader + //- Extract time step footer information (if any). + // \return the begin of footer position. + static int64_t getTimeStepFooter ( - const fileName& pathname + IFstream& is, + //! [out] File offsets for each time step (if any) + List<int64_t>& offsets ); @@ -101,7 +132,7 @@ public: //- Read string as "%80s" or as binary virtual Istream& read(string& value) override; - //- Read integer as "%10d" or as binary + //- Read integer as "%10d" or as binary (narrowed) int virtual Istream& read(label& value) override; //- Read floating-point as "%12.5e" or as binary @@ -113,8 +144,68 @@ public: //- Read element keyword. Currently the same as read(string) Istream& readKeyword(string& key); - //- Read "C Binary" for binary files (eg, geometry/measured) - Istream& readBinaryHeader(); + + // Special Read Functions + + //- Component-wise reading of points/coordinates. + //- Read all x components, y components and z components. + void readPoints(const label nPoints, List<floatVector>& points); + + //- Component-wise reading of points/coordinates. + //- Reads x components, y components and z components. + void readPoints(const label nPoints, List<doubleVector>& points); + + //- Read and discard specified number of elements + template<class Type> + void skip(label n = 1) + { + Type dummy; + for (; n > 0; --n) + { + this->read(dummy); + } + } + + + // Transient single-file format + + //- Transient single-file: + //- the position of the FILE_INDEX footer + int64_t timeStepFooterBegin() const noexcept + { + return timeStepFooterBegin_; + } + + //- Transient single-file: + //- the number of time steps within the file + label nTimes() const noexcept + { + return timeStepOffsets_.size(); + } + + //- Transient single-file: + //- the file-offsets for time steps within the file + const UList<int64_t>& timeStepOffets() const noexcept + { + return timeStepOffsets_; + } + + //- Transient single-file: + //- seek to the file position corresponding to the given time index. + bool seekTime(const label timeIndex); + + + // Housekeeping + + //- Detect if the file is \em binary by testing for initial + //- "(C|Fortran) Binary" + FOAM_DEPRECATED_FOR(2024-05, "detected on construct") + static IOstreamOption::streamFormat + detectBinaryHeader(const fileName& pathname) + { + ensightReadFile reader(pathname); + return reader.format(); + } }; diff --git a/src/fileFormats/vtk/read/vtkUnstructuredReader.C b/src/fileFormats/vtk/read/vtkUnstructuredReader.C index 52e6ca8cc270ce511678a4849c1e263c13e40f30..40b45b37e77b76358ecf996c45b445a6ca9b895b 100644 --- a/src/fileFormats/vtk/read/vtkUnstructuredReader.C +++ b/src/fileFormats/vtk/read/vtkUnstructuredReader.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -888,7 +888,8 @@ void Foam::vtkUnstructuredReader::read(ISstream& inFile) { string line; inFile.getLine(line); - IStringStream is(line); + ISpanStream is(line); + word dataName(is); word dataType(is); //label numComp(readLabel(inFile)); @@ -923,7 +924,8 @@ void Foam::vtkUnstructuredReader::read(ISstream& inFile) // 'NORMALS Normals float' string line; inFile.getLine(line); - IStringStream is(line); + ISpanStream is(line); + word dataName(is); word dataType(is); DebugInfo @@ -971,7 +973,8 @@ void Foam::vtkUnstructuredReader::read(ISstream& inFile) // 'TEXTURE_COORDINATES TCoords 2 float' string line; inFile.getLine(line); - IStringStream is(line); + ISpanStream is(line); + word dataName(is); //"Tcoords" label dim(readLabel(is)); word dataType(is); diff --git a/src/fileFormats/vtk/write/foamVtkPolyWriter.C b/src/fileFormats/vtk/write/foamVtkPolyWriter.C index ae303a42785d6e5214fefbc53fc65d45310ea502..006bf0232cf82ece27eb0403a22b6cc2fc7d3ceb 100644 --- a/src/fileFormats/vtk/write/foamVtkPolyWriter.C +++ b/src/fileFormats/vtk/write/foamVtkPolyWriter.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -320,7 +320,7 @@ void Foam::vtk::polyWriter::writeLines // processor-local connectivity offsets label off = ( - parallel_ ? globalIndex(nLocalConns).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalConns) : 0 ); @@ -521,7 +521,7 @@ void Foam::vtk::polyWriter::writePolys // processor-local connectivity offsets label off = ( - parallel_ ? globalIndex(nLocalConns).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalConns) : 0 ); @@ -632,7 +632,7 @@ bool Foam::vtk::polyWriter::writeLineGeometry const label pointOffset = ( - parallel_ ? globalIndex(nLocalPoints_).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalPoints_) : 0 ); if (legacy()) @@ -662,7 +662,7 @@ bool Foam::vtk::polyWriter::writePolyGeometry const label pointOffset = ( - parallel_ ? globalIndex(nLocalPoints_).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalPoints_) : 0 ); if (legacy()) diff --git a/src/finiteArea/Make/files b/src/finiteArea/Make/files index 803c8df34f99713d3e2dfbf378aa9e261228da83..c318012d210ffcf347cf003fc8761b8c38fe1719 100644 --- a/src/finiteArea/Make/files +++ b/src/finiteArea/Make/files @@ -1,4 +1,6 @@ faMesh/faGlobalMeshData/faGlobalMeshData.C +faMesh/faMeshesRegistry.C +faMesh/faMeshRegistry.C faMesh/faMesh.C faMesh/faMeshNew.C faMesh/faMeshDemandDrivenData.C diff --git a/src/finiteArea/areaMesh/areaFaMesh.H b/src/finiteArea/areaMesh/areaFaMesh.H index 0a9cea06d47bde1031737bfa8f732dce1a2e4bb1..039a574c7c19c12149811904c585eb096592d8da 100644 --- a/src/finiteArea/areaMesh/areaFaMesh.H +++ b/src/finiteArea/areaMesh/areaFaMesh.H @@ -69,22 +69,13 @@ public: // Member Functions //- Return size. Number of faces - static label size(const Mesh& mesh) - { - return mesh.nFaces(); - } + static label size(const Mesh& mesh) { return mesh.nFaces(); } //- Return size. Number of faces - label size() const - { - return size(mesh_); - } + label size() const { return size(mesh_); } //- Field of face centres - const areaVectorField& C() const - { - return mesh_.areaCentres(); - } + const areaVectorField& C() const { return mesh_.areaCentres(); } }; diff --git a/src/finiteArea/distributed/faMeshDistributor.C b/src/finiteArea/distributed/faMeshDistributor.C index 9ee084fd949ff362c0a064a5008a2d12b85f8842..a3b8841d1ec23ddae772126fe6454925aaa45c07 100644 --- a/src/finiteArea/distributed/faMeshDistributor.C +++ b/src/finiteArea/distributed/faMeshDistributor.C @@ -84,10 +84,10 @@ void Foam::faMeshDistributor::createInternalEdgeMap() const const auto& faEdgeMap = distMap_.faceMap(); // Copy full map - internalEdgeMap_.reset(new mapDistributeBase(faEdgeMap)); + internalEdgeMapPtr_ = std::make_unique<mapDistributeBase>(faEdgeMap); // Retain internal edges - internalEdgeMap_->compactRemoteData + internalEdgeMapPtr_->compactRemoteData ( bitSet(tgtMesh_.nInternalEdges(), true), UPstream::msgType(), @@ -200,8 +200,6 @@ Foam::faMeshDistributor::faMeshDistributor srcMesh_(srcMesh), tgtMesh_(tgtMesh), distMap_(distMap), - internalEdgeMap_(), - patchEdgeMaps_(), dummyHandler_(fileOperation::null()), writeHandler_(dummyHandler_), isWriteProc_(isWriteProc) @@ -221,8 +219,6 @@ Foam::faMeshDistributor::faMeshDistributor srcMesh_(srcMesh), tgtMesh_(tgtMesh), distMap_(distMap), - internalEdgeMap_(), - patchEdgeMaps_(), dummyHandler_(nullptr), writeHandler_(writeHandler), isWriteProc_(Switch::INVALID) diff --git a/src/finiteArea/distributed/faMeshDistributor.H b/src/finiteArea/distributed/faMeshDistributor.H index 52f2c4d82594c2f1710536bcab7d8749c6917f8f..632d617308341332c408538fb9ccd1a4628c4945 100644 --- a/src/finiteArea/distributed/faMeshDistributor.H +++ b/src/finiteArea/distributed/faMeshDistributor.H @@ -73,7 +73,7 @@ class faMeshDistributor const mapDistributePolyMesh& distMap_; //- Internal edge mapper - mutable std::unique_ptr<mapDistributeBase> internalEdgeMap_; + mutable std::unique_ptr<mapDistributeBase> internalEdgeMapPtr_; //- Patch edge mappers mutable PtrList<mapDistributeBase> patchEdgeMaps_; @@ -99,6 +99,7 @@ class faMeshDistributor //- Debug: check addressing void checkAddressing() const; + //- Construct reconstruct mapping static mapDistributePolyMesh createReconstructMap ( const faMesh& mesh, diff --git a/src/finiteArea/distributed/faMeshDistributorTemplates.C b/src/finiteArea/distributed/faMeshDistributorTemplates.C index 19ddc494040cda42badc3744459b0a4a18eb6d9f..8df66fe2ab8c12429457ed67d457bbfee5e4df26 100644 --- a/src/finiteArea/distributed/faMeshDistributorTemplates.C +++ b/src/finiteArea/distributed/faMeshDistributorTemplates.C @@ -26,8 +26,8 @@ License \*---------------------------------------------------------------------------*/ #include "Time.H" -#include "emptyFaPatchField.H" -#include "emptyFaePatchField.H" +#include "faPatchFields.H" +#include "faePatchFields.H" #include "IOobjectList.H" #include "polyMesh.H" #include "polyPatch.H" @@ -49,10 +49,6 @@ Foam::faMeshDistributor::distributeField const GeometricField<Type, faPatchField, areaMesh>& fld ) const { - typedef typename - GeometricField<Type, faPatchField, areaMesh>::Patch - PatchFieldType; - if (tgtMesh_.boundary().size() && patchEdgeMaps_.empty()) { createPatchMaps(); @@ -87,7 +83,7 @@ Foam::faMeshDistributor::distributeField // Create patchFields by remote mapping - PtrList<PatchFieldType> newPatchFields(tgtMesh_.boundary().size()); + PtrList<faPatchField<Type>> newPatchFields(tgtMesh_.boundary().size()); const auto& bfld = fld.boundaryField(); @@ -107,11 +103,11 @@ Foam::faMeshDistributor::distributeField newPatchFields.set ( patchi, - PatchFieldType::New + faPatchField<Type>::New ( bfld[patchi], tgtMesh_.boundary()[patchi], - DimensionedField<Type, areaMesh>::null(), + faPatchField<Type>::Internal::null(), mapper ) ); @@ -127,11 +123,11 @@ Foam::faMeshDistributor::distributeField newPatchFields.set ( patchi, - PatchFieldType::New + faPatchField<Type>::New ( - emptyFaPatchField<Type>::typeName, + faPatchFieldBase::emptyType(), tgtMesh_.boundary()[patchi], - DimensionedField<Type, areaMesh>::null() + faPatchField<Type>::Internal::null() ) ); } @@ -158,11 +154,7 @@ Foam::faMeshDistributor::distributeField const GeometricField<Type, faePatchField, edgeMesh>& fld ) const { - typedef typename - GeometricField<Type, faePatchField, edgeMesh>::Patch - PatchFieldType; - - if (!internalEdgeMap_) + if (!internalEdgeMapPtr_) { createInternalEdgeMap(); } @@ -173,7 +165,7 @@ Foam::faMeshDistributor::distributeField const distributedFieldMapper mapper ( labelUList::null(), - *(internalEdgeMap_) + *(internalEdgeMapPtr_) ); DimensionedField<Type, edgeMesh> internalField @@ -197,7 +189,7 @@ Foam::faMeshDistributor::distributeField // Create patchFields by remote mapping - PtrList<PatchFieldType> newPatchFields(tgtMesh_.boundary().size()); + PtrList<faePatchField<Type>> newPatchFields(tgtMesh_.boundary().size()); const auto& bfld = fld.boundaryField(); @@ -217,11 +209,11 @@ Foam::faMeshDistributor::distributeField newPatchFields.set ( patchi, - PatchFieldType::New + faePatchField<Type>::New ( bfld[patchi], tgtMesh_.boundary()[patchi], - DimensionedField<Type, edgeMesh>::null(), + faePatchField<Type>::Internal::null(), mapper ) ); @@ -237,11 +229,11 @@ Foam::faMeshDistributor::distributeField newPatchFields.set ( patchi, - PatchFieldType::New + faePatchField<Type>::New ( - emptyFaePatchField<Type>::typeName, + faePatchFieldBase::emptyType(), tgtMesh_.boundary()[patchi], - DimensionedField<Type, edgeMesh>::null() + faePatchField<Type>::Internal::null() ) ); } diff --git a/src/finiteArea/edgeMesh/edgeFaMesh.H b/src/finiteArea/edgeMesh/edgeFaMesh.H index e726f628810aa8c60b82f12d6f8b02f213817364..214af6a9c746464fa1871fd799297e6cc76260b2 100644 --- a/src/finiteArea/edgeMesh/edgeFaMesh.H +++ b/src/finiteArea/edgeMesh/edgeFaMesh.H @@ -65,25 +65,17 @@ public: GeoMesh<faMesh>(mesh) {} + // Member Functions //- Return size. Number of internal edges - static label size(const Mesh& mesh) - { - return mesh.nInternalEdges(); - } + static label size(const Mesh& mesh) { return mesh.nInternalEdges(); } //- Return size. Number of internal edges - label size() const - { - return size(mesh_); - } + label size() const { return size(mesh_); } //- Field of edge centres - const edgeVectorField& C() const - { - return mesh_.edgeCentres(); - } + const edgeVectorField& C() const { return mesh_.edgeCentres(); } }; diff --git a/src/finiteArea/faMatrices/faMatrix/faMatrix.C b/src/finiteArea/faMatrices/faMatrix/faMatrix.C index 074cc0693a88ec08fc4bf641bba6baacdaab338e..ac90e7101280522ca012ac3d104faa5784bc8f17 100644 --- a/src/finiteArea/faMatrices/faMatrix/faMatrix.C +++ b/src/finiteArea/faMatrices/faMatrix/faMatrix.C @@ -28,12 +28,9 @@ License #include "areaFields.H" #include "edgeFields.H" -#include "calculatedFaPatchFields.H" #include "extrapolatedCalculatedFaPatchFields.H" -#include "zeroGradientFaPatchFields.H" #include "IndirectList.H" #include "UniformList.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -50,7 +47,7 @@ void Foam::faMatrix<Type>::addToInternalField { FatalErrorInFunction << "addressing (" << addr.size() - << ") and field (" << pf.size() << ") are different sizes" << endl + << ") and field (" << pf.size() << ") are different sizes" << abort(FatalError); } @@ -88,7 +85,7 @@ void Foam::faMatrix<Type>::subtractFromInternalField { FatalErrorInFunction << "addressing (" << addr.size() - << ") and field (" << pf.size() << ") are different sizes" << endl + << ") and field (" << pf.size() << ") are different sizes" << abort(FatalError); } @@ -193,8 +190,7 @@ Foam::faMatrix<Type>::faMatrix dimensions_(ds), source_(psi.size(), Zero), internalCoeffs_(psi.mesh().boundary().size()), - boundaryCoeffs_(psi.mesh().boundary().size()), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(psi.mesh().boundary().size()) { DebugInFunction << "constructing faMatrix<Type> for field " << psi_.name() @@ -234,19 +230,17 @@ Foam::faMatrix<Type>::faMatrix(const faMatrix<Type>& fam) dimensions_(fam.dimensions_), source_(fam.source_), internalCoeffs_(fam.internalCoeffs_), - boundaryCoeffs_(fam.boundaryCoeffs_), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(fam.boundaryCoeffs_) { DebugInFunction << "Copying faMatrix<Type> for field " << psi_.name() << endl; if (fam.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, faePatchField, edgeMesh> - ( - *(fam.faceFluxCorrectionPtr_) - ); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *(fam.faceFluxCorrectionPtr_) + ); } } @@ -259,8 +253,7 @@ Foam::faMatrix<Type>::faMatrix(const tmp<faMatrix<Type>>& tmat) dimensions_(tmat().dimensions_), source_(tmat.constCast().source_, tmat.movable()), internalCoeffs_(tmat.constCast().internalCoeffs_, tmat.movable()), - boundaryCoeffs_(tmat.constCast().boundaryCoeffs_, tmat.movable()), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(tmat.constCast().boundaryCoeffs_, tmat.movable()) { DebugInFunction << "Copy/Move faMatrix<Type> for field " << psi_.name() << endl; @@ -269,16 +262,15 @@ Foam::faMatrix<Type>::faMatrix(const tmp<faMatrix<Type>>& tmat) { if (tmat.movable()) { - faceFluxCorrectionPtr_ = tmat().faceFluxCorrectionPtr_; - tmat().faceFluxCorrectionPtr_ = nullptr; + faceFluxCorrectionPtr_ = + std::move(tmat.constCast().faceFluxCorrectionPtr_); } - else + else if (tmat().faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, faePatchField, edgeMesh> - ( - *(tmat().faceFluxCorrectionPtr_) - ); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *(tmat().faceFluxCorrectionPtr_) + ); } } @@ -293,8 +285,6 @@ Foam::faMatrix<Type>::~faMatrix() { DebugInFunction << "Destroying faMatrix<Type> for field " << psi_.name() << endl; - - deleteDemandDrivenData(faceFluxCorrectionPtr_); } @@ -791,9 +781,10 @@ void Foam::faMatrix<Type>::operator=(const faMatrix<Type>& famv) } else if (famv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, faePatchField, edgeMesh> - (*famv.faceFluxCorrectionPtr_); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *famv.faceFluxCorrectionPtr_ + ); } } @@ -838,8 +829,7 @@ void Foam::faMatrix<Type>::operator+=(const faMatrix<Type>& famv) } else if (famv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = new - GeometricField<Type, faePatchField, edgeMesh> + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> ( *famv.faceFluxCorrectionPtr_ ); @@ -872,9 +862,10 @@ void Foam::faMatrix<Type>::operator-=(const faMatrix<Type>& famv) } else if (famv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, faePatchField, edgeMesh> - (-*famv.faceFluxCorrectionPtr_); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + -*famv.faceFluxCorrectionPtr_ + ); } } @@ -1207,7 +1198,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::operator+ ) { checkMethod(A, B, "+"); - tmp<faMatrix<Type>> tC(new faMatrix<Type>(A)); + auto tC = tmp<faMatrix<Type>>::New(A); tC.ref() += B; return tC; } @@ -1262,7 +1253,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::operator- const faMatrix<Type>& A ) { - tmp<faMatrix<Type>> tC(new faMatrix<Type>(A)); + auto tC = tmp<faMatrix<Type>>::New(A); tC.ref().negate(); return tC; } @@ -1288,7 +1279,7 @@ Foam::tmp<Foam::faMatrix<Type>> Foam::operator- ) { checkMethod(A, B, "-"); - tmp<faMatrix<Type>> tC(new faMatrix<Type>(A)); + auto tC = tmp<faMatrix<Type>>::New(A); tC.ref() -= B; return tC; } diff --git a/src/finiteArea/faMatrices/faMatrix/faMatrix.H b/src/finiteArea/faMatrices/faMatrix/faMatrix.H index 47b19d76048d6b0e454716c00176f390d5794413..0b4681537c04c95e2a455c36f334c360bb16a2bd 100644 --- a/src/finiteArea/faMatrices/faMatrix/faMatrix.H +++ b/src/finiteArea/faMatrices/faMatrix/faMatrix.H @@ -46,10 +46,6 @@ Author #include "areaFields.H" #include "edgeFields.H" #include "lduMatrix.H" -#include "tmp.H" -#include "autoPtr.H" -#include "dimensionedTypes.H" -#include "className.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -155,7 +151,7 @@ private: FieldField<Field, Type> boundaryCoeffs_; //- Face flux field for non-orthogonal correction - mutable faceFluxFieldType* faceFluxCorrectionPtr_; + mutable std::unique_ptr<faceFluxFieldType> faceFluxCorrectionPtr_; protected: @@ -357,8 +353,7 @@ public: } //- Declare return type of the faceFluxCorrectionPtr() function - typedef GeometricField<Type, faePatchField, edgeMesh> - *faceFluxFieldPtrType; + typedef std::unique_ptr<faceFluxFieldType> faceFluxFieldPtrType; //- Return pointer to face-flux non-orthogonal correction field faceFluxFieldPtrType& faceFluxCorrectionPtr() @@ -366,6 +361,12 @@ public: return faceFluxCorrectionPtr_; } + //- Set pointer to face-flux non-orthogonal correction field + void faceFluxCorrectionPtr(faceFluxFieldType* flux) + { + faceFluxCorrectionPtr_.reset(flux); + } + //- True if face-flux non-orthogonal correction field exists bool hasFaceFluxCorrection() const noexcept { diff --git a/src/finiteArea/faMatrices/faMatrix/faMatrixSolve.C b/src/finiteArea/faMatrices/faMatrix/faMatrixSolve.C index 87d5ef0e03d90717476d6eb160d52ac195b25dc0..600adc3ce068441fe1644627685bb47cc34248f9 100644 --- a/src/finiteArea/faMatrices/faMatrix/faMatrixSolve.C +++ b/src/finiteArea/faMatrices/faMatrix/faMatrixSolve.C @@ -192,8 +192,8 @@ Foam::SolverPerformance<Type> Foam::faMatrix<Type>::solve() template<class Type> Foam::tmp<Foam::Field<Type>> Foam::faMatrix<Type>::residual() const { - tmp<Field<Type>> tres(new Field<Type>(source_)); - Field<Type>& res = tres().ref(); + auto tres = tmp<Field<Type>>::New(source_); + auto& res = tres().ref(); addBoundarySource(res); diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C index 5df6a43abe8e12dfc5e95a40dc98610d5b730ca6..e770328a70b77a713b826b51ff1cf40ead88dd1f 100644 --- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C +++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,7 +29,6 @@ License #include "faBoundaryMesh.H" #include "faMesh.H" #include "globalIndex.H" -#include "primitiveMesh.H" #include "processorFaPatch.H" #include "wordRes.H" #include "PtrListOps.H" @@ -130,14 +129,14 @@ void Foam::faBoundaryMesh::populate(PtrList<entry>&& entries) } -bool Foam::faBoundaryMesh::readContents(const bool allowOptionalRead) +bool Foam::faBoundaryMesh::readIOcontents(const bool allowOptionalRead) { bool updated = false; PtrList<entry> entries; if ( - isReadRequired() + this->isReadRequired() || (allowOptionalRead && this->isReadOptional() && this->headerOk()) ) { @@ -176,7 +175,7 @@ Foam::faBoundaryMesh::faBoundaryMesh regIOobject(io), mesh_(mesh) { - readContents(false); // allowOptionalRead = false + readIOcontents(false); // allowOptionalRead = false } @@ -217,7 +216,7 @@ Foam::faBoundaryMesh::faBoundaryMesh regIOobject(io), mesh_(fam) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { // Nothing read. Use supplied patches faPatchList& patches = *this; @@ -242,7 +241,7 @@ Foam::faBoundaryMesh::faBoundaryMesh regIOobject(io), mesh_(fam) { - if (!readContents(true)) // allowOptionalRead = true + if (!readIOcontents(true)) // allowOptionalRead = true { populate(std::move(entries)); } @@ -293,7 +292,7 @@ void Foam::faBoundaryMesh::calcGeometry() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -944,7 +943,7 @@ void Foam::faBoundaryMesh::movePoints(const pointField& p) if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -990,7 +989,7 @@ void Foam::faBoundaryMesh::updateMesh() if ( - pBufs.commsType() == Pstream::commsTypes::blocking + pBufs.commsType() == Pstream::commsTypes::buffered || pBufs.commsType() == Pstream::commsTypes::nonBlocking ) { @@ -1059,7 +1058,7 @@ void Foam::faBoundaryMesh::writeEntry(Ostream& os) const void Foam::faBoundaryMesh::writeEntry ( - const keyType& keyword, + const word& keyword, Ostream& os ) const { diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H index 9a147781d5b1fb4ca42e164b6b7a5c27fa9dc9b3..cad29247915e041c506a2ea9db56275d344cd336 100644 --- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H +++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,8 +46,6 @@ Author #include "faPatch.H" #include "labelPair.H" #include "lduInterfacePtrsList.H" -#include "wordList.H" -#include "pointField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -96,7 +94,7 @@ class faBoundaryMesh //- Return true if contents were read //- (controlled by IOobject readOption flags). - bool readContents(const bool allowOptionalRead); + bool readIOcontents(const bool allowOptionalRead); public: @@ -301,7 +299,7 @@ public: //- Write as a primitive entry with given name. //- If the keyword is empty, revert to a plain list. - void writeEntry(const keyType& keyword, Ostream& os) const; + void writeEntry(const word& keyword, Ostream& os) const; //- The writeData member function required by regIOobject virtual bool writeData(Ostream& os) const; diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.C b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.C index 8a075e927df2388f67bed60504c0ced2f0e4c264..2a07f2fd997b49a768d83fe3ecb184e45d88e7fb 100644 --- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.C +++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.C @@ -45,8 +45,7 @@ Foam::faBoundaryMeshEntries::faBoundaryMeshEntries(const IOobject& io) IOobject(io, IOobjectOption::NO_REGISTER) ) { - // readContents() - + // readIOcontents() if (isReadRequired() || (isReadOptional() && headerOk())) { // Read as entries @@ -184,7 +183,7 @@ void Foam::faBoundaryMeshEntries::writeEntry(Ostream& os) const void Foam::faBoundaryMeshEntries::writeEntry ( - const keyType& keyword, + const word& keyword, Ostream& os ) const { diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.H b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.H index c9f85716937e581ed05b988658c3216e56483ae3..ccaebe01acc4b4db6e58454758241e92e6f91bd5 100644 --- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.H +++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMeshEntries.H @@ -108,7 +108,7 @@ public: //- Write as a primitive entry with given name. //- If the keyword is empty, revert to a plain list. - void writeEntry(const keyType& keyword, Ostream& os) const; + void writeEntry(const word& keyword, Ostream& os) const; //- The writeData member function required by regIOobject virtual bool writeData(Ostream& os) const; diff --git a/src/finiteArea/faMesh/faGlobalMeshData/faGlobalMeshData.H b/src/finiteArea/faMesh/faGlobalMeshData/faGlobalMeshData.H index c494e22f535ac4385e1d5951fb22bcb692237f60..ea6da26d7fd22cff137a94a37fc78240782efe7c 100644 --- a/src/finiteArea/faMesh/faGlobalMeshData/faGlobalMeshData.H +++ b/src/finiteArea/faMesh/faGlobalMeshData/faGlobalMeshData.H @@ -77,7 +77,13 @@ class faGlobalMeshData labelList sharedPointAddr_; - // Private Member Functions +public: + + //- Runtime type information + ClassName("faGlobalMeshData"); + + + // Generated Methods //- No copy construct faGlobalMeshData(const faGlobalMeshData&) = delete; @@ -86,12 +92,6 @@ class faGlobalMeshData void operator=(const faGlobalMeshData&) = delete; -public: - - //- Runtime type information - ClassName("faGlobalMeshData"); - - // Constructors //- Construct from mesh diff --git a/src/finiteArea/faMesh/faMesh.C b/src/finiteArea/faMesh/faMesh.C index cfb9e1608cb97abe79d89951eb141d016f376161..1770da3b1e47423e34298281cc55caf1b2542e31 100644 --- a/src/finiteArea/faMesh/faMesh.C +++ b/src/finiteArea/faMesh/faMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -61,29 +61,135 @@ namespace Foam } -const Foam::word Foam::faMesh::prefix("finite-area"); +const Foam::word Foam::faMesh::prefix_("finite-area"); -Foam::word Foam::faMesh::meshSubDir = "faMesh"; +Foam::word Foam::faMesh::meshSubDir("faMesh"); const int Foam::faMesh::quadricsFit_ = 0; // Tuning (experimental) // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // +const Foam::word& Foam::faMesh::prefix() noexcept +{ + return prefix_; +} + + +Foam::fileName Foam::faMesh::dbDir(const word& areaRegion) +{ + if (areaRegion.empty() || areaRegion == polyMesh::defaultRegion) + { + return faMesh::prefix(); + } + + return (faMesh::prefix() / areaRegion); +} + + +Foam::fileName Foam::faMesh::dbDir +( + const word& volRegion, + const word& areaRegion +) +{ + return + ( + polyMesh::regionName(volRegion) + / faMesh::prefix() + / polyMesh::regionName(areaRegion) + ); +} + + +Foam::fileName Foam::faMesh::dbDir +( + const polyMesh& pMesh, + const word& areaRegion +) +{ + return faMesh::dbDir(pMesh.regionName(), areaRegion); +} + + +Foam::fileName Foam::faMesh::meshDir(const word& areaRegion) +{ + if (areaRegion.empty() || areaRegion == polyMesh::defaultRegion) + { + return faMesh::meshSubDir; + } + + return (areaRegion / faMesh::meshSubDir); +} + + +Foam::fileName Foam::faMesh::meshDir +( + const word& volRegion, + const word& areaRegion +) +{ + return + ( + polyMesh::regionName(volRegion) + / faMesh::prefix() + / polyMesh::regionName(areaRegion) + / faMesh::meshSubDir + ); +} + + +Foam::fileName Foam::faMesh::meshDir +( + const polyMesh& pMesh, + const word& areaRegion +) +{ + return faMesh::meshDir(pMesh.regionName(), areaRegion); +} + + const Foam::objectRegistry* Foam::faMesh::registry(const polyMesh& pMesh) { - // This will change in the near future - return &static_cast<const objectRegistry&>(pMesh); + return pMesh.cfindObject<objectRegistry>(faMesh::prefix()); } +// const Foam::objectRegistry* Foam::faMesh::registry(const objectRegistry& obr) +// { +// return obr.cfindObject<objectRegistry>(faMesh::prefix()); +// } + + const Foam::faMesh& Foam::faMesh::mesh ( const polyMesh& pMesh ) { - // This will change in the near future - return pMesh.lookupObject<faMesh>("faMesh"); + return faMesh::mesh(pMesh, polyMesh::defaultRegion); +} + + +const Foam::faMesh& Foam::faMesh::mesh +( + const polyMesh& pMesh, + const word& areaRegion +) +{ + const objectRegistry* obr = faMesh::registry(pMesh); + + if (!obr) + { + // Fallback - not really valid, but will fail at the next stage + obr = &(pMesh.thisDb()); + } + + if (areaRegion.empty()) + { + return obr->lookupObject<faMesh>(polyMesh::defaultRegion); + } + + return obr->lookupObject<faMesh>(areaRegion); } @@ -169,14 +275,12 @@ void Foam::faMesh::checkBoundaryEdgeLabelRange void Foam::faMesh::initPatch() const { - patchPtr_.reset + patchPtr_ = std::make_unique<uindirectPrimitivePatch> ( - new uindirectPrimitivePatch - ( - UIndirectList<face>(mesh().faces(), faceLabels_), - mesh().points() - ) + UIndirectList<face>(mesh().faces(), faceLabels_), + mesh().points() ); + // Could set some basic primitive data here... // nEdges_ = patchPtr_->nEdges(); // nInternalEdges_ = patchPtr_->nInternalEdges(); @@ -253,17 +357,17 @@ void Foam::faMesh::clearGeomNotAreas() const polyPatchFacesPtr_.reset(nullptr); polyPatchIdsPtr_.reset(nullptr); bndConnectPtr_.reset(nullptr); - deleteDemandDrivenData(SPtr_); - deleteDemandDrivenData(patchStartsPtr_); - deleteDemandDrivenData(LePtr_); - deleteDemandDrivenData(magLePtr_); - deleteDemandDrivenData(faceCentresPtr_); - deleteDemandDrivenData(edgeCentresPtr_); - deleteDemandDrivenData(faceAreaNormalsPtr_); - deleteDemandDrivenData(edgeAreaNormalsPtr_); + SPtr_.reset(nullptr); + patchStartsPtr_.reset(nullptr); + LePtr_.reset(nullptr); + magLePtr_.reset(nullptr); + faceCentresPtr_.reset(nullptr); + edgeCentresPtr_.reset(nullptr); + faceAreaNormalsPtr_.reset(nullptr); + edgeAreaNormalsPtr_.reset(nullptr); pointAreaNormalsPtr_.reset(nullptr); - deleteDemandDrivenData(faceCurvaturesPtr_); - deleteDemandDrivenData(edgeTransformTensorsPtr_); + faceCurvaturesPtr_.reset(nullptr); + edgeTransformTensorsPtr_.reset(nullptr); } @@ -272,9 +376,9 @@ void Foam::faMesh::clearGeom() const DebugInFunction << "Clearing geometry" << endl; clearGeomNotAreas(); - deleteDemandDrivenData(S0Ptr_); - deleteDemandDrivenData(S00Ptr_); - deleteDemandDrivenData(correctPatchPointNormalsPtr_); + S0Ptr_.reset(nullptr); + S00Ptr_.reset(nullptr); + correctPatchPointNormalsPtr_.reset(nullptr); } @@ -282,7 +386,7 @@ void Foam::faMesh::clearAddressing() const { DebugInFunction << "Clearing addressing" << endl; - deleteDemandDrivenData(lduPtr_); + lduPtr_.reset(nullptr); } @@ -342,19 +446,85 @@ bool Foam::faMesh::init(const bool doInit) } -Foam::faMesh::faMesh(const polyMesh& pMesh, const Foam::zero) +// * * * * * * * * * * * * * Forwarding Constructors * * * * * * * * * * * * // + +Foam::faMesh::faMesh +( + const word& meshName, + const polyMesh& pMesh, + Foam::zero +) +: + faMesh(meshName, pMesh, labelList()) +{} + + +Foam::faMesh::faMesh +( + const polyMesh& pMesh, + Foam::zero +) +: + faMesh(polyMesh::defaultRegion, pMesh, labelList()) +{} + + +Foam::faMesh::faMesh(const polyMesh& pMesh, const bool doInit) : - faMesh(pMesh, labelList(), static_cast<IOobjectOption>(pMesh)) + faMesh(polyMesh::defaultRegion, pMesh, doInit) {} -Foam::faMesh::faMesh(const faMesh& baseMesh, const Foam::zero) +Foam::faMesh::faMesh +( + const word& meshName, + const faMesh& baseMesh, + Foam::zero +) +: + faMesh(meshName, baseMesh, labelList()) +{} + + +Foam::faMesh::faMesh +( + const faMesh& baseMesh, + Foam::zero +) +: + faMesh(polyMesh::defaultRegion, baseMesh, labelList()) +{} + + +Foam::faMesh::faMesh +( + const word& meshName, + const faMesh& baseMesh, + labelList&& faceLabels +) : faMesh ( + meshName, baseMesh, - labelList(), - IOobjectOption(IOobjectOption::NO_READ, IOobjectOption::NO_WRITE) + std::move(faceLabels), + static_cast<IOobjectOption>(baseMesh.thisDb()) + ) +{} + + +Foam::faMesh::faMesh +( + const faMesh& baseMesh, + labelList&& faceLabels +) +: + faMesh + ( + polyMesh::defaultRegion, + baseMesh, + std::move(faceLabels), + static_cast<IOobjectOption>(baseMesh.thisDb()) ) {} @@ -362,13 +532,78 @@ Foam::faMesh::faMesh(const faMesh& baseMesh, const Foam::zero) Foam::faMesh::faMesh ( const polyMesh& pMesh, + labelList&& faceLabels, + IOobjectOption ioOpt +) +: + faMesh + ( + polyMesh::defaultRegion, + pMesh, + std::move(faceLabels), + ioOpt + ) +{} + + +Foam::faMesh::faMesh +( + const polyMesh& pMesh, + labelList&& faceLabels +) +: + faMesh(polyMesh::defaultRegion, pMesh, std::move(faceLabels)) +{} + + +Foam::faMesh::faMesh +( + const polyPatch& pp, + const bool doInit +) +: + faMesh(polyMesh::defaultRegion, pp, doInit) +{} + + +Foam::faMesh::faMesh +( + const polyMesh& pMesh, + const dictionary& faMeshDefinition, const bool doInit ) : - MeshObject<polyMesh, Foam::UpdateableMeshObject, faMesh>(pMesh), - faSchemes(mesh()), + faMesh + ( + polyMesh::defaultRegion, + pMesh, + faMeshDefinition, + doInit + ) +{} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::faMesh::faMesh +( + const word& meshName, + const polyMesh& pMesh, + const bool doInit +) +: + faMeshRegistry(meshName, pMesh), + faSchemes + ( + faMesh::thisDb(), + IOobjectOption::MUST_READ + ), + faSolution + ( + faMesh::thisDb(), + IOobjectOption::MUST_READ + ), edgeInterpolation(*this), - faSolution(mesh()), faceLabels_ ( IOobject @@ -402,33 +637,7 @@ Foam::faMesh::faMesh *this ), comm_(UPstream::worldComm), - curTimeIndex_(time().timeIndex()), - - patchPtr_(nullptr), - polyPatchFacesPtr_(nullptr), - polyPatchIdsPtr_(nullptr), - bndConnectPtr_(nullptr), - lduPtr_(nullptr), - - SPtr_(nullptr), - S0Ptr_(nullptr), - S00Ptr_(nullptr), - patchStartsPtr_(nullptr), - LePtr_(nullptr), - magLePtr_(nullptr), - faceCentresPtr_(nullptr), - edgeCentresPtr_(nullptr), - faceAreaNormalsPtr_(nullptr), - edgeAreaNormalsPtr_(nullptr), - pointAreaNormalsPtr_(nullptr), - faceCurvaturesPtr_(nullptr), - edgeTransformTensorsPtr_(nullptr), - correctPatchPointNormalsPtr_(nullptr), - globalMeshDataPtr_(nullptr), - - haloMapPtr_(nullptr), - haloFaceCentresPtr_(nullptr), - haloFaceNormalsPtr_(nullptr) + curTimeIndex_(time().timeIndex()) { DebugInFunction << "Creating from IOobject" << endl; @@ -446,7 +655,7 @@ Foam::faMesh::faMesh IOobject rio ( - "name", + "any-name", time().timeName(), faMesh::meshSubDir, faMesh::thisDb(), @@ -459,7 +668,7 @@ Foam::faMesh::faMesh rio.resetHeader("S0"); if (returnReduceOr(rio.typeHeaderOk<regIOobject>(false))) { - S0Ptr_ = new DimensionedField<scalar, areaMesh> + S0Ptr_ = std::make_unique<DimensionedField<scalar, areaMesh>> ( rio, *this, @@ -472,36 +681,89 @@ Foam::faMesh::faMesh Foam::faMesh::faMesh ( + const word& meshName, const polyMesh& pMesh, labelList&& faceLabels ) : - faMesh + faMeshRegistry(meshName, pMesh), + faSchemes ( - pMesh, - std::move(faceLabels), - static_cast<IOobjectOption>(pMesh) - ) -{} + faMesh::thisDb(), + IOobjectOption::MUST_READ + ), + faSolution + ( + faMesh::thisDb(), + IOobjectOption::MUST_READ + ), + edgeInterpolation(*this), + faceLabels_ + ( + IOobject + ( + "faceLabels", + pMesh.facesInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE + ), + std::move(faceLabels) + ), + boundary_ + ( + IOobject + ( + "faBoundary", + faceLabels_.instance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE + ), + *this, + Foam::zero{} + ), + comm_(UPstream::worldComm), + curTimeIndex_(time().timeIndex()) +{ + // Not yet much for primitive mesh data possible... + nPoints_ = 0; + nEdges_ = 0; + nInternalEdges_ = 0; + nFaces_ = faceLabels_.size(); + // TDB: can we make a NO_READ readOption persistent for + // faSchemes/faSolution? Or not needed anymore? +} Foam::faMesh::faMesh ( + const word& meshName, const polyMesh& pMesh, labelList&& faceLabels, IOobjectOption ioOpt ) : - MeshObject<polyMesh, Foam::UpdateableMeshObject, faMesh>(pMesh), - faSchemes(mesh(), ioOpt.readOpt()), + faMeshRegistry(meshName, pMesh), + faSchemes + ( + faMesh::thisDb(), + ioOpt.readOpt() + ), + faSolution + ( + faMesh::thisDb(), + ioOpt.readOpt() + ), edgeInterpolation(*this), - faSolution(mesh(), ioOpt.readOpt()), faceLabels_ ( IOobject ( "faceLabels", - mesh().facesInstance(), + pMesh.facesInstance(), faMesh::meshSubDir, faMesh::thisDb(), IOobject::NO_READ, @@ -514,79 +776,60 @@ Foam::faMesh::faMesh IOobject ( "faBoundary", - mesh().facesInstance(), + faceLabels_.instance(), faMesh::meshSubDir, faMesh::thisDb(), IOobject::NO_READ, IOobject::NO_WRITE ), *this, - label(0) + Foam::zero{} ), comm_(UPstream::worldComm), - curTimeIndex_(time().timeIndex()), - - patchPtr_(nullptr), - polyPatchFacesPtr_(nullptr), - polyPatchIdsPtr_(nullptr), - bndConnectPtr_(nullptr), - lduPtr_(nullptr), - - SPtr_(nullptr), - S0Ptr_(nullptr), - S00Ptr_(nullptr), - patchStartsPtr_(nullptr), - LePtr_(nullptr), - magLePtr_(nullptr), - faceCentresPtr_(nullptr), - edgeCentresPtr_(nullptr), - faceAreaNormalsPtr_(nullptr), - edgeAreaNormalsPtr_(nullptr), - pointAreaNormalsPtr_(nullptr), - faceCurvaturesPtr_(nullptr), - edgeTransformTensorsPtr_(nullptr), - correctPatchPointNormalsPtr_(nullptr), - globalMeshDataPtr_(nullptr), - - haloMapPtr_(nullptr), - haloFaceCentresPtr_(nullptr), - haloFaceNormalsPtr_(nullptr) + curTimeIndex_(time().timeIndex()) { // Not yet much for primitive mesh data possible... nPoints_ = 0; nEdges_ = 0; nInternalEdges_ = 0; nFaces_ = faceLabels_.size(); + + // TDB: can we make a NO_READ readOption persistent for + // faSchemes/faSolution? Or not needed anymore? } +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + Foam::faMesh::faMesh ( + const word& meshName, const faMesh& baseMesh, labelList&& faceLabels, IOobjectOption ioOpt ) : - MeshObject<polyMesh, Foam::UpdateableMeshObject, faMesh>(baseMesh.mesh()), + faMeshRegistry(meshName, baseMesh.mesh()), faSchemes ( faMesh::thisDb(), ioOpt.readOpt(), static_cast<const dictionary*>(baseMesh.hasSchemes()) ), - edgeInterpolation(*this), faSolution ( faMesh::thisDb(), ioOpt.readOpt(), static_cast<const dictionary*>(baseMesh.hasSolution()) ), + edgeInterpolation(*this), faceLabels_ ( IOobject ( "faceLabels", - mesh().facesInstance(), + // Topological instance from polyMesh + baseMesh.mesh().facesInstance(), faMesh::meshSubDir, faMesh::thisDb(), IOobject::NO_READ, @@ -599,43 +842,17 @@ Foam::faMesh::faMesh IOobject ( "faBoundary", - mesh().facesInstance(), + faceLabels_.instance(), faMesh::meshSubDir, faMesh::thisDb(), IOobject::NO_READ, IOobject::NO_WRITE ), *this, - label(0) + Foam::zero{} ), comm_(UPstream::worldComm), - curTimeIndex_(time().timeIndex()), - - patchPtr_(nullptr), - polyPatchFacesPtr_(nullptr), - polyPatchIdsPtr_(nullptr), - bndConnectPtr_(nullptr), - lduPtr_(nullptr), - - SPtr_(nullptr), - S0Ptr_(nullptr), - S00Ptr_(nullptr), - patchStartsPtr_(nullptr), - LePtr_(nullptr), - magLePtr_(nullptr), - faceCentresPtr_(nullptr), - edgeCentresPtr_(nullptr), - faceAreaNormalsPtr_(nullptr), - edgeAreaNormalsPtr_(nullptr), - pointAreaNormalsPtr_(nullptr), - faceCurvaturesPtr_(nullptr), - edgeTransformTensorsPtr_(nullptr), - correctPatchPointNormalsPtr_(nullptr), - globalMeshDataPtr_(nullptr), - - haloMapPtr_(nullptr), - haloFaceCentresPtr_(nullptr), - haloFaceNormalsPtr_(nullptr) + curTimeIndex_(time().timeIndex()) { // Not yet much for primitive mesh data possible... nPoints_ = 0; @@ -645,10 +862,16 @@ Foam::faMesh::faMesh } -Foam::faMesh::faMesh(const polyPatch& pp, const bool doInit) +Foam::faMesh::faMesh +( + const word& meshName, + const polyPatch& pp, + const bool doInit +) : faMesh ( + meshName, pp.boundaryMesh().mesh(), identity(pp.range()) ) @@ -674,6 +897,7 @@ Foam::faMesh::faMesh(const polyPatch& pp, const bool doInit) Foam::faMesh::faMesh ( + const word& meshName, const polyMesh& pMesh, const dictionary& faMeshDefinition, const bool doInit @@ -681,6 +905,7 @@ Foam::faMesh::faMesh : faMesh ( + meshName, pMesh, selectPatchFaces ( @@ -719,7 +944,7 @@ Foam::faMesh::faMesh IOobject rio ( - "name", + "any-name", time().timeName(), faMesh::meshSubDir, faMesh::thisDb(), @@ -732,7 +957,7 @@ Foam::faMesh::faMesh rio.resetHeader("S0"); if (returnReduceOr(rio.typeHeaderOk<regIOobject>(false))) { - S0Ptr_ = new DimensionedField<scalar, areaMesh> + S0Ptr_ = std::make_unique<DimensionedField<scalar, areaMesh>> ( rio, *this, @@ -789,15 +1014,21 @@ Foam::faSolution& Foam::faMesh::solution() } +const Foam::polyMesh& Foam::faMesh::mesh() const +{ + return refCast<const polyMesh>(faMeshRegistry::parent().parent()); +} + + Foam::fileName Foam::faMesh::meshDir() const { - return mesh().dbDir()/faMesh::meshSubDir; + return dbDir()/faMesh::meshSubDir; } const Foam::Time& Foam::faMesh::time() const { - return mesh().time(); + return faMeshRegistry::time(); } @@ -813,21 +1044,9 @@ const Foam::fileName& Foam::faMesh::facesInstance() const } -bool Foam::faMesh::hasDb() const -{ - return true; -} - - -const Foam::objectRegistry& Foam::faMesh::thisDb() const -{ - return mesh().thisDb(); -} - - const Foam::word& Foam::faMesh::regionName() const { - return polyMesh::regionName(thisDb().name()); + return polyMesh::regionName(objectRegistry::name()); } @@ -948,13 +1167,13 @@ Foam::faMesh::S00() const { if (!S00Ptr_) { - S00Ptr_ = new DimensionedField<scalar, areaMesh> + S00Ptr_ = std::make_unique<DimensionedField<scalar, areaMesh>> ( IOobject ( "S00", time().timeName(), - faMesh::thisDb(), + *this, IOobject::NO_READ, IOobject::NO_WRITE ), @@ -994,7 +1213,7 @@ const Foam::vectorField& Foam::faMesh::pointAreaNormals() const { if (!pointAreaNormalsPtr_) { - pointAreaNormalsPtr_.reset(new vectorField(nPoints())); + pointAreaNormalsPtr_ = std::make_unique<vectorField>(nPoints()); calcPointAreaNormals(*pointAreaNormalsPtr_); @@ -1082,13 +1301,13 @@ bool Foam::faMesh::movePoints() { DebugInfo<< "Creating old cell volumes." << endl; - S0Ptr_ = new DimensionedField<scalar, areaMesh> + S0Ptr_ = std::make_unique<DimensionedField<scalar, areaMesh>> ( IOobject ( "S0", time().timeName(), - faMesh::thisDb(), + *this, IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -1140,7 +1359,8 @@ Foam::boolList& Foam::faMesh::correctPatchPointNormals() const { if (!correctPatchPointNormalsPtr_) { - correctPatchPointNormalsPtr_ = new boolList(boundary().size(), false); + correctPatchPointNormalsPtr_ = + std::make_unique<boolList>(boundary().size(), false); } return *correctPatchPointNormalsPtr_; diff --git a/src/finiteArea/faMesh/faMesh.H b/src/finiteArea/faMesh/faMesh.H index ce875b9a794014a3b965e434d864665c3d042a6a..95d564df4c179e4ec03f4eaac174b1d165cea8ef 100644 --- a/src/finiteArea/faMesh/faMesh.H +++ b/src/finiteArea/faMesh/faMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,7 +56,6 @@ Author #ifndef Foam_faMesh_H #define Foam_faMesh_H -#include "MeshObject.H" #include "polyMesh.H" #include "lduMesh.H" #include "faBoundaryMesh.H" @@ -85,17 +84,52 @@ class faMeshLduAddressing; class faMeshMapper; class faPatchData; +/*---------------------------------------------------------------------------*\ + Class faMeshRegistry Declaration +\*---------------------------------------------------------------------------*/ + +//- The objectRegistry for faMesh. +// This is a separate class to ensure it will be fully constructed before +// other data members use it, which ensures that its virtual methods are +// callable during construction (gcc). +class faMeshRegistry +: + public objectRegistry +{ +public: + + // Constructors + + //- Construct an objectRegistry for given area region name. + // Uses faMeshesRegistry internally + faMeshRegistry(const word& areaRegion, const polyMesh& mesh); + + + // Member Functions + + //- True - thisDb() is a valid registry + virtual bool hasDb() const { return true; } + + //- Reference to the mesh database + virtual const objectRegistry& thisDb() const { return *this; } + + //- Local directory path of the objectRegistry relative to Time + //- with override for the single-region case + virtual const fileName& dbDir() const; +}; + + /*---------------------------------------------------------------------------*\ Class faMesh Declaration \*---------------------------------------------------------------------------*/ class faMesh : - public MeshObject<polyMesh, Foam::UpdateableMeshObject, faMesh>, + public faMeshRegistry, public lduMesh, public faSchemes, - public edgeInterpolation, // may need input from faSchemes - public faSolution + public faSolution, + public edgeInterpolation // may need input from faSchemes { // Private (internal) classes/structures @@ -261,52 +295,53 @@ class faMesh mutable std::unique_ptr<List<labelPair>> bndConnectPtr_; //- Ldu addressing data - mutable faMeshLduAddressing* lduPtr_; + mutable std::unique_ptr<faMeshLduAddressing> lduPtr_; // Geometric Data //- Face areas - mutable DimensionedField<scalar, areaMesh>* SPtr_; + mutable std::unique_ptr<DimensionedField<scalar, areaMesh>> SPtr_; //- Face areas old time level - mutable DimensionedField<scalar, areaMesh>* S0Ptr_; + mutable std::unique_ptr<DimensionedField<scalar, areaMesh>> S0Ptr_; //- Face areas old-old time level - mutable DimensionedField<scalar, areaMesh>* S00Ptr_; + mutable std::unique_ptr<DimensionedField<scalar, areaMesh>> S00Ptr_; //- Patch starts in the edge list - mutable labelList* patchStartsPtr_; + mutable std::unique_ptr<labelList> patchStartsPtr_; //- Edge length vectors - mutable edgeVectorField* LePtr_; + mutable std::unique_ptr<edgeVectorField> LePtr_; //- Mag edge length vectors - mutable edgeScalarField* magLePtr_; + mutable std::unique_ptr<edgeScalarField> magLePtr_; //- Face centres - mutable areaVectorField* faceCentresPtr_; + mutable std::unique_ptr<areaVectorField> faceCentresPtr_; //- Edge centres - mutable edgeVectorField* edgeCentresPtr_; + mutable std::unique_ptr<edgeVectorField> edgeCentresPtr_; //- Face area normals - mutable areaVectorField* faceAreaNormalsPtr_; + mutable std::unique_ptr<areaVectorField> faceAreaNormalsPtr_; //- Edge area normals - mutable edgeVectorField* edgeAreaNormalsPtr_; + mutable std::unique_ptr<edgeVectorField> edgeAreaNormalsPtr_; //- Point area normals mutable std::unique_ptr<vectorField> pointAreaNormalsPtr_; //- Face curvatures - mutable areaScalarField* faceCurvaturesPtr_; + mutable std::unique_ptr<areaScalarField> faceCurvaturesPtr_; //- Edge transformation tensors - mutable FieldField<Field, tensor>* edgeTransformTensorsPtr_; + mutable std::unique_ptr<FieldField<Field, tensor>> + edgeTransformTensorsPtr_; //- Whether point normals must be corrected for a patch - mutable boolList* correctPatchPointNormalsPtr_; + mutable std::unique_ptr<boolList> correctPatchPointNormalsPtr_; // Other mesh-related data @@ -326,18 +361,15 @@ class faMesh // Static Private Data + //- The prefix to local: %finite-area + static const word prefix_; + //- Quadrics fit for pointAreaNormals (experimental) static const int quadricsFit_; // Private Member Functions - //- No copy construct - faMesh(const faMesh&) = delete; - - //- No copy assignment - void operator=(const faMesh&) = delete; - //- Set indirect patch, removing any old one. // No communication void initPatch() const; @@ -361,7 +393,7 @@ class faMesh ) const; - // Private member functions to calculate demand driven data + // Private Member Functions to calculate demand driven data //- Calculate ldu addressing void calcLduAddressing() const; @@ -491,11 +523,18 @@ class faMesh // Static Functions //- Test if faSchemes/faSolution files are available - static bool hasSystemFiles(const polyMesh& pMesh); - - //- Test if all files needed for read construction are available - static bool hasFiles(const polyMesh& pMesh); + static bool hasSystemFiles + ( + const word& meshName, + const polyMesh& pMesh + ); + //- Test if mesh files needed for read construction are available + static bool hasMeshFiles + ( + const word& meshName, + const polyMesh& pMesh + ); public: @@ -517,38 +556,45 @@ public: //- Runtime type information TypeName("faMesh"); - //- The prefix to local: %finite-area - static const word prefix; + //- The prefix to the parent registry name: %finite-area + static const word& prefix() noexcept; //- The mesh sub-directory name (usually "faMesh") static word meshSubDir; - // Constructors + // Generated Methods - //- Read construct from polyMesh, using its IOobject properties - explicit faMesh(const polyMesh& pMesh, const bool doInit = true); + //- No copy construct + faMesh(const faMesh&) = delete; + + //- No copy assignment + void operator=(const faMesh&) = delete; + + + // Constructors //- Construct zero-sized from polyMesh // Boundary is added using addFaPatches() member function - faMesh(const polyMesh& pMesh, const Foam::zero); + faMesh(const word& meshName, const polyMesh&, Foam::zero); - //- Construct as copy (for dictionaries) and zero-sized - //- without boundary. + //- Construct zero-sized from polyMesh // Boundary is added using addFaPatches() member function - faMesh(const faMesh& baseMesh, const Foam::zero); + faMesh(const polyMesh&, Foam::zero); - //- Construct as copy (for dictionaries) and faceLabels - //- without boundary, using read properties from baseMesh. - // Boundary is added using addFaPatches() member function - faMesh(const faMesh& baseMesh, labelList&& faceLabels); + //- Read construct from polyMesh, using its IOobject properties + faMesh(const word& meshName, const polyMesh&, const bool doInit = true); - //- Construct as copy (for dictionaries) and faceLabels - //- without boundary, using specified read properties. + //- Read construct from polyMesh, using its IOobject properties + explicit faMesh(const polyMesh&, const bool doInit = true); + + //- Construct from components (face labels) without boundary, + //- using specified read properties. // Boundary is added using addFaPatches() member function. faMesh ( - const faMesh& baseMesh, + const word& meshName, + const polyMesh& pMesh, labelList&& faceLabels, IOobjectOption ioOpt ); @@ -556,21 +602,84 @@ public: //- Construct from components (face labels) without boundary, //- using IOobject properties from polyMesh. // Boundary is added using addFaPatches() member function. - faMesh(const polyMesh& pMesh, labelList&& faceLabels); + faMesh(const word& meshName, const polyMesh&, labelList&& faceLabels); //- Construct from components (face labels) without boundary, //- using specified read properties. // Boundary is added using addFaPatches() member function. + faMesh(const polyMesh&, labelList&& faceLabels, IOobjectOption ioOpt); + + //- Construct from components (face labels) without boundary, + //- using IOobject properties from polyMesh. + // Boundary is added using addFaPatches() member function. + faMesh(const polyMesh&, labelList&& faceLabels); + + //- Construct as copy (for dictionaries) and zero-sized + //- without boundary. + // Boundary is added using addFaPatches() member function + faMesh(const word& meshName, const faMesh& baseMesh, Foam::zero); + + //- Construct as copy (for dictionaries) and zero-sized + //- without boundary, using IOobject properties from polyMesh. + // Boundary is added using addFaPatches() member function + faMesh(const faMesh& baseMesh, Foam::zero); + + //- Construct as copy (for dictionaries) and faceLabels + //- without boundary, using specified read properties. + // Boundary is added using addFaPatches() member function faMesh ( - const polyMesh& pMesh, + const word& meshName, + const faMesh& baseMesh, + labelList&& faceLabels, + IOobjectOption ioOpt + ); + + //- Construct as copy (for dictionaries) and faceLabels + //- without boundary, using specified read properties. + // Boundary is added using addFaPatches() member function + faMesh + ( + const faMesh& baseMesh, labelList&& faceLabels, IOobjectOption ioOpt ); + //- Construct as copy (for dictionaries) and faceLabels + //- without boundary, using IOobject properties from polyMesh. + // Boundary is added using addFaPatches() member function + faMesh + ( + const word& meshName, + const faMesh& baseMesh, + labelList&& faceLabels + ); + + //- Construct as copy (for dictionaries) and faceLabels + //- without boundary, using read properties from baseMesh. + // Boundary is added using addFaPatches() member function + faMesh(const faMesh& baseMesh, labelList&& faceLabels); + + //- Construct from single polyPatch + faMesh + ( + const word& meshName, + const polyPatch& pp, + const bool doInit = true + ); + //- Construct from single polyPatch explicit faMesh(const polyPatch& pp, const bool doInit = true); + //- Construct from definition + faMesh + ( + const word& meshName, + const polyMesh& pMesh, + const dictionary& faMeshDefinition, + const bool doInit = true + ); + //- Construct from definition faMesh ( @@ -602,6 +711,13 @@ public: return old; } + //- Read construction from polyMesh if all files are available + static autoPtr<faMesh> TryNew + ( + const word& meshName, + const polyMesh& pMesh + ); + //- Read construction from polyMesh if all files are available static autoPtr<faMesh> TryNew(const polyMesh& pMesh); @@ -642,8 +758,12 @@ public: //- Uses lookupObject semantics - Fatal if non-existent static const faMesh& mesh(const polyMesh& pMesh); + //- The single-region or specified finite-area region on the polyMesh. + //- Uses lookupObject semantics - Fatal if non-existent + static const faMesh& mesh(const polyMesh&, const word& areaRegion); + //- Return access to polyMesh - inline const polyMesh& mesh() const; + const polyMesh& mesh() const; //- Return the local mesh directory (dbDir()/meshSubDir) fileName meshDir() const; @@ -747,22 +867,64 @@ public: // Database - //- Return true if thisDb() is a valid DB - virtual bool hasDb() const; + //- True - thisDb() is a valid registry + virtual bool hasDb() const { return true; } - //- Return reference to the mesh database - virtual const objectRegistry& thisDb() const; + //- Reference to the mesh database + virtual const objectRegistry& thisDb() const + { + return faMeshRegistry::thisDb(); + } + + //- Local directory path of the objectRegistry relative to Time + //- with override for the single-region case + virtual const fileName& dbDir() const + { + return faMeshRegistry::dbDir(); + } //- Name function is needed to disambiguate those inherited //- from base classes const word& name() const { - return thisDb().name(); + return faMeshRegistry::thisDb().name(); } // Regions + //- Local registry directory path (relative to Time) for specified + //- area mesh (of a single-region volume mesh) + static fileName dbDir(const word& areaRegion); + + //- Local registry directory path (relative to Time) for specified + //- volume mesh and area mesh combination + static fileName dbDir(const word& volRegion, const word& areaRegion); + + //- Local registry directory path (relative to Time) for specified + //- volume mesh and area mesh combination + static fileName dbDir + ( + const polyMesh& pMesh, + const word& areaRegion = word::null + ); + + //- The local mesh directory name (eg, "faMesh") for specified + //- area mesh (of a single-region volume mesh) + static fileName meshDir(const word& areaRegion); + + //- The local mesh directory name (eg, "faMesh") for specified + //- volume mesh and area mesh combination + static fileName meshDir(const word& volRegion, const word& areaRegion); + + //- The local mesh directory name (eg, "faMesh") for specified + //- volume mesh and area mesh combination + static fileName meshDir + ( + const polyMesh& pMesh, + const word& areaRegion = word::null + ); + //- The mesh region name or word::null if polyMesh::defaultRegion const word& regionName() const; diff --git a/src/finiteArea/faMesh/faMeshDemandDrivenData.C b/src/finiteArea/faMesh/faMeshDemandDrivenData.C index 3f94292886eb70bf71225d10ed1b9bbeea8a63d4..66c4bed86ddc346b4516c1b46ced38232d9be54b 100644 --- a/src/finiteArea/faMesh/faMeshDemandDrivenData.C +++ b/src/finiteArea/faMesh/faMeshDemandDrivenData.C @@ -222,7 +222,7 @@ void Foam::faMesh::calcLduAddressing() const << abort(FatalError); } - lduPtr_ = new faMeshLduAddressing(*this); + lduPtr_ = std::make_unique<faMeshLduAddressing>(*this); } @@ -238,7 +238,7 @@ void Foam::faMesh::calcPatchStarts() const << abort(FatalError); } - patchStartsPtr_ = new labelList(boundary().patchStarts()); + patchStartsPtr_ = std::make_unique<labelList>(boundary().patchStarts()); } @@ -254,9 +254,9 @@ void Foam::faMesh::calcWhichPatchFaces() const const polyBoundaryMesh& pbm = mesh().boundaryMesh(); - polyPatchFacesPtr_.reset + polyPatchFacesPtr_ = std::make_unique<List<labelPair>> ( - new List<labelPair>(pbm.whichPatchFace(faceLabels_)) + pbm.whichPatchFace(faceLabels_) ); labelHashSet ids; @@ -278,7 +278,7 @@ void Foam::faMesh::calcWhichPatchFaces() const this->comm() ); - polyPatchIdsPtr_.reset(new labelList(ids.sortedToc())); + polyPatchIdsPtr_ = std::make_unique<labelList>(ids.sortedToc()); } @@ -675,23 +675,22 @@ void Foam::faMesh::calcLe() const << abort(FatalError); } - LePtr_ = - new edgeVectorField + LePtr_ = std::make_unique<edgeVectorField> + ( + IOobject ( - IOobject - ( - "Le", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimLength - // -> calculatedType() - ); + "Le", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimLength + // -> calculatedType() + ); edgeVectorField& Le = *LePtr_; // Need face centres @@ -773,23 +772,21 @@ void Foam::faMesh::calcMagLe() const << abort(FatalError); } - magLePtr_ = - new edgeScalarField + magLePtr_ = std::make_unique<edgeScalarField> + ( + IOobject ( - IOobject - ( - "magLe", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimLength - ); - + "magLe", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimLength + ); edgeScalarField& magLe = *magLePtr_; const pointField& localPoints = points(); @@ -849,24 +846,22 @@ void Foam::faMesh::calcFaceCentres() const << abort(FatalError); } - faceCentresPtr_ = - new areaVectorField + faceCentresPtr_ = std::make_unique<areaVectorField> + ( + IOobject ( - IOobject - ( - "centres", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimLength - // -> calculatedType() - ); - + "centres", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimLength + // -> calculatedType() + ); areaVectorField& centres = *faceCentresPtr_; // Need local points @@ -931,24 +926,22 @@ void Foam::faMesh::calcEdgeCentres() const << abort(FatalError); } - edgeCentresPtr_ = - new edgeVectorField + edgeCentresPtr_ = std::make_unique<edgeVectorField> + ( + IOobject ( - IOobject - ( - "edgeCentres", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimLength - // -> calculatedType() - ); - + "edgeCentres", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimLength + // -> calculatedType() + ); edgeVectorField& centres = *edgeCentresPtr_; // Need local points @@ -996,7 +989,7 @@ void Foam::faMesh::calcS() const << abort(FatalError); } - SPtr_ = new DimensionedField<scalar, areaMesh> + SPtr_ = std::make_unique<DimensionedField<scalar, areaMesh>> ( IOobject ( @@ -1068,23 +1061,21 @@ void Foam::faMesh::calcFaceAreaNormals() const << abort(FatalError); } - faceAreaNormalsPtr_ = - new areaVectorField + faceAreaNormalsPtr_ = std::make_unique<areaVectorField> + ( + IOobject ( - IOobject - ( - "faceAreaNormals", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimless - ); - + "faceAreaNormals", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimless + ); areaVectorField& faceNormals = *faceAreaNormalsPtr_; const pointField& localPoints = points(); @@ -1149,23 +1140,22 @@ void Foam::faMesh::calcEdgeAreaNormals() const << abort(FatalError); } - edgeAreaNormalsPtr_ = - new edgeVectorField + edgeAreaNormalsPtr_ = std::make_unique<edgeVectorField> + ( + IOobject ( - IOobject - ( - "edgeAreaNormals", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimless - // -> calculatedType() - ); + "edgeAreaNormals", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimless + // -> calculatedType() + ); edgeVectorField& edgeAreaNormals = *edgeAreaNormalsPtr_; @@ -1279,23 +1269,21 @@ void Foam::faMesh::calcFaceCurvatures() const << abort(FatalError); } - faceCurvaturesPtr_ = - new areaScalarField + faceCurvaturesPtr_ = std::make_unique<areaScalarField> + ( + IOobject ( - IOobject - ( - "faceCurvatures", - mesh().pointsInstance(), - faMesh::meshSubDir, - faMesh::thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - *this, - dimless/dimLength - ); - + "faceCurvatures", + mesh().pointsInstance(), + faMesh::meshSubDir, + faMesh::thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimless/dimLength + ); areaScalarField& faceCurvatures = *faceCurvaturesPtr_; @@ -1321,7 +1309,8 @@ void Foam::faMesh::calcEdgeTransformTensors() const << abort(FatalError); } - edgeTransformTensorsPtr_ = new FieldField<Field, tensor>(nEdges_); + edgeTransformTensorsPtr_ = + std::make_unique<FieldField<Field, tensor>>(nEdges_); auto& edgeTransformTensors = *edgeTransformTensorsPtr_; // Initialize all transformation tensors @@ -1617,7 +1606,7 @@ void Foam::faMesh::calcPointAreaNormals(vectorField& result) const { UOPstream::write ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::buffered, procPatch.neighbProcNo(), patchPointNormals ); @@ -1629,7 +1618,7 @@ void Foam::faMesh::calcPointAreaNormals(vectorField& result) const { UIPstream::read ( - UPstream::commsTypes::blocking, + UPstream::commsTypes::buffered, procPatch.neighbProcNo(), patchPointNormals ); @@ -1927,7 +1916,7 @@ void Foam::faMesh::calcPointAreaNormalsByQuadricsFit(vectorField& result) const { OPstream toNeighbProc ( - Pstream::commsTypes::blocking, + Pstream::commsTypes::buffered, procPatch.neighbProcNo(), toNgbProcLsPoints.size_bytes() + toNgbProcLsPointStarts.size_bytes() @@ -1956,7 +1945,7 @@ void Foam::faMesh::calcPointAreaNormalsByQuadricsFit(vectorField& result) const { IPstream fromNeighbProc ( - Pstream::commsTypes::blocking, + Pstream::commsTypes::buffered, procPatch.neighbProcNo(), 10*patchPointLabels.size()*sizeof(vector) + fromNgbProcLsPointStarts.size_bytes() diff --git a/src/finiteArea/faMesh/faMeshI.H b/src/finiteArea/faMesh/faMeshI.H index c04646d04caa7b1b1028baeb0d07d7c944ac4c6a..bfa5614d1dc723e041e1bdf74f865c9b152ebade 100644 --- a/src/finiteArea/faMesh/faMeshI.H +++ b/src/finiteArea/faMesh/faMeshI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,13 +28,6 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -inline const Foam::polyMesh& Foam::faMesh::mesh() const -{ - return - MeshObject<polyMesh, Foam::UpdateableMeshObject, faMesh>::mesh(); -} - - inline const Foam::faBoundaryMesh& Foam::faMesh::boundary() const noexcept { return boundary_; diff --git a/src/finiteArea/faMesh/faMeshLduAddressing.H b/src/finiteArea/faMesh/faMeshLduAddressing.H index 28981c11c8b9466d9647e1a451a5151d403b95ea..3e6d41e3e5681ff3c0ad47db9198bb2780229ae0 100644 --- a/src/finiteArea/faMesh/faMeshLduAddressing.H +++ b/src/finiteArea/faMesh/faMeshLduAddressing.H @@ -73,7 +73,9 @@ class faMeshLduAddressing const lduSchedule& patchSchedule_; - // Private Member Functions +public: + + // Generated Methods //- No copy construct faMeshLduAddressing(const faMeshLduAddressing&) = delete; @@ -82,8 +84,6 @@ class faMeshLduAddressing void operator=(const faMeshLduAddressing&) = delete; -public: - // Constructors //- Construct from components diff --git a/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.C b/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.C index e079de2bab53eb9443a94e96af2cb1f60dd3c358..063998113219c05ce9c7ea7a6e638cd4f3083b7f 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.C +++ b/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.C @@ -27,7 +27,6 @@ License #include "faAreaMapper.H" #include "mapPolyMesh.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -38,9 +37,9 @@ void Foam::faAreaMapper::calcAddressing() const newFaceLabelsPtr_ || newFaceLabelsMapPtr_ || directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ - || insertedObjectLabelsPtr_ + || insertedObjectsPtr_ ) { FatalErrorInFunction @@ -61,11 +60,19 @@ void Foam::faAreaMapper::calcAddressing() const // Prepare a list of new face labels and (preliminary) addressing // Note: dimensioned to number of boundary faces of polyMesh - newFaceLabelsPtr_ = new labelList(mesh_.mesh().nBoundaryFaces(), -1); - labelList& newFaceLabels = *newFaceLabelsPtr_; + newFaceLabelsPtr_ = std::make_unique<labelList> + ( + mesh_.mesh().nBoundaryFaces(), + -1 + ); + auto& newFaceLabels = *newFaceLabelsPtr_; - newFaceLabelsMapPtr_ = new labelList(mesh_.mesh().nBoundaryFaces(), -1); - labelList& newFaceLabelsMap = *newFaceLabelsMapPtr_; + newFaceLabelsMapPtr_ = std::make_unique<labelList> + ( + mesh_.mesh().nBoundaryFaces(), + -1 + ); + auto& newFaceLabelsMap = *newFaceLabelsMapPtr_; label nNewFaces = 0; Info<< "Old face list size: " << oldFaces.size() @@ -83,7 +90,7 @@ void Foam::faAreaMapper::calcAddressing() const newFaceLabels[nNewFaces] = reverseFaceMap[oldFaces[faceI]]; newFaceLabelsMap[nNewFaces] = faceI; - nNewFaces++; + ++nNewFaces; } } @@ -92,21 +99,20 @@ void Foam::faAreaMapper::calcAddressing() const { Info<< "Direct"<< endl; // Direct mapping: no further faces to add. Resize list - newFaceLabels.setSize(nNewFaces); + newFaceLabels.resize(nNewFaces); - directAddrPtr_ = new labelList(newFaceLabels.size()); - labelList& addr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList> + ( + labelList::subList(newFaceLabelsMap, nNewFaces) + ); + auto& addr = *directAddrPtr_; // Adjust for creation of a boundary face from an internal face - forAll(addr, faceI) + forAll(addr, facei) { - if (newFaceLabelsMap[faceI] < oldNInternal) - { - addr[faceI] = 0; - } - else + if (addr[facei] < oldNInternal) { - addr[faceI] = newFaceLabelsMap[faceI]; + addr[facei] = 0; } } } @@ -114,17 +120,20 @@ void Foam::faAreaMapper::calcAddressing() const { // There are further faces to add. Prepare interpolation addressing // and weights to full size - interpolationAddrPtr_ = new labelListList(newFaceLabels.size()); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList> + ( + newFaceLabels.size() + ); + auto& addr = *interpAddrPtr_; - weightsPtr_ = new scalarListList(newFaceLabels.size()); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList>(addr.size()); + auto& wght = *weightsPtr_; // Insert single addressing and weights for (label addrI = 0; addrI < nNewFaces; ++addrI) { - addr[addrI] = labelList(1, newFaceLabelsMap[addrI]); - w[addrI] = scalarList(1, scalar(1)); + addr[addrI].resize(1, newFaceLabelsMap[addrI]); + wght[addrI].resize(1, 1.0); } // Pick up faces from points, edges and faces where the origin @@ -132,146 +141,87 @@ void Foam::faAreaMapper::calcAddressing() const // fast lookup // Set of faces previously in the mesh - labelHashSet oldFaceLookup(oldFaces); + const labelHashSet oldFaceLookup(oldFaces); - // Go through faces-from lists and add the ones where all - // old face labels belonged to the faMesh + // Check if master objects are in faMesh + DynamicList<label> validMo(128); - const List<objectMap>& ffp = mpm_.facesFromPointsMap(); - - forAll(ffp, ffpI) + const auto addCheckedObjects = [&](const List<objectMap>& maps) { - // Get addressing - const labelList& mo = ffp[ffpI].masterObjects(); - - // Check if master objects are in faMesh - labelList validMo(mo.size()); - label nValidMo = 0; - - forAll(mo, moI) + for (const objectMap& map : maps) { - if (oldFaceLookup.found(mo[moI])) - { - validMo[nValidMo] = oldFaceLookup[mo[moI]]; - nValidMo++; - } - } - - if (nValidMo > 0) - { - // Some objects found: add face and interpolation to list - newFaceLabels[nNewFaces] = ffp[ffpI].index(); - - // No old face available - newFaceLabelsMap[nNewFaces] = -1; + // Get target index, addressing + const label facei = map.index(); + const labelList& mo = map.masterObjects(); + if (mo.empty()) continue; // safety - // Map from masters, uniform weights - addr[nNewFaces] = validMo; - w[nNewFaces] = scalarList(validMo.size(), 1.0/validMo.size()); + validMo.clear(); + validMo.reserve(mo.size()); - nNewFaces++; - } - } - - const List<objectMap>& ffe = mpm_.facesFromEdgesMap(); - - forAll(ffe, ffeI) - { - // Get addressing - const labelList& mo = ffe[ffeI].masterObjects(); - - // Check if master objects are in faMesh - labelList validMo(mo.size()); - label nValidMo = 0; - - forAll(mo, moI) - { - if (oldFaceLookup.found(mo[moI])) + for (const label obji : mo) { - validMo[nValidMo] = oldFaceLookup[mo[moI]]; - nValidMo++; + if (oldFaceLookup.contains(obji)) + { + validMo.push_back(obji); + } } - } - - if (nValidMo > 0) - { - // Some objects found: add face and interpolation to list - newFaceLabels[nNewFaces] = ffe[ffeI].index(); - - // No old face available - newFaceLabelsMap[nNewFaces] = -1; - // Map from masters, uniform weights - addr[nNewFaces] = validMo; - w[nNewFaces] = scalarList(validMo.size(), 1.0/validMo.size()); - - nNewFaces++; - } - } - - const List<objectMap>& fff = mpm_.facesFromFacesMap(); + if (validMo.size()) + { + // Some objects found: add face and interpolation to list + newFaceLabels[nNewFaces] = facei; - forAll(fff, fffI) - { - // Get addressing - const labelList& mo = fff[fffI].masterObjects(); + // No old face available + newFaceLabelsMap[nNewFaces] = -1; - // Check if master objects are in faMesh - labelList validMo(mo.size()); - label nValidMo = 0; + // Map from masters, uniform weights + addr[nNewFaces] = validMo; + wght[nNewFaces] = + scalarList(validMo.size(), 1.0/validMo.size()); - forAll(mo, moI) - { - if (oldFaceLookup.found(mo[moI])) - { - validMo[nValidMo] = oldFaceLookup[mo[moI]]; - nValidMo++; + ++nNewFaces; } } + }; - if (nValidMo > 0) - { - // Some objects found: add face and interpolation to list - newFaceLabels[nNewFaces] = fff[fffI].index(); - - // No old face available - newFaceLabelsMap[nNewFaces] = -1; - // Map from masters, uniform weights - addr[nNewFaces] = validMo; - w[nNewFaces] = scalarList(validMo.size(), 1.0/validMo.size()); + // Go through faces-from lists and add the ones where all + // old face labels belonged to the faMesh - nNewFaces++; - } + { + addCheckedObjects(mpm_.facesFromPointsMap()); + addCheckedObjects(mpm_.facesFromEdgesMap()); + addCheckedObjects(mpm_.facesFromFacesMap()); } // All faces collected. Reset sizes of lists - newFaceLabels.setSize(nNewFaces); - newFaceLabelsMap.setSize(nNewFaces); - addr.setSize(nNewFaces); - w.setSize(nNewFaces); + newFaceLabels.resize(nNewFaces); + newFaceLabelsMap.resize(nNewFaces); + addr.resize(nNewFaces); + wght.resize(nNewFaces); + Info<< "addr: " << addr << nl - << "w: " << w << endl; + << "wght: " << wght << endl; } // Inserted objects cannot appear in the new faMesh as they have no master // HJ, 10/Aug/2011 - insertedObjectLabelsPtr_ = new labelList(0); + insertedObjectsPtr_ = std::make_unique<labelList>(); } -void Foam::faAreaMapper::clearOut() -{ - deleteDemandDrivenData(newFaceLabelsPtr_); - deleteDemandDrivenData(newFaceLabelsMapPtr_); - - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - - deleteDemandDrivenData(insertedObjectLabelsPtr_); - hasUnmapped_ = false; -} +// void Foam::faAreaMapper::clearOut() +// { +// newFaceLabelsPtr_.reset(nullptr); +// newFaceLabelsMapPtr_.reset(nullptr); +// +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// +// insertedObjectsPtr_.reset(nullptr); +// hasUnmapped_ = false; +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -284,31 +234,16 @@ Foam::faAreaMapper::faAreaMapper : mesh_(mesh), mpm_(mpm), - direct_(false), - hasUnmapped_(false), sizeBeforeMapping_(mesh.nFaces()), - newFaceLabelsPtr_(nullptr), - newFaceLabelsMapPtr_(nullptr), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr), - insertedObjectLabelsPtr_(nullptr) -{ - // Check for possibility of direct mapping - if + direct_ ( - mpm_.facesFromPointsMap().empty() - && mpm_.facesFromEdgesMap().empty() - && mpm_.facesFromFacesMap().empty() - ) - { - direct_ = true; - } - else - { - direct_ = false; - } - + // Mapping without interpolation? + mpm.facesFromPointsMap().empty() + && mpm.facesFromEdgesMap().empty() + && mpm.facesFromFacesMap().empty() + ), + hasUnmapped_(false) +{ // Inserted objects not supported: no master } @@ -316,9 +251,7 @@ Foam::faAreaMapper::faAreaMapper // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::faAreaMapper::~faAreaMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -372,12 +305,12 @@ const Foam::labelListList& Foam::faAreaMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } @@ -401,12 +334,12 @@ const Foam::scalarListList& Foam::faAreaMapper::weights() const const Foam::labelList& Foam::faAreaMapper::insertedObjectLabels() const { - if (!insertedObjectLabelsPtr_) + if (!insertedObjectsPtr_) { calcAddressing(); } - return *insertedObjectLabelsPtr_; + return *insertedObjectsPtr_; } diff --git a/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.H b/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.H index e13c97c6bf649abcfc24080aff0e18c245ce0b1c..bcf404fe44a69a979071d3e0715a11148a9b7e9a 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.H +++ b/src/finiteArea/faMesh/faMeshMapper/faAreaMapper.H @@ -38,14 +38,11 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faAreaMapper_H -#define faAreaMapper_H +#ifndef Foam_faAreaMapper_H +#define Foam_faAreaMapper_H #include "morphFieldMapper.H" #include "faMesh.H" -#include "faceMapper.H" -#include "HashSet.H" -#include "mapPolyMesh.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -60,7 +57,7 @@ class faAreaMapper : public morphFieldMapper { - // Private data + // Private Data //- Reference to mesh mapper const faMesh& mesh_; @@ -68,60 +65,62 @@ class faAreaMapper //- Reference to mapPolyMesh const mapPolyMesh& mpm_; + //- Size before mapping (old mesh size) + const label sizeBeforeMapping_; + //- Is the mapping direct bool direct_; - // Demand-driven private data + // Demand-Driven Data mutable bool hasUnmapped_; - //- Old mesh size - label sizeBeforeMapping_; - //- New face labels after mapping - mutable labelList* newFaceLabelsPtr_; + mutable std::unique_ptr<labelList> newFaceLabelsPtr_; //- New face labels after mapping - mutable labelList* newFaceLabelsMapPtr_; + mutable std::unique_ptr<labelList> newFaceLabelsMapPtr_; //- Direct addressing (only one form of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one form of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; //- Inserted faces - mutable labelList* insertedObjectLabelsPtr_; + mutable std::unique_ptr<labelList> insertedObjectsPtr_; // Private Member Functions + //- Calculate addressing + void calcAddressing() const; + + +public: + + // Generated Methods + //- No copy construct faAreaMapper(const faAreaMapper&) = delete; //- No copy assignment void operator=(const faAreaMapper&) = delete; - //- Calculate addressing - void calcAddressing() const; - //- Clear out local storage - void clearOut(); - - -public: + // Constructors - //- Construct from components - faAreaMapper - ( - const faMesh& mesh, - const mapPolyMesh& mpm - ); + //- Construct from components + faAreaMapper + ( + const faMesh& mesh, + const mapPolyMesh& mpm + ); //- Destructor diff --git a/src/finiteArea/faMesh/faMeshMapper/faBoundaryMeshMapper.H b/src/finiteArea/faMesh/faMeshMapper/faBoundaryMeshMapper.H index 8cb95b33583b6d2be42cd8c664cc04abaed64ea4..f34280b8bddb14c1de2bbe43c56f14e207d589ca 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faBoundaryMeshMapper.H +++ b/src/finiteArea/faMesh/faMeshMapper/faBoundaryMeshMapper.H @@ -31,10 +31,9 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef faBoundaryMeshMapper_H -#define faBoundaryMeshMapper_H +#ifndef Foam_faBoundaryMeshMapper_H +#define Foam_faBoundaryMeshMapper_H -#include "PtrList.H" #include "faPatchMapper.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.C b/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.C index dd0684a39c5a5e982a6852edd7280d2803f7304e..34f90995a7eb53aab27418c61bd07b7b21e4eced 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.C +++ b/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.C @@ -27,7 +27,6 @@ License #include "faEdgeMapper.H" #include "mapPolyMesh.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -43,15 +42,15 @@ void Foam::faEdgeMapper::calcAddressing() const hasUnmapped_ = false; // Dummy mapping: take value from edge 0 - directAddrPtr_ = new labelList(size(), Zero); + directAddrPtr_ = std::make_unique<labelList>(size(), Foam::zero{}); } -void Foam::faEdgeMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - hasUnmapped_ = false; -} +// void Foam::faEdgeMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// hasUnmapped_ = false; +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -62,24 +61,28 @@ Foam::faEdgeMapper::faEdgeMapper const mapPolyMesh& mpm ) : - mesh_(mesh), -// mpm_(mpm), + // currently unused: mesh_(mesh), + // currently unused: mpm_(mpm), + mapperLen_(mesh.nInternalEdges()), sizeBeforeMapping_(mesh.nInternalEdges()), - hasUnmapped_(false), - directAddrPtr_(nullptr) + hasUnmapped_(false) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::faEdgeMapper::~faEdgeMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +Foam::label Foam::faEdgeMapper::size() const +{ + return mapperLen_; +} + + const Foam::labelUList& Foam::faEdgeMapper::directAddressing() const { if (!directAddrPtr_) diff --git a/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.H b/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.H index 267790b7d266a811d5b09c730cbd61703054a5e2..c50f72f6864e4e48ad9106126caba441bd149f73 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.H +++ b/src/finiteArea/faMesh/faMeshMapper/faEdgeMapper.H @@ -39,13 +39,12 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faEdgeMapper_H -#define faEdgeMapper_H +#ifndef Foam_faEdgeMapper_H +#define Foam_faEdgeMapper_H #include "morphFieldMapper.H" #include "faMesh.H" #include "faceMapper.H" -#include "HashSet.H" #include "mapPolyMesh.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -61,49 +60,53 @@ class faEdgeMapper : public morphFieldMapper { - // Private data + // Private Data //- Reference to mesh - const faMesh& mesh_; + // currently unused: const faMesh& mesh_; //- Reference to mapPolyMesh - //const mapPolyMesh& mpm_; + // currently unused: const mapPolyMesh& mpm_; - //- Old mesh size - label sizeBeforeMapping_; + //- The size of the mapper = mesh_.nInternalEdges() + const label mapperLen_; + //- Size before mapping (old mesh size) + const label sizeBeforeMapping_; - // Demand-driven private data + + // Demand-Driven Data mutable bool hasUnmapped_; //- Direct addressing - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; // Private Member Functions + //- Calculate addressing + void calcAddressing() const; + +public: + + // Generated Methods + //- No copy construct faEdgeMapper(const faEdgeMapper&) = delete; //- No copy assignment void operator=(const faEdgeMapper&) = delete; - //- Calculate addressing - void calcAddressing() const; - //- Clear out local storage - void clearOut(); + // Constructors - -public: - - //- Construct from components - faEdgeMapper - ( - const faMesh& mesh, - const mapPolyMesh& mpm - ); + //- Construct from components + faEdgeMapper + ( + const faMesh& mesh, + const mapPolyMesh& mpm + ); //- Destructor @@ -112,11 +115,8 @@ public: // Member Functions - //- Return size - virtual label size() const - { - return mesh_.nInternalEdges(); - } + //- Return mapper size + virtual label size() const; //- Return size of field before mapping virtual label sizeBeforeMapping() const @@ -144,13 +144,13 @@ public: //- Return interpolation weights virtual const scalarListList& weights() const; - //- Are there any inserted faces + //- Are there any inserted edges virtual bool insertedObjects() const { return false; } - //- Return list of inserted faces + //- Return list of inserted edges virtual const labelList& insertedObjectLabels() const { return labelList::null(); diff --git a/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.C b/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.C index aafe6d44f16c14996a2c6a075f88db19bca3e0bb..44ee8f6beb7ad717e9d29d3ca2cc33587c572b1d 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.C +++ b/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.C @@ -40,9 +40,9 @@ Foam::faMeshMapper::faMeshMapper nOldEdges_(mesh.nEdges()), nOldInternalEdges_(mesh.nInternalEdges()), nOldFaces_(mesh.nFaces()), - oldPatchSizes_(mesh.boundary().size(), 0), - oldPatchStarts_(mesh.boundary().size(), -1), - oldPatchEdgeFaces_(mesh.boundary().size()), + oldPatchSizes_(), + oldPatchStarts_(), + oldPatchEdgeFaces_(), areaMap_(mesh, mpm), edgeMap_(mesh, mpm), boundaryMap_(mesh, mpm) @@ -50,6 +50,10 @@ Foam::faMeshMapper::faMeshMapper // Capture old patch information const faBoundaryMesh& patches = mesh.boundary(); + oldPatchSizes_.resize(patches.size()); + oldPatchStarts_.resize(patches.size()); + oldPatchEdgeFaces_.resize(patches.size()); + forAll(patches, patchI) { oldPatchSizes_[patchI] = patches[patchI].size(); diff --git a/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.H b/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.H index aaef4826d8e6326d4de9ad052a1b907297487973..fcdc355b8f32e22e9d68893e3283b3ecb6b00ba9 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.H +++ b/src/finiteArea/faMesh/faMeshMapper/faMeshMapper.H @@ -45,8 +45,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faMeshMapper_H -#define faMeshMapper_H +#ifndef Foam_faMeshMapper_H +#define Foam_faMeshMapper_H #include "faceMapper.H" #include "faAreaMapper.H" @@ -58,7 +58,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes +// Forward Declarations class faMesh; class mapPolyMesh; @@ -68,7 +68,7 @@ class mapPolyMesh; class faMeshMapper { - // Private data + // Private Data //- Reference to mesh const faMesh& mesh_; @@ -110,7 +110,9 @@ class faMeshMapper faBoundaryMeshMapper boundaryMap_; - // Private Member Functions +public: + + // Generated Methods //- No copy construct faMeshMapper(const faMeshMapper&) = delete; @@ -119,8 +121,6 @@ class faMeshMapper void operator=(const faMeshMapper&) = delete; -public: - // Constructors //- Construct from components diff --git a/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.C b/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.C index 569a2c02f38bd35ec80dde76f64c0fb8cc0615d5..88f8393b54abff92a0884e4b1986a925b1d9b389 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.C +++ b/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.C @@ -26,12 +26,7 @@ License \*---------------------------------------------------------------------------*/ #include "faPatchMapper.H" -#include "faPatch.H" -#include "faBoundaryMesh.H" -#include "faMesh.H" #include "mapPolyMesh.H" -#include "faceMapper.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -47,8 +42,8 @@ void Foam::faPatchMapper::calcAddressing() const // Compatibility change HJ, 12/Aug/2017 hasUnmapped_ = false; - directAddrPtr_ = new labelList(patch_.size(), Zero); - labelList& addr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList>(patch_.size(), Foam::zero{}); + auto& addr = *directAddrPtr_; // Make a map of old edgeFaces, giving edge index in patch given the new // face label next to the patch @@ -72,9 +67,11 @@ void Foam::faPatchMapper::calcAddressing() const forAll(ef, efI) { - if (edgeIndexLookup.found(ef[efI])) + const auto iter = edgeIndexLookup.cfind(ef[efI]); + + if (iter.good()) { - addr[efI] = edgeIndexLookup[ef[efI]]; + addr[efI] = iter.val(); } else { @@ -88,11 +85,11 @@ void Foam::faPatchMapper::calcAddressing() const } -void Foam::faPatchMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - hasUnmapped_ = false; -} +// void Foam::faPatchMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// hasUnmapped_ = false; +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -107,17 +104,14 @@ Foam::faPatchMapper::faPatchMapper mpm_(mpm), sizeBeforeMapping_(patch.size()), oldEdgeFaces_(patch.edgeFaces()), - hasUnmapped_(false), - directAddrPtr_(nullptr) + hasUnmapped_(false) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::faPatchMapper::~faPatchMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // diff --git a/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.H b/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.H index 764ecd34a449c0d40118a000949a5a187b81f0c9..cfaf63f44e09ac2a064109dd6e7c7678623911b3 100644 --- a/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.H +++ b/src/finiteArea/faMesh/faMeshMapper/faPatchMapper.H @@ -39,20 +39,19 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faPatchMapper_H -#define faPatchMapper_H +#ifndef Foam_faPatchMapper_H +#define Foam_faPatchMapper_H #include "faPatchFieldMapper.H" #include "faceMapper.H" #include "faPatch.H" -#include "primitiveFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Forward declaration of classes +// Forward Declarations class faPatch; class mapPolyMesh; @@ -64,7 +63,7 @@ class faPatchMapper : public faPatchFieldMapper { - // Private data + // Private Data //- Reference to patch const faPatch& patch_; @@ -79,16 +78,24 @@ class faPatchMapper const labelList oldEdgeFaces_; - // Demand-driven private data + // Demand-Driven Data mutable bool hasUnmapped_; //- Direct addressing - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; // Private Member Functions + //- Calculate addressing for mapping with inserted cells + void calcAddressing() const; + + +public: + + // Generated Methods + //- No copy construct faPatchMapper(const faPatchMapper&) = delete; @@ -96,21 +103,10 @@ class faPatchMapper void operator=(const faPatchMapper&) = delete; - //- Calculate addressing for mapping with inserted cells - void calcAddressing() const; - - //- Clear out local storage - void clearOut(); - - -public: + // Constructors - //- Construct from mappers - faPatchMapper - ( - const faPatch& patch, - const mapPolyMesh& mpm - ); + //- Construct from mappers + faPatchMapper(const faPatch& patch, const mapPolyMesh& mpm); //- Destructor diff --git a/src/finiteArea/faMesh/faMeshNew.C b/src/finiteArea/faMesh/faMeshNew.C index dcc6c2afec5534c5369c7ff9367a41d2d7ccd196..bbbf40b471909a9e199e7e1a0f1a846aae57a72c 100644 --- a/src/finiteArea/faMesh/faMeshNew.C +++ b/src/finiteArea/faMesh/faMeshNew.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,11 +31,34 @@ License // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // -bool Foam::faMesh::hasSystemFiles(const polyMesh& pMesh) +bool Foam::faMesh::hasSystemFiles +( + const word& meshName, + const polyMesh& pMesh +) { // Expect - // - system/faSchemes - // - system/faSolution + // - system/finite-area/<region>/faSchemes + // - system/finite-area/<region>/faSolution + + // The directory relative to polyMesh (not Time) + const fileName relativeDir + ( + faMesh::prefix() / polyMesh::regionName(meshName) + ); + + DebugInfo<< "check system files: " << relativeDir << nl; + + IOobject systemIOobject + ( + "any-name", + pMesh.time().system(), + relativeDir, + pMesh, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); const fileOperation& fp = Foam::fileHandler(); @@ -52,20 +75,14 @@ bool Foam::faMesh::hasSystemFiles(const polyMesh& pMesh) }) ) { + systemIOobject.resetHeader(expect); + fileName found ( fp.filePath ( true, // global - IOobject - ( - expect, - pMesh.time().system(), - pMesh, - IOobject::MUST_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + systemIOobject, expect // typeName (ununsed?) ) ); @@ -83,18 +100,34 @@ bool Foam::faMesh::hasSystemFiles(const polyMesh& pMesh) } -bool Foam::faMesh::hasFiles(const polyMesh& pMesh) +bool Foam::faMesh::hasMeshFiles +( + const word& meshName, + const polyMesh& pMesh +) { - // As well as system/{faSchemes,faSolution} + // As well as system/finite-area/{faSchemes,faSolution} // // expect these: - // - instance/faMesh/faceLabels - // - instance/faMesh/faBoundary + // - instance/finite-area/<region>/faMesh/faceLabels + // - instance/finite-area/<region>/faMesh/faBoundary + - bool looksValid = hasSystemFiles(pMesh); + // Not required... + // bool looksValid = hasSystemFiles(meshName, pMesh); + + bool looksValid = true; + + // The mesh directory relative to polyMesh (not Time) + const fileName relativeDir + ( + faMesh::meshDir(word::null, meshName) + ); if (looksValid) { + DebugInfo<< "check mesh files: " << relativeDir << nl; + const fileOperation& fp = Foam::fileHandler(); // The geometry instance for faMesh/faceLabels @@ -102,11 +135,23 @@ bool Foam::faMesh::hasFiles(const polyMesh& pMesh) const word instance = pMesh.time().findInstance ( - pMesh.dbDir()/faMesh::meshSubDir, + // Searching from Time, so need polyMesh region too + pMesh.regionName()/relativeDir, "faceLabels", IOobject::READ_IF_PRESENT ); + IOobject meshIOobject + ( + "any-name", + instance, + relativeDir, + pMesh, + IOobject::READ_IF_PRESENT, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + for ( const wordPair& expect @@ -120,21 +165,14 @@ bool Foam::faMesh::hasFiles(const polyMesh& pMesh) const word& dataFile = expect.first(); const word& dataClass = expect.second(); + meshIOobject.resetHeader(dataFile); + fileName found ( fp.filePath ( false, // non-global - IOobject - ( - dataFile, - instance, - faMesh::meshSubDir, - pMesh, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + meshIOobject, dataClass // typeName (ununsed?) ) ); @@ -153,15 +191,28 @@ bool Foam::faMesh::hasFiles(const polyMesh& pMesh) } -Foam::autoPtr<Foam::faMesh> Foam::faMesh::TryNew(const polyMesh& pMesh) +Foam::autoPtr<Foam::faMesh> Foam::faMesh::TryNew +( + const word& meshName, + const polyMesh& pMesh +) { - if (faMesh::hasFiles(pMesh)) + if (faMesh::hasMeshFiles(meshName, pMesh)) { - return autoPtr<faMesh>::New(pMesh); + return autoPtr<faMesh>::New(meshName, pMesh); } return nullptr; } +Foam::autoPtr<Foam::faMesh> Foam::faMesh::TryNew +( + const polyMesh& pMesh +) +{ + return TryNew(polyMesh::defaultRegion, pMesh); +} + + // ************************************************************************* // diff --git a/src/finiteArea/faMesh/faMeshPatches.C b/src/finiteArea/faMesh/faMeshPatches.C index 6cf01d2a6258aaf8196fdcd99aedeeb74547e954..11b2ee01e7c44fd28fe3d33979074e005697c8d0 100644 --- a/src/finiteArea/faMesh/faMeshPatches.C +++ b/src/finiteArea/faMesh/faMeshPatches.C @@ -528,8 +528,9 @@ Foam::faPatchList Foam::faMesh::createPatchList } // Create processor-processor definitions - Map<label> procToDefLookup(2*procConnections.size()); + Map<label> procToDefLookup; { + procToDefLookup.reserve(procConnections.size()); faPatchDefs.reserve(faPatchDefs.size() + procConnections.size()); for (const label otherProci : procConnections.sortedToc()) diff --git a/src/finiteArea/faMesh/faMeshRegistry.C b/src/finiteArea/faMesh/faMeshRegistry.C new file mode 100644 index 0000000000000000000000000000000000000000..892156f19ffe1a6725164dbd728052eeeec28d31 --- /dev/null +++ b/src/finiteArea/faMesh/faMeshRegistry.C @@ -0,0 +1,76 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "faMesh.H" +#include "faMeshesRegistry.H" +#include "Time.H" +#include "polyMesh.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::faMeshRegistry::faMeshRegistry +( + const word& areaRegion, + const polyMesh& mesh +) +: + objectRegistry + ( + IOobject + ( + areaRegion, + faMeshesRegistry::New(mesh).thisDb(), + IOobjectOption::NO_READ, + IOobjectOption::AUTO_WRITE, + IOobjectOption::REGISTER + ) + ) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +const Foam::fileName& Foam::faMeshRegistry::dbDir() const +{ + // In the usual case, the objectRegistry::dbDir() will be something + // like finite-area/{region0,film} etc with the "finite-area/" + // prefix coming from the enclosing registry of registries. + // + // So always check the name() portion, not the dbDir() itself + // - either, objectRegistry::dbDir().name() + // - or (same), objectRegistry::name() + + if (objectRegistry::name() == polyMesh::defaultRegion) + { + return objectRegistry::parent().dbDir(); + } + + return objectRegistry::dbDir(); +} + + +// ************************************************************************* // diff --git a/src/finiteArea/faMesh/faMeshSubset/faMeshSubset.H b/src/finiteArea/faMesh/faMeshSubset/faMeshSubset.H index 0617e7e7d6a9ebc32a0c640cb8db5c66f5c6e43b..3c4c3b217f9e9becdc993992ba3b0c412f4328cb 100644 --- a/src/finiteArea/faMesh/faMeshSubset/faMeshSubset.H +++ b/src/finiteArea/faMesh/faMeshSubset/faMeshSubset.H @@ -102,12 +102,6 @@ protected: //- FatalError if subset has not been performed bool checkHasSubMesh() const; - //- No copy construct - faMeshSubset(const faMeshSubset&) = delete; - - //- No copy assignment - void operator=(const faMeshSubset&) = delete; - public: @@ -116,6 +110,14 @@ public: //- Name for exposed internal edges (default: oldInternalEdges) static word exposedPatchName; + // Generated Methods + + //- No copy construct + faMeshSubset(const faMeshSubset&) = delete; + + //- No copy assignment + void operator=(const faMeshSubset&) = delete; + // Constructors diff --git a/src/finiteArea/faMesh/faMeshSubset/faMeshSubsetTemplates.C b/src/finiteArea/faMesh/faMeshSubset/faMeshSubsetTemplates.C index 93340446e483ed9f3d1314d918f790a3d10e3d9c..28a147b7b4a8da836d54dab61916399bfcddb08d 100644 --- a/src/finiteArea/faMesh/faMeshSubset/faMeshSubsetTemplates.C +++ b/src/finiteArea/faMesh/faMeshSubset/faMeshSubsetTemplates.C @@ -60,7 +60,7 @@ Foam::faMeshSubset::interpolate ( faPatchFieldBase::calculatedType(), sMesh.boundary()[patchi], - DimensionedField<Type, areaMesh>::null() + faPatchField<Type>::Internal::null() ) ); } @@ -167,7 +167,7 @@ Foam::faMeshSubset::interpolate ( faePatchFieldBase::calculatedType(), sMesh.boundary()[patchi], - DimensionedField<Type, edgeMesh>::null() + faePatchField<Type>::Internal::null() ) ); } diff --git a/src/finiteArea/faMesh/faMeshTools/faMeshTools.C b/src/finiteArea/faMesh/faMeshTools/faMeshTools.C index d9a346a52d1b97ca005ed5ed4c2b2d2695e5a8c7..439d24fc31e236b205e56dd80efe0defedb03b13 100644 --- a/src/finiteArea/faMesh/faMeshTools/faMeshTools.C +++ b/src/finiteArea/faMesh/faMeshTools/faMeshTools.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,12 +77,10 @@ Foam::faMeshTools::newMesh const bool verbose ) { - // Region name - // ~~~~~~~~~~~ - + // The mesh directory (assuming single area region), relative to Time const fileName meshSubDir ( - pMesh.regionName() / faMesh::meshSubDir + faMesh::meshDir(pMesh, word::null) ); @@ -111,7 +109,7 @@ Foam::faMeshTools::newMesh "faBoundary", facesInstance, meshSubDir, - io.db(), + io.time(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -133,18 +131,18 @@ Foam::faMeshTools::newMesh // Dummy meshes // ~~~~~~~~~~~~ - // Set up to read-if-present. Note: does not search for mesh so set - // instance explicitly + // Fake read-if-present behaviour to obtain the faceLabels IOobject meshIO(io); meshIO.instance() = facesInstance; meshIO.readOpt(IOobject::READ_IF_PRESENT); // For mesh components (faceLabels, ...) - IOobject cmptIO(meshIO, "faceLabels", meshSubDir); + IOobject cmptIO(io.time(), "faceLabels", meshSubDir); + cmptIO.instance() = facesInstance; cmptIO.readOpt(IOobject::MUST_READ); cmptIO.writeOpt(IOobject::NO_WRITE); - cmptIO.registerObject(false); + cmptIO.registerObject(IOobject::NO_REGISTER); // Check who has a mesh @@ -261,12 +259,10 @@ Foam::faMeshTools::loadOrCreateMeshImpl const bool verbose ) { - // Region name - // ~~~~~~~~~~~ - + // The mesh directory (assuming single area region), relative to Time const fileName meshSubDir ( - pMesh.regionName() / faMesh::meshSubDir + faMesh::meshDir(pMesh, word::null) ); @@ -288,7 +284,7 @@ Foam::faMeshTools::loadOrCreateMeshImpl "faBoundary", io.instance(), meshSubDir, - io.db(), + io.time(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -359,7 +355,7 @@ Foam::faMeshTools::loadOrCreateMeshImpl new faMesh ( pMesh, - labelList(), + labelList(), // Similar to Foam::zero{} IOobject(io, IOobject::NO_READ, IOobject::AUTO_WRITE) ) ); diff --git a/src/finiteArea/faMesh/faMeshTools/faMeshTools.H b/src/finiteArea/faMesh/faMeshTools/faMeshTools.H index ee63b1b3053fb0e5d901d5a7bf18c8ef888fd7b4..148494d2a009473bba06a88a09c01f725bf4499d 100644 --- a/src/finiteArea/faMesh/faMeshTools/faMeshTools.H +++ b/src/finiteArea/faMesh/faMeshTools/faMeshTools.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -99,6 +99,7 @@ public: // if not present static autoPtr<faMesh> newMesh ( + //! The IOobject describes the base polyMesh const IOobject& io, const polyMesh& pMesh, const bool masterOnlyReading, @@ -111,6 +112,7 @@ public: // - io.instance() set to facesInstance static autoPtr<faMesh> loadOrCreateMesh ( + //! The IOobject describes the base polyMesh const IOobject& io, const polyMesh& pMesh, const bool decompose, @@ -123,6 +125,7 @@ public: // - io.instance() set to facesInstance static autoPtr<faMesh> loadOrCreateMesh ( + //! The IOobject describes the base polyMesh const IOobject& io, const polyMesh& pMesh, //! Non-null reference if a mesh exists on given processor diff --git a/src/finiteArea/faMesh/faMeshTopology.C b/src/finiteArea/faMesh/faMeshTopology.C index 9c85727b5a143c3929963665a2d52a84b9fe30d8..c9dbb6b130bcd22fb109b77986cc46b39eda64a5 100644 --- a/src/finiteArea/faMesh/faMeshTopology.C +++ b/src/finiteArea/faMesh/faMeshTopology.C @@ -849,9 +849,10 @@ void Foam::faMesh::setBoundaryConnections << abort(FatalError); } - bndConnectPtr_.reset + bndConnectPtr_ = std::make_unique<List<labelPair>> ( - new List<labelPair>(nBoundaryEdges, labelPair(-1,-1)) + nBoundaryEdges, + labelPair(-1,-1) ); auto& bndConnect = *bndConnectPtr_; @@ -989,7 +990,7 @@ const Foam::faMeshBoundaryHalo& Foam::faMesh::boundaryHaloMap() const { if (!haloMapPtr_) { - haloMapPtr_.reset(new faMeshBoundaryHalo(*this)); + haloMapPtr_ = std::make_unique<faMeshBoundaryHalo>(*this); } return *haloMapPtr_; @@ -1022,8 +1023,8 @@ void Foam::faMesh::calcHaloFaceGeometry() const const labelList& inputFaceIds = halo.inputMeshFaces(); - haloFaceCentresPtr_.reset(new pointField); - haloFaceNormalsPtr_.reset(new vectorField); + haloFaceCentresPtr_ = std::make_unique<pointField>(); + haloFaceNormalsPtr_ = std::make_unique<vectorField>(); auto& centres = *haloFaceCentresPtr_; auto& normals = *haloFaceNormalsPtr_; diff --git a/src/finiteArea/faMesh/faMeshesRegistry.C b/src/finiteArea/faMesh/faMeshesRegistry.C new file mode 100644 index 0000000000000000000000000000000000000000..cfdf7128fd5c4265870e7a5ad3882de1661c6240 --- /dev/null +++ b/src/finiteArea/faMesh/faMeshesRegistry.C @@ -0,0 +1,100 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "faMeshesRegistry.H" +#include "faMesh.H" +#include "polyMesh.H" +#include "mapPolyMesh.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeNameAndDebug(faMeshesRegistry, 0); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::faMeshesRegistry::faMeshesRegistry(const polyMesh& mesh) +: + MeshObject_type(mesh), + objects_ + ( + IOobject + ( + faMesh::prefix(), + mesh.time().timeName(), + mesh.thisDb(), + IOobjectOption::NO_READ, + IOobjectOption::AUTO_WRITE, + IOobjectOption::REGISTER + ) + ) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::faMeshesRegistry::movePoints() +{ + for (faMesh& m : objects_.sorted<faMesh>()) + { + m.movePoints(); + } + + return true; +} + + +void Foam::faMeshesRegistry::updateMesh(const mapPolyMesh& mpm) +{ + for (faMesh& m : objects_.sorted<faMesh>()) + { + m.updateMesh(mpm); + } +} + + +bool Foam::faMeshesRegistry::writeObject +( + IOstreamOption streamOpt, + const bool writeOnProc +) const +{ + // for (const faMesh& m : objects_.csorted<faMesh>()) + // { + // m.write(writeOnProc); + // } + // + // return true; + + return objects_.writeObject(streamOpt, writeOnProc); +} + + +// ************************************************************************* // diff --git a/src/finiteArea/faMesh/faMeshesRegistry.H b/src/finiteArea/faMesh/faMeshesRegistry.H new file mode 100644 index 0000000000000000000000000000000000000000..e3b78e7b8c1ecd00f35a68bdf4ca66ce35f5dee3 --- /dev/null +++ b/src/finiteArea/faMesh/faMeshesRegistry.H @@ -0,0 +1,194 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023-2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::faMeshesRegistry + +Description + A MeshObject registry on top of a polyMesh that provides + an objectRegistry for holding multiple faMesh objects. + + Directory structure for fields/meshes (default region): + \verbatim + . + |-- constant + | `-- finite-area + | `-- faMesh + | |-- faceLabels + | |-- ... + | `-- faBoundary + |-- system + | `-- finite-area + | |-- faMeshDefiniton + | |-- faSchemes + | `-- faSolution + `-- instance + `-- finite-area + |-- U + |-- p + `-- ... + \endverbatim + + Directory structure for fields/meshes (multi-regions): + \verbatim + . + |-- constant + | `-- finite-area + | |-- regionName1 + | | `-- faMesh + | | `-- ... + | `-- regionNameN + | `-- faMesh + | `-- ... + |-- system + | `-- finite-area + | |-- regionName1 + | | |-- faMeshDefiniton + | | |-- faSchemes + | | `-- faSolution + | `-- regionNameN + | `-- ... + | + `-- instance + `-- finite-area + |-- regionName1 + | `-- ... + `-- regionNameN + `-- ... + \endverbatim + +SourceFiles + faMeshesRegistry.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_faMeshesRegistry_H +#define Foam_faMeshesRegistry_H + +#include "MeshObject.H" +#include "polyMesh.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +// Forward Declarations +class faMesh; + +/*---------------------------------------------------------------------------*\ + Class faMeshesRegistry Declaration +\*---------------------------------------------------------------------------*/ + +class faMeshesRegistry +: + public MeshObject<polyMesh, UpdateableMeshObject, faMeshesRegistry> +{ + // Data Types + + //- The MeshObject type + typedef MeshObject + < + polyMesh, + UpdateableMeshObject, + faMeshesRegistry + > MeshObject_type; + + + // Private Member Data + + //- The sub-registry of finite-area objects (meshes), + //- anchored on the polyMesh parent. Name: "finite-area", + objectRegistry objects_; + + +public: + + //- Runtime type information. + TypeName("faMeshesRegistry"); + + // Generated Methods + + //- No copy construct + faMeshesRegistry(const faMeshesRegistry&) = delete; + + //- No copy assignment + void operator=(const faMeshesRegistry&) = delete; + + + // Constructors + + //- Construct as singleton on the polyMesh registry + explicit faMeshesRegistry(const polyMesh& mesh); + + + // Database + + //- Return the object registry + const objectRegistry& thisDb() const noexcept + { + return objects_; + } + + //- The polyMesh reference + const polyMesh& mesh() const noexcept + { + return MeshObject_type::mesh(); + } + + + // Topological Change + + //- Is mesh moving - ie, is polyMesh moving + bool moving() const { return MeshObject_type::mesh().moving(); } + + //- Update after mesh motion + virtual bool movePoints(); + + //- Update after topo change + virtual void updateMesh(const mapPolyMesh& mpm); + + + // Write + + //- Write items (eg, faMesh) held in the registry + virtual bool writeObject + ( + IOstreamOption streamOpt, + const bool writeOnProc = true + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/finiteArea/faMesh/faPatches/constraint/cyclic/cyclicFaPatch.C b/src/finiteArea/faMesh/faPatches/constraint/cyclic/cyclicFaPatch.C index f513163190145ed34b40a783942c640bc9f83084..5d0ffcb436fe3931b4b9406c2f6c9eca5d3aa56b 100644 --- a/src/finiteArea/faMesh/faPatches/constraint/cyclic/cyclicFaPatch.C +++ b/src/finiteArea/faMesh/faPatches/constraint/cyclic/cyclicFaPatch.C @@ -27,10 +27,8 @@ License \*---------------------------------------------------------------------------*/ #include "cyclicFaPatch.H" -#include "coupledPolyPatch.H" #include "addToRunTimeSelectionTable.H" #include "transform.H" -#include "faMesh.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/faMesh/faPatches/constraint/processor/processorFaPatch.C b/src/finiteArea/faMesh/faPatches/constraint/processor/processorFaPatch.C index 340403498092bb9e6d87946965d37881a31cd940..c60a08a0ba62a8f41d448e5badbf6e170a90161a 100644 --- a/src/finiteArea/faMesh/faPatches/constraint/processor/processorFaPatch.C +++ b/src/finiteArea/faMesh/faPatches/constraint/processor/processorFaPatch.C @@ -30,7 +30,6 @@ License #include "processorPolyPatch.H" // For newName() #include "addToRunTimeSelectionTable.H" #include "transformField.H" -#include "faBoundaryMesh.H" #include "faMesh.H" #include "globalMeshData.H" diff --git a/src/finiteArea/faMesh/faPatches/constraint/wedge/wedgeFaPatch.C b/src/finiteArea/faMesh/faPatches/constraint/wedge/wedgeFaPatch.C index c6dc0755051ef5a3b03993ca1c8b7fe51d4260c7..8c8e70e661dfbc13f88864bdc3f3a1d224f6022e 100644 --- a/src/finiteArea/faMesh/faPatches/constraint/wedge/wedgeFaPatch.C +++ b/src/finiteArea/faMesh/faPatches/constraint/wedge/wedgeFaPatch.C @@ -28,9 +28,6 @@ License #include "wedgeFaPatch.H" #include "addToRunTimeSelectionTable.H" -#include "faBoundaryMesh.H" -#include "wedgePolyPatch.H" -#include "polyMesh.H" #include "faMesh.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/faMesh/faPatches/faPatch/faPatch.C b/src/finiteArea/faMesh/faPatches/faPatch/faPatch.C index 39c1627d59be1b6ef8775c45d46869f2d8a71bb8..735b9b2224ba3ad7bb9ed176939857ab71803488 100644 --- a/src/finiteArea/faMesh/faPatches/faPatch/faPatch.C +++ b/src/finiteArea/faMesh/faPatches/faPatch/faPatch.C @@ -105,10 +105,7 @@ Foam::faPatch::faPatch patchIdentifier(name, index), labelList(edgeLabels), nbrPolyPatchId_(nbrPolyPatchi), - boundaryMesh_(bm), - edgeFacesPtr_(nullptr), - pointLabelsPtr_(nullptr), - pointEdgesPtr_(nullptr) + boundaryMesh_(bm) { if (constraintType(patchType)) { @@ -129,10 +126,7 @@ Foam::faPatch::faPatch patchIdentifier(name, dict, index), labelList(dict.get<labelList>("edgeLabels")), nbrPolyPatchId_(dict.get<label>("ngbPolyPatchIndex")), - boundaryMesh_(bm), - edgeFacesPtr_(nullptr), - pointLabelsPtr_(nullptr), - pointEdgesPtr_(nullptr) + boundaryMesh_(bm) { if (constraintType(patchType)) { @@ -153,10 +147,7 @@ Foam::faPatch::faPatch patchIdentifier(p, index), labelList(edgeLabels), nbrPolyPatchId_(p.nbrPolyPatchId_), - boundaryMesh_(bm), - edgeFacesPtr_(nullptr), - pointLabelsPtr_(nullptr), - pointEdgesPtr_(nullptr) + boundaryMesh_(bm) {} @@ -331,7 +322,7 @@ void Foam::faPatch::calcPointLabels() const } // Transfer to plain list (reuse storage) - pointLabelsPtr_.reset(new labelList(std::move(dynEdgePoints))); + pointLabelsPtr_ = std::make_unique<labelList>(std::move(dynEdgePoints)); /// const auto& edgePoints = *pointLabelsPtr_; /// @@ -381,7 +372,7 @@ void Foam::faPatch::calcPointEdges() const } // Flatten to regular list - pointEdgesPtr_.reset(new labelListList(edgePoints.size())); + pointEdgesPtr_ = std::make_unique<labelListList>(edgePoints.size()); auto& pEdges = *pointEdgesPtr_; forAll(pEdges, pointi) @@ -441,12 +432,9 @@ const Foam::labelUList& Foam::faPatch::edgeFaces() const { if (!edgeFacesPtr_) { - edgeFacesPtr_.reset + edgeFacesPtr_ = std::make_unique<labelList::subList> ( - new labelList::subList - ( - patchSlice(boundaryMesh().mesh().edgeOwner()) - ) + patchSlice(boundaryMesh().mesh().edgeOwner()) ); } @@ -520,11 +508,9 @@ void Foam::faPatch::makeDeltaCoeffs(scalarField& dc) const void Foam::faPatch::makeCorrectionVectors(vectorField& k) const { - vectorField unitDelta(delta()/mag(delta())); - vectorField edgeNormMag(edgeNormals()/mag(edgeNormals())); - scalarField dn(edgeNormals() & delta()); + const vectorField unitDelta(delta()/mag(delta())); - k = edgeNormMag - (scalar(1)/(unitDelta & edgeNormMag))*unitDelta; + k = edgeNormals() - (scalar(1)/(unitDelta & edgeNormals()))*unitDelta; } diff --git a/src/finiteArea/faSolution/faSolution.H b/src/finiteArea/faSolution/faSolution.H index ded55b74311ae32b6c73c4816c6a97d6e962b65b..c3e4772b0d3d67e1602ee2db14481290c26f7296 100644 --- a/src/finiteArea/faSolution/faSolution.H +++ b/src/finiteArea/faSolution/faSolution.H @@ -61,11 +61,13 @@ class faSolution { public: - //- No copy construct - faSolution(const faSolution&) = delete; + // Generated Methods - //- No copy assignment - void operator=(const faSolution&) = delete; + //- No copy construct + faSolution(const faSolution&) = delete; + + //- No copy assignment + void operator=(const faSolution&) = delete; // Constructors diff --git a/src/finiteArea/fields/areaFields/areaFields.H b/src/finiteArea/fields/areaFields/areaFields.H index eedec105a2fd1129dba7094370c1adf391a7c59f..22ce54161aacb38f32016c051a79d34a1e4813c4 100644 --- a/src/finiteArea/fields/areaFields/areaFields.H +++ b/src/finiteArea/fields/areaFields/areaFields.H @@ -47,7 +47,6 @@ SourceFiles #include "faMesh.H" #include "faPatchFields.H" #include "areaFieldsFwd.H" -#include "calculatedFaPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/fields/areaFields/areaFieldsFwd.H b/src/finiteArea/fields/areaFields/areaFieldsFwd.H index 202298c2d3bb866445e4680d73d7743bc06a6f39..382bb0bba95987f767e47feab2485d8dbc75b23a 100644 --- a/src/finiteArea/fields/areaFields/areaFieldsFwd.H +++ b/src/finiteArea/fields/areaFields/areaFieldsFwd.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,23 +36,13 @@ SourceFiles #define Foam_areaFieldsFwd_H #include "fieldTypes.H" +#include "GeometricFieldFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Geometric internal field -template<class Type, class GeoMesh> class DimensionedField; - -// Geometric boundary field -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricBoundaryField; - -// Geometric field (internal + boundary) -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Forward Declarations @@ -75,12 +65,25 @@ using AreaInternalField = DimensionedField<Type, areaMesh>; // Typedefs -typedef GeometricField<scalar, faPatchField, areaMesh> areaScalarField; -typedef GeometricField<vector, faPatchField, areaMesh> areaVectorField; -typedef GeometricField<sphericalTensor, faPatchField, areaMesh> +typedef + GeometricField<scalar, faPatchField, areaMesh> + areaScalarField; + +typedef + GeometricField<vector, faPatchField, areaMesh> + areaVectorField; + +typedef + GeometricField<sphericalTensor, faPatchField, areaMesh> areaSphericalTensorField; -typedef GeometricField<symmTensor, faPatchField, areaMesh> areaSymmTensorField; -typedef GeometricField<tensor, faPatchField, areaMesh> areaTensorField; + +typedef + GeometricField<symmTensor, faPatchField, areaMesh> + areaSymmTensorField; + +typedef + GeometricField<tensor, faPatchField, areaMesh> + areaTensorField; /*---------------------------------------------------------------------------*\ diff --git a/src/finiteArea/fields/edgeFields/edgeFields.H b/src/finiteArea/fields/edgeFields/edgeFields.H index 974dfc7d0a984e3eb117ff6e975d9f55f894abca..73c95fb2d7adaca1d86e7e0a1619ec93a18ca2dd 100644 --- a/src/finiteArea/fields/edgeFields/edgeFields.H +++ b/src/finiteArea/fields/edgeFields/edgeFields.H @@ -48,7 +48,6 @@ SourceFiles #include "faMesh.H" #include "faePatchFields.H" #include "edgeFieldsFwd.H" -#include "calculatedFaePatchFields.H" #endif diff --git a/src/finiteArea/fields/edgeFields/edgeFieldsFwd.H b/src/finiteArea/fields/edgeFields/edgeFieldsFwd.H index e8ead27a34b9ef4f374045c4170524ee85367be5..d0bdec0e25006ed0c0fd4ab68cb211b104886115 100644 --- a/src/finiteArea/fields/edgeFields/edgeFieldsFwd.H +++ b/src/finiteArea/fields/edgeFields/edgeFieldsFwd.H @@ -35,16 +35,13 @@ Description #define Foam_edgeFieldsFwd_H #include "fieldTypes.H" +#include "GeometricFieldFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Geometric field (internal + boundary) -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Forward Declarations @@ -60,12 +57,25 @@ template<class Type> class faePatchField; // Typedefs -typedef GeometricField<scalar, faePatchField, edgeMesh> edgeScalarField; -typedef GeometricField<vector, faePatchField, edgeMesh> edgeVectorField; -typedef GeometricField<sphericalTensor, faePatchField, edgeMesh> +typedef + GeometricField<scalar, faePatchField, edgeMesh> + edgeScalarField; + +typedef + GeometricField<vector, faePatchField, edgeMesh> + edgeVectorField; + +typedef + GeometricField<sphericalTensor, faePatchField, edgeMesh> edgeSphericalTensorField; -typedef GeometricField<symmTensor, faePatchField, edgeMesh> edgeSymmTensorField; -typedef GeometricField<tensor, faePatchField, edgeMesh> edgeTensorField; + +typedef + GeometricField<symmTensor, faePatchField, edgeMesh> + edgeSymmTensorField; + +typedef + GeometricField<tensor, faePatchField, edgeMesh> + edgeTensorField; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/fields/faPatchFields/basic/basicSymmetry/basicSymmetryFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/basicSymmetry/basicSymmetryFaPatchField.H index 8e29f1b3bf91cf9ce0650ff9b5fde645455d1981..8ff67f1b0c7c24287d46338c5b2db8e83011bb70 100644 --- a/src/finiteArea/fields/faPatchFields/basic/basicSymmetry/basicSymmetryFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/basicSymmetry/basicSymmetryFaPatchField.H @@ -95,15 +95,6 @@ public: const basicSymmetryFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new basicSymmetryFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference basicSymmetryFaPatchField ( @@ -111,20 +102,23 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new basicSymmetryFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions // Evaluation functions @@ -136,11 +130,17 @@ public: // HJ, 30/Jun/2009 virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal virtual tmp<Field<Type>> snGradTransformDiag() const; + + + // Member Operators + + //- Inherit assignment operators + using transformFaPatchField<Type>::operator=; }; diff --git a/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.C b/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.C index 4f8eefa33c310b5d6134796f49ec18f8f26f85f3..53b7f314f1835c04397ab9c9cd102ebc0ae6a381 100644 --- a/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.C @@ -90,19 +90,19 @@ Foam::calculatedFaPatchField<Type>::calculatedFaPatchField template<class Type> -template<class AnyType> -Foam::tmp<Foam::faPatchField<Type>> Foam::faPatchField<Type>::NewCalculatedType +Foam::tmp<Foam::faPatchField<Type>> +Foam::faPatchField<Type>::NewCalculatedType ( - const faPatchField<AnyType>& pf + const faPatch& p ) { - auto* patchTypeCtor = patchConstructorTable(pf.patch().type()); + auto* patchTypeCtor = patchConstructorTable(p.type()); if (patchTypeCtor) { return patchTypeCtor ( - pf.patch(), + p, DimensionedField<Type, areaMesh>::null() ); } @@ -112,7 +112,7 @@ Foam::tmp<Foam::faPatchField<Type>> Foam::faPatchField<Type>::NewCalculatedType ( new calculatedFaPatchField<Type> ( - pf.patch(), + p, DimensionedField<Type, areaMesh>::null() ) ); @@ -120,6 +120,18 @@ Foam::tmp<Foam::faPatchField<Type>> Foam::faPatchField<Type>::NewCalculatedType } +template<class Type> +template<class AnyType> +Foam::tmp<Foam::faPatchField<Type>> +Foam::faPatchField<Type>::NewCalculatedType +( + const faPatchField<AnyType>& pf +) +{ + return NewCalculatedType(pf.patch()); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.H index 9f180b65f2187a6316b21e4651ed4d55357e0fe7..07f612924d528f70f778e6d228cac4546d4c1d94 100644 --- a/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/calculated/calculatedFaPatchField.H @@ -97,15 +97,6 @@ public: const calculatedFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new calculatedFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference calculatedFaPatchField ( @@ -113,16 +104,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new calculatedFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faPatchFields/basic/coupled/coupledFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/coupled/coupledFaPatchField.H index 0c6232d962053898dbf8d9826ca5530db5c331f9..e305d5ed9e84a66497619dfbbbc64cacff47f6e1 100644 --- a/src/finiteArea/fields/faPatchFields/basic/coupled/coupledFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/coupled/coupledFaPatchField.H @@ -108,9 +108,6 @@ public: const coupledFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference coupledFaPatchField ( @@ -118,6 +115,9 @@ public: const DimensionedField<Type, areaMesh>& ); + //- Return clone + virtual tmp<faPatchField<Type>> clone() const = 0; + //- Construct and return a clone virtual tmp<faPatchField<Type>> clone ( @@ -162,7 +162,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) { initEvaluate(commsType); @@ -172,7 +172,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) { evaluate(commsType); diff --git a/src/finiteArea/fields/faPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFaPatchField.H index c326fe3d63a365e847ee7296ca4226eec7df0d52..e0c0f8c0c41923d52aea8b85d8f07671ba748214 100644 --- a/src/finiteArea/fields/faPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFaPatchField.H @@ -108,15 +108,6 @@ public: const extrapolatedCalculatedFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new extrapolatedCalculatedFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference extrapolatedCalculatedFaPatchField ( @@ -124,16 +115,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new extrapolatedCalculatedFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -142,7 +136,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/finiteArea/fields/faPatchFields/basic/fixedGradient/fixedGradientFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/fixedGradient/fixedGradientFaPatchField.H index abedc113279bbbf391b7380361111afbcbcf2a60..f8156670d329a39ebe317a865ca56677a9df5012 100644 --- a/src/finiteArea/fields/faPatchFields/basic/fixedGradient/fixedGradientFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/fixedGradient/fixedGradientFaPatchField.H @@ -144,15 +144,6 @@ public: const fixedGradientFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new fixedGradientFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedGradientFaPatchField ( @@ -160,16 +151,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new fixedGradientFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -216,7 +210,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); diff --git a/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.C b/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.C index 728fa8e89b12a681cffb7ecf543b30951ffd7fc8..f4d1e26592db3e0f8246c75b972c70ef1a3af1ca 100644 --- a/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.C @@ -108,10 +108,7 @@ Foam::fixedValueFaPatchField<Type>::valueInternalCoeffs const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } diff --git a/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.H index b99f739ee9de0b06b945f31f0818bf439138b925..fa3f891e13ac5efab5c86ba835c08dad9b21f197 100644 --- a/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/fixedValue/fixedValueFaPatchField.H @@ -106,15 +106,6 @@ public: const fixedValueFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new fixedValueFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedValueFaPatchField ( @@ -122,16 +113,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new fixedValueFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faPatchFields/basic/mixed/mixedFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/mixed/mixedFaPatchField.H index f4d0bdbab504c786df6fa6759d950a6fd5551b75..325136fe19e33a33776a706da0f4cca478e9e06a 100644 --- a/src/finiteArea/fields/faPatchFields/basic/mixed/mixedFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/mixed/mixedFaPatchField.H @@ -144,15 +144,6 @@ public: const mixedFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new mixedFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference mixedFaPatchField ( @@ -160,16 +151,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new mixedFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -237,7 +231,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the diff --git a/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.C b/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.C index becbcfcf051b0ed31554e54e752fa4f8dce650ab..650beb7daa87064dec3625c04bdb838d1f4c829d 100644 --- a/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.C @@ -111,47 +111,14 @@ Foam::slicedFaPatchField<Type>::slicedFaPatchField } -template<class Type> -Foam::tmp<Foam::faPatchField<Type>> -Foam::slicedFaPatchField<Type>::clone() const -{ - return tmp<faPatchField<Type>> - ( - new slicedFaPatchField<Type>(*this) - ); -} - - template<class Type> Foam::slicedFaPatchField<Type>::slicedFaPatchField ( const slicedFaPatchField<Type>& ptf ) : - faPatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>() - ) -{ - // Transfer the slice from the argument - UList<Type>::shallowCopy(ptf); -} - - -template<class Type> -Foam::tmp<Foam::faPatchField<Type>> -Foam::slicedFaPatchField<Type>::clone -( - const DimensionedField<Type, areaMesh>& iF -) const -{ - return tmp<faPatchField<Type>> - ( - new slicedFaPatchField<Type>(*this, iF) - ); -} + slicedFaPatchField<Type>(ptf, ptf.internalField()) +{} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // @@ -160,7 +127,7 @@ template<class Type> Foam::slicedFaPatchField<Type>::~slicedFaPatchField() { // Set to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + UList<Type>::shallowCopy(nullptr); } @@ -170,8 +137,7 @@ template<class Type> Foam::tmp<Foam::Field<Type>> Foam::slicedFaPatchField<Type>::snGrad() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -180,8 +146,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFaPatchField<Type>::patchInternalField() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -200,8 +165,7 @@ Foam::slicedFaPatchField<Type>::patchNeighbourField ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -210,8 +174,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFaPatchField<Type>::patchNeighbourField() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -223,8 +186,7 @@ Foam::slicedFaPatchField<Type>::valueInternalCoeffs ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -236,8 +198,7 @@ Foam::slicedFaPatchField<Type>::valueBoundaryCoeffs ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -246,8 +207,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFaPatchField<Type>::gradientInternalCoeffs() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -256,8 +216,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFaPatchField<Type>::gradientBoundaryCoeffs() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } diff --git a/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.H index 8afba50b8e3213e9f365d002c80c12910b33685d..20fb84322768626a9a1c8dbac1176f15c7d0c017 100644 --- a/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/sliced/slicedFaPatchField.H @@ -95,7 +95,8 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- Not implemented slicedFaPatchField ( const faPatch&, @@ -103,8 +104,8 @@ public: const dictionary& ); - //- Construct by mapping the given sliced patch field - //- onto a new patch + //- Construct by mapping the given patch field onto a new patch. + //- Not implemented slicedFaPatchField ( const slicedFaPatchField<Type>&, @@ -116,9 +117,6 @@ public: //- Construct as copy slicedFaPatchField(const slicedFaPatchField<Type>&); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const; - //- Construct as copy setting internal field reference slicedFaPatchField ( @@ -126,15 +124,24 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF - ) const; + ) const + { + return faPatchField<Type>::Clone(*this, iF); + } - //- Destructor - virtual ~slicedFaPatchField<Type>(); + //- Destructor, resets pointers to avoid deletion of underlying field + virtual ~slicedFaPatchField(); // Member Functions @@ -171,7 +178,7 @@ public: virtual void initEvaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -179,7 +186,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteArea/fields/faPatchFields/basic/transform/transformFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/transform/transformFaPatchField.H index 7915ed2fc14f229712b8a3d8db5bd23f2a638599..f4515b6a59a9d4c05cfb3a597492fc8c70a12407 100644 --- a/src/finiteArea/fields/faPatchFields/basic/transform/transformFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/transform/transformFaPatchField.H @@ -92,9 +92,6 @@ public: const faPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference transformFaPatchField ( @@ -102,6 +99,9 @@ public: const DimensionedField<Type, areaMesh>& ); + //- Return clone + virtual tmp<faPatchField<Type>> clone() const = 0; + //- Construct and return a clone setting internal field reference virtual tmp<faPatchField<Type>> clone ( diff --git a/src/finiteArea/fields/faPatchFields/basic/zeroGradient/zeroGradientFaPatchField.H b/src/finiteArea/fields/faPatchFields/basic/zeroGradient/zeroGradientFaPatchField.H index ba4a9dff763954aff75a63932c333d25a3ec76ea..298fd742fc52236e274a304cdaa139be00b6c14f 100644 --- a/src/finiteArea/fields/faPatchFields/basic/zeroGradient/zeroGradientFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/basic/zeroGradient/zeroGradientFaPatchField.H @@ -96,15 +96,6 @@ public: const zeroGradientFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new zeroGradientFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference zeroGradientFaPatchField ( @@ -112,16 +103,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new zeroGradientFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -139,7 +133,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the diff --git a/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.C b/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.C index 8aa6296aa070fc2d64e6174c1e091c010209942d..7a7812056c20fe80e4fe94862374747e8beae77c 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.C @@ -92,7 +92,7 @@ Foam::cyclicFaPatchField<Type>::cyclicFaPatchField if (IOobjectOption::isReadRequired(requireValue)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } @@ -130,8 +130,8 @@ Foam::cyclicFaPatchField<Type>::patchNeighbourField() const const Field<Type>& iField = this->primitiveField(); const labelUList& faceCells = cyclicPatch_.faceCells(); - tmp<Field<Type>> tpnf(new Field<Type>(this->size())); - Field<Type>& pnf = tpnf.ref(); + auto tpnf = tmp<Field<Type>>::New(this->size()); + auto& pnf = tpnf.ref(); const label sizeby2 = this->size()/2; diff --git a/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.H b/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.H index 359800d18cd52ccef2bba60c02da544aa789232c..7a6f8e158cdaded6a22266c391326503fe454aee 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/constraint/cyclic/cyclicFaPatchField.H @@ -68,7 +68,7 @@ class cyclicFaPatchField const cyclicFaPatch& cyclicPatch_; - // Private member functions + // Private Member Functions //- Return neighbour side field given internal fields template<class Type2> @@ -118,15 +118,6 @@ public: const cyclicFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new cyclicFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicFaPatchField ( @@ -134,16 +125,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new cyclicFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.C b/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.C index b7cc020fe8bda6221a261270de1d5b9bf14556b8..a011455ef275fe2c35105f8092eb75fd3a8ced8e 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.C @@ -38,7 +38,7 @@ Foam::emptyFaPatchField<Type>::emptyFaPatchField const DimensionedField<Type, areaMesh>& iF ) : - faPatchField<Type>(p, iF, Field<Type>()) + faPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field {} @@ -51,7 +51,7 @@ Foam::emptyFaPatchField<Type>::emptyFaPatchField const faPatchFieldMapper& ) : - faPatchField<Type>(p, iF, Field<Type>()) + faPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { if (!isType<emptyFaPatch>(p)) { @@ -74,8 +74,11 @@ Foam::emptyFaPatchField<Type>::emptyFaPatchField const dictionary& dict ) : - faPatchField<Type>(p, iF, Field<Type>()) + faPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { + // Empty means empty, so no patchType override + // with faPatchFieldBase::readDict(dict); + if (!isA<emptyFaPatch>(p)) { FatalIOErrorInFunction(dict) @@ -92,21 +95,21 @@ Foam::emptyFaPatchField<Type>::emptyFaPatchField template<class Type> Foam::emptyFaPatchField<Type>::emptyFaPatchField ( - const emptyFaPatchField<Type>& ptf + const emptyFaPatchField<Type>& ptf, + const DimensionedField<Type, areaMesh>& iF ) : - faPatchField<Type>(ptf.patch(), ptf.internalField(), Field<Type>()) + faPatchField<Type>(ptf.patch(), iF, Field<Type>()) // zero-sized {} template<class Type> Foam::emptyFaPatchField<Type>::emptyFaPatchField ( - const emptyFaPatchField<Type>& ptf, - const DimensionedField<Type, areaMesh>& iF + const emptyFaPatchField<Type>& ptf ) : - faPatchField<Type>(ptf.patch(), iF, Field<Type>()) + emptyFaPatchField<Type>(ptf, ptf.internalField()) {} @@ -134,4 +137,14 @@ void Foam::emptyFaPatchField<Type>::updateCoeffs() } +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::emptyFaPatchField<Type>::write(Ostream& os) const +{ + faPatchField<Type>::write(os); + // Never write "value" +} + + // ************************************************************************* // diff --git a/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.H b/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.H index f21c228ad6cdfdf50c642e5c33d8d1f531c9d22e..cd7d1febbe040c97e5df5e05d1dc22c98a2c35f5 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/constraint/empty/emptyFaPatchField.H @@ -38,8 +38,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef emptyFaPatchField_H -#define emptyFaPatchField_H +#ifndef Foam_emptyFaPatchField_H +#define Foam_emptyFaPatchField_H #include "faPatchField.H" #include "emptyFaPatch.H" @@ -74,7 +74,8 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. emptyFaPatchField ( const faPatch&, @@ -97,15 +98,6 @@ public: const emptyFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new emptyFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference emptyFaPatchField ( @@ -113,16 +105,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new emptyFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -191,6 +186,12 @@ public: { return tmp<Field<Type>>::New(); } + + + // Member Functions + + //- Write without "value" entry! + virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/constraint/processor/processorFaPatchField.H b/src/finiteArea/fields/faPatchFields/constraint/processor/processorFaPatchField.H index 32bc5e91ad8d96c37176bc2f9c8a51632a1fad74..e50d5a2a9184834334522c1762c14477baca4426 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/processor/processorFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/constraint/processor/processorFaPatchField.H @@ -137,15 +137,6 @@ public: //- Construct as copy processorFaPatchField(const processorFaPatchField<Type>&); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new processorFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorFaPatchField ( @@ -153,16 +144,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new processorFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -197,7 +191,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -206,7 +200,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteArea/fields/faPatchFields/constraint/symmetry/symmetryFaPatchField.H b/src/finiteArea/fields/faPatchFields/constraint/symmetry/symmetryFaPatchField.H index 7233d56e893f2584ec15fd11e6b897b39845146f..e09d2aea515aa00a37a3d7c52944e83b99a0c57b 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/symmetry/symmetryFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/constraint/symmetry/symmetryFaPatchField.H @@ -97,15 +97,6 @@ public: const symmetryFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new symmetryFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryFaPatchField ( @@ -113,16 +104,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new symmetryFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.C b/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.C index e9bd75e3ff6df878af35b33d6928d8bc0d9c5d1f..d3e5c31d78d7b36305db99619e9534b0692c58de 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.C @@ -143,19 +143,18 @@ Foam::wedgeFaPatchField<Type>::snGradTransformDiag() const const vector diagV(diagT.xx(), diagT.yy(), diagT.zz()); - return tmp<Field<Type>> + return tmp<Field<Type>>::New ( - new Field<Type> + this->size(), + transformMask<Type> ( - this->size(), - transformMask<Type> + pow ( - pow - ( - diagV, - pTraits<typename powProduct<vector, pTraits<Type>::rank> - ::type>::zero - ) + diagV, + pTraits + < + typename powProduct<vector, pTraits<Type>::rank>::type + >::zero ) ) ); diff --git a/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.H b/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.H index f1933ec1ab15d72f23d2b750772f9058698d8bcf..22858d7db59b88da11015faf4555906fe96dc407 100644 --- a/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/constraint/wedge/wedgeFaPatchField.H @@ -91,15 +91,6 @@ public: const faPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new wedgeFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference wedgeFaPatchField ( @@ -107,16 +98,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new wedgeFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -130,7 +124,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ); diff --git a/src/finiteArea/fields/faPatchFields/derived/clampedPlate/clampedPlateFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/clampedPlate/clampedPlateFaPatchField.H index de365d612c578983609c8e689946760352953fc5..1fd9007a834a176f4c09af54f10ce1fc4b668aa8 100644 --- a/src/finiteArea/fields/faPatchFields/derived/clampedPlate/clampedPlateFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/clampedPlate/clampedPlateFaPatchField.H @@ -115,15 +115,6 @@ public: const clampedPlateFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new clampedPlateFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference clampedPlateFaPatchField ( @@ -131,16 +122,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new clampedPlateFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -155,16 +149,13 @@ public: //- Return gradient at boundary virtual tmp<Field<Type>> snGrad() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the @@ -192,7 +183,7 @@ public: // IO - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/edgeNormalFixedValue/edgeNormalFixedValueFaPatchVectorField.H b/src/finiteArea/fields/faPatchFields/derived/edgeNormalFixedValue/edgeNormalFixedValueFaPatchVectorField.H index dd4718cd35a339ddd25254a43bec8a2989ddfa74..8c01ccf621182a4f814784d458793494179baecf 100644 --- a/src/finiteArea/fields/faPatchFields/derived/edgeNormalFixedValue/edgeNormalFixedValueFaPatchVectorField.H +++ b/src/finiteArea/fields/faPatchFields/derived/edgeNormalFixedValue/edgeNormalFixedValueFaPatchVectorField.H @@ -113,15 +113,6 @@ public: const edgeNormalFixedValueFaPatchVectorField& ); - //- Construct and return a clone - virtual tmp<faPatchVectorField> clone() const - { - return tmp<faPatchVectorField> - ( - new edgeNormalFixedValueFaPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference edgeNormalFixedValueFaPatchVectorField ( @@ -129,24 +120,22 @@ public: const DimensionedField<vector, areaMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<faPatchVectorField> clone + //- Return clone + virtual tmp<faPatchField<vector>> clone() const + { + return faPatchField<vector>::Clone(*this); + } + + //- Clone with an internal field reference + virtual tmp<faPatchField<vector>> clone ( const DimensionedField<vector, areaMesh>& iF ) const { - return tmp<faPatchVectorField> - ( - new edgeNormalFixedValueFaPatchVectorField - ( - *this, - iF - ) - ); + return faPatchField<vector>::Clone(*this, iF); } - // Member functions // Mapping functions @@ -170,7 +159,7 @@ public: //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.C b/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.C index 3b04c3fbbdb414d6598b9dd878555774df8ac493..b9d26257fb837d06ebcd1f4074988263a1b84682 100644 --- a/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.C @@ -95,10 +95,7 @@ Foam::fixedValueOutflowFaPatchField<Type>::valueInternalCoeffs const tmp<scalarField>& weights ) const { - return tmp<Field<Type>> - ( - new Field<Type>(Type(pTraits<Type>::one)*weights) - ); + return pTraits<Type>::one*weights; } diff --git a/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.H index d6b63c61c4d5e676de3206d4739a9fa1d3c490a7..ef3eb57580ac0d9051140d67ef7812ed3eca8739 100644 --- a/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/fixedValueOutflow/fixedValueOutflowFaPatchField.H @@ -96,15 +96,6 @@ public: const fixedValueOutflowFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new fixedValueOutflowFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedValueOutflowFaPatchField ( @@ -112,16 +103,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new fixedValueOutflowFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -156,11 +150,11 @@ public: virtual tmp<Field<Type>> gradientBoundaryCoeffs() const; - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; - // Member operators + // Member Operators virtual void operator=(const UList<Type>&) {} diff --git a/src/finiteArea/fields/faPatchFields/derived/ignore/ignoreFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/ignore/ignoreFaPatchField.H index 6d83692442aacdd41584949571f9d32eafafcae7..29a2d67a5fb81fb66d634c36a98259a53d604715 100644 --- a/src/finiteArea/fields/faPatchFields/derived/ignore/ignoreFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/ignore/ignoreFaPatchField.H @@ -114,15 +114,6 @@ public: const ignoreFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new ignoreFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference ignoreFaPatchField ( @@ -130,16 +121,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new ignoreFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faPatchFields/derived/inletOutlet/inletOutletFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/inletOutlet/inletOutletFaPatchField.H index 88abbde9c844168c870eba4cd02156171dc24621..0464beaa09d1f28074e20449dbce6c9211a4cefc 100644 --- a/src/finiteArea/fields/faPatchFields/derived/inletOutlet/inletOutletFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/inletOutlet/inletOutletFaPatchField.H @@ -136,15 +136,6 @@ public: const inletOutletFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new inletOutletFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference inletOutletFaPatchField ( @@ -152,16 +143,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new inletOutletFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -174,7 +168,7 @@ public: //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/outletInlet/outletInletFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/outletInlet/outletInletFaPatchField.H index 3b9187c63bc6a85ff234171d0f6df59388497a81..922f27e39be0dbcf1c2dfc83bdf8e8812abaad9b 100644 --- a/src/finiteArea/fields/faPatchFields/derived/outletInlet/outletInletFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/outletInlet/outletInletFaPatchField.H @@ -135,15 +135,6 @@ public: const outletInletFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new outletInletFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference outletInletFaPatchField ( @@ -151,16 +142,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new outletInletFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -169,7 +163,7 @@ public: //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/slip/slipFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/slip/slipFaPatchField.H index f140258de071dc580c036a7453e092b371f0c15c..32996ee3845235780c464155af8b1e133f842d9e 100644 --- a/src/finiteArea/fields/faPatchFields/derived/slip/slipFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/slip/slipFaPatchField.H @@ -97,15 +97,6 @@ public: const slipFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new slipFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference slipFaPatchField ( @@ -113,16 +104,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new slipFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValueFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValueFaPatchField.H index 70154cc728ad4e21870675455d70278d735d52ae..2dd84e81da6246b2dc272fb75184f64881465e57 100644 --- a/src/finiteArea/fields/faPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValueFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/timeVaryingUniformFixedValue/timeVaryingUniformFixedValueFaPatchField.H @@ -137,15 +137,6 @@ public: const timeVaryingUniformFixedValueFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new timeVaryingUniformFixedValueFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingUniformFixedValueFaPatchField ( @@ -153,16 +144,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new timeVaryingUniformFixedValueFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -189,7 +183,7 @@ public: // IO - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.C b/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.C index 650cdbef1afecc7056faaf3948bb77ec428fbd3f..2ddafdbe8ceb50bf3f9bef2da73b58cd664988c0 100644 --- a/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.C @@ -69,7 +69,8 @@ Foam::uniformFixedGradientFaPatchField<Type>::uniformFixedGradientFaPatchField ( /* p.patch(), */ "uniformGradient", - dict + dict, + &iF.db() ) ) { diff --git a/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.H index 7340d59a201ce3b1524ae7b259a3f9210ff77541..2490f1f6224eb23f803708f3ff563e21aa004092 100644 --- a/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/uniformFixedGradient/uniformFixedGradientFaPatchField.H @@ -138,15 +138,6 @@ public: const uniformFixedGradientFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new uniformFixedGradientFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformFixedGradientFaPatchField ( @@ -154,25 +145,28 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new uniformFixedGradientFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry virtual void write(Ostream& os) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/uniformFixedValue/uniformFixedValueFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/uniformFixedValue/uniformFixedValueFaPatchField.H index 4af170d7b80533075a3fdea3e8f5704cbee04c23..cc21bfa0b3b2f01141de6a5a2b74346cd2a8b20e 100644 --- a/src/finiteArea/fields/faPatchFields/derived/uniformFixedValue/uniformFixedValueFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/uniformFixedValue/uniformFixedValueFaPatchField.H @@ -139,15 +139,6 @@ public: const uniformFixedValueFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new uniformFixedValueFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformFixedValueFaPatchField ( @@ -155,16 +146,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new uniformFixedValueFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -173,7 +167,7 @@ public: //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry virtual void write(Ostream& os) const; }; diff --git a/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.C b/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.C index 8f29c0f425d72f74c50cf53349b55f5e2e922144..75b332323d28c7fb77bf0e094b8b01c870e00233 100644 --- a/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.C +++ b/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.C @@ -74,7 +74,8 @@ Foam::uniformMixedFaPatchField<Type>::uniformMixedFaPatchField ( /* p.patch(), */ "uniformValue", - dict + dict, + &iF.db() ) ), refGradFunc_ @@ -83,7 +84,8 @@ Foam::uniformMixedFaPatchField<Type>::uniformMixedFaPatchField ( // p.patch(), "uniformGradient", - dict + dict, + &iF.db() ) ), valueFractionFunc_(nullptr) @@ -101,7 +103,8 @@ Foam::uniformMixedFaPatchField<Type>::uniformMixedFaPatchField ( /* p.patch(), */ "uniformValueFraction", - dict + dict, + &iF.db() ) ); } diff --git a/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.H b/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.H index 620a16dbad649fc9a826a99950e4ae03e8ef0e7b..08d3a4a6b2958e06760d06b27b46319ad287240a 100644 --- a/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.H +++ b/src/finiteArea/fields/faPatchFields/derived/uniformMixed/uniformMixedFaPatchField.H @@ -160,15 +160,6 @@ public: const uniformMixedFaPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new uniformMixedFaPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformMixedFaPatchField ( @@ -176,16 +167,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new uniformMixedFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } @@ -194,7 +188,7 @@ public: //- Update the coefficients associated with the patch field virtual void updateCoeffs(); - //- Write + //- Write includes "value" entry (for visualisation / restart) virtual void write(Ostream& os) const; }; diff --git a/src/finiteArea/fields/faPatchFields/faPatchField/faPatchField.H b/src/finiteArea/fields/faPatchFields/faPatchField/faPatchField.H index e1f208e274f7b4bb5c5ab594205385904d95e471..0c47bd2cebe6a322c43370614ed9fa3f5abac474 100644 --- a/src/finiteArea/fields/faPatchFields/faPatchField/faPatchField.H +++ b/src/finiteArea/fields/faPatchFields/faPatchField/faPatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -238,11 +238,31 @@ class faPatchField public faPatchFieldBase, public Field<Type> { +public: + + // Public Data Types + + //- The patch type for the patch field + typedef faPatch Patch; + + //- The value_type for the patch field + typedef Type value_type; + + //- The internal field type associated with the patch field + typedef DimensionedField<Type, areaMesh> Internal; + + //- Type for a \em calculated patch + typedef calculatedFaPatchField<Type> Calculated; + + +private: + // Private Data //- Reference to internal field const DimensionedField<Type, areaMesh>& internalField_; + protected: // Protected Member Functions @@ -268,16 +288,6 @@ protected: public: - //- The internal field type associated with the patch field - typedef DimensionedField<Type, areaMesh> Internal; - - //- The patch type for the patch field - typedef faPatch Patch; - - //- Type for a \em calculated patch - typedef calculatedFaPatchField<Type> Calculated; - - // Declare run-time constructor selection tables declareRunTimeSelectionTable @@ -383,23 +393,56 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone + //- Clone patch field with its own internal field reference virtual tmp<faPatchField<Type>> clone() const { - return tmp<faPatchField<Type>>(new faPatchField<Type>(*this)); + return tmp<faPatchField<Type>> + ( + new faPatchField<Type>(*this, this->internalField_) + ); } - //- Construct and return a clone setting internal field reference + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>>(new faPatchField<Type>(*this, iF)); + return tmp<faPatchField<Type>> + ( + new faPatchField<Type>(*this, iF) + ); } - // Selectors + // Factory Methods + + //- Clone a patch field with its own internal field reference + template<class DerivedPatchField> + static tmp<faPatchField<Type>> Clone + ( + const DerivedPatchField& pf + ) + { + return tmp<faPatchField<Type>> + ( + new DerivedPatchField(pf) + ); + } + + //- Clone a patch field with an internal field reference + template<class DerivedPatchField> + static tmp<faPatchField<Type>> Clone + ( + const DerivedPatchField& pf, + const DimensionedField<Type, areaMesh>& iF + ) + { + return tmp<faPatchField<Type>> + ( + new DerivedPatchField(pf, iF) + ); + } //- Return a pointer to a new patchField created on freestore given //- patch and internal field @@ -441,6 +484,13 @@ public: const dictionary& ); + //- Return a pointer to a new calculatedFaPatchField created on + //- freestore without setting patchField values + static tmp<faPatchField<Type>> NewCalculatedType + ( + const faPatch& p + ); + //- Return a pointer to a new calculatedFaPatchField created on //- freestore without setting patchField values template<class AnyType> @@ -514,7 +564,7 @@ public: virtual void initEvaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -522,7 +572,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Initialise the evaluation of the patch field after a local @@ -530,7 +580,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -538,7 +588,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteArea/fields/faPatchFields/faPatchField/faPatchFieldMapperPatchRef.H b/src/finiteArea/fields/faPatchFields/faPatchField/faPatchFieldMapperPatchRef.H index fc0bb216a62ec85f678a7892863ef767bf7e70e5..ba6e52aa05e69fb32c331dae1e3cd52244aad5dd 100644 --- a/src/finiteArea/fields/faPatchFields/faPatchField/faPatchFieldMapperPatchRef.H +++ b/src/finiteArea/fields/faPatchFields/faPatchField/faPatchFieldMapperPatchRef.H @@ -48,7 +48,7 @@ class faPatchFieldMapperPatchRef : public faPatchFieldMapper { - // Private data + // Private Data const faPatch& sourcePatch_; const faPatch& targetPatch_; diff --git a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.C b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.C index 5fc16ad869c6eb36ab888231bc60b89a90a108b4..ad447c3321791cae6360ac0843db12764bca533d 100644 --- a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.C +++ b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.C @@ -90,20 +90,19 @@ Foam::calculatedFaePatchField<Type>::calculatedFaePatchField template<class Type> -template<class Type2> Foam::tmp<Foam::faePatchField<Type>> Foam::faePatchField<Type>::NewCalculatedType ( - const faePatchField<Type2>& pf + const faPatch& p ) { - auto* patchTypeCtor = patchConstructorTable(pf.patch().type()); + auto* patchTypeCtor = patchConstructorTable(p.type()); if (patchTypeCtor) { return patchTypeCtor ( - pf.patch(), + p, DimensionedField<Type, edgeMesh>::null() ); } @@ -113,7 +112,7 @@ Foam::faePatchField<Type>::NewCalculatedType ( new calculatedFaePatchField<Type> ( - pf.patch(), + p, DimensionedField<Type, edgeMesh>::null() ) ); @@ -121,6 +120,18 @@ Foam::faePatchField<Type>::NewCalculatedType } +template<class Type> +template<class AnyType> +Foam::tmp<Foam::faePatchField<Type>> +Foam::faePatchField<Type>::NewCalculatedType +( + const faePatchField<AnyType>& pf +) +{ + return NewCalculatedType(pf.patch()); +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.H b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.H index 723426ff2e93532e9e3c4a2ea7dffa330e1982aa..745414151c4db81c17bc8fd1dec241be02276b00 100644 --- a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchField.H @@ -94,15 +94,6 @@ public: //- Construct as copy calculatedFaePatchField(const calculatedFaePatchField<Type>&); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new calculatedFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference calculatedFaePatchField ( @@ -110,18 +101,22 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new calculatedFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } + //- Destructor virtual ~calculatedFaePatchField() = default; diff --git a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchFields.C b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchFields.C index f30f4c2c7a3e81b22fd331b275fec203960083c8..db80c8089e64405700caddace1f6660954ba3156 100644 --- a/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/basic/calculated/calculatedFaePatchFields.C @@ -25,21 +25,16 @@ License \*---------------------------------------------------------------------------*/ -#include "faePatchFields.H" #include "calculatedFaePatchFields.H" +#include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(calculated); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(calculated); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchField.H b/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchField.H index 507cb9ad0ff50c27a97a68b244e6d66e25277ded..4dcafedc41067e4082b9d6b5c1cd78346fedb813 100644 --- a/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchField.H @@ -106,9 +106,6 @@ public: const coupledFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference coupledFaePatchField ( @@ -116,6 +113,9 @@ public: const DimensionedField<Type, edgeMesh>& ); + //- Return clone + virtual tmp<faePatchField<Type>> clone() const = 0; + //- Construct and return a clone virtual tmp<faePatchField<Type>> clone ( diff --git a/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchFields.C b/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchFields.C index 336c5e3910c41c987c4487f27578bbd76104e38b..e4f608e77b76ad48968ad91fdc297b8e7727ae47 100644 --- a/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/basic/coupled/coupledFaePatchFields.C @@ -25,17 +25,16 @@ License \*---------------------------------------------------------------------------*/ -#include "faePatchFields.H" #include "coupledFaePatchFields.H" +#include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -makeFaePatchFieldsTypeName(coupled); - -} // End namespace Foam + makeFaePatchFieldsTypeName(coupled); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchField.H b/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchField.H index ae9585421cb5160bb2147f3e1bdceb01a69563a9..b84e73530484a0198d948d5dde491e70af19ba5b 100644 --- a/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchField.H @@ -106,15 +106,6 @@ public: const fixedValueFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new fixedValueFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedValueFaePatchField ( @@ -122,18 +113,22 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new fixedValueFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } + //- Destructor virtual ~fixedValueFaePatchField() = default; diff --git a/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchFields.C b/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchFields.C index 25de776cde06b761f84d5a293b18f13222fafb20..9a314ad5b8fae1c85f886d301486a4cd8e896a62 100644 --- a/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/basic/fixedValue/fixedValueFaePatchFields.C @@ -25,21 +25,16 @@ License \*---------------------------------------------------------------------------*/ -#include "faePatchFields.H" #include "fixedValueFaePatchFields.H" +#include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(fixedValue); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(fixedValue); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.C b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.C index 6ddf22fb42908c99aa43cdc9f3cd3b14d2c86f9f..4439efada22dee9580d5714c266adb76d188109d 100644 --- a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.C +++ b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.C @@ -111,56 +111,33 @@ Foam::slicedFaePatchField<Type>::slicedFaePatchField } -template<class Type> -Foam::tmp<Foam::faePatchField<Type>> -Foam::slicedFaePatchField<Type>::clone() const -{ - return tmp<faePatchField<Type>> - ( - new slicedFaePatchField<Type>(*this) - ); -} - - template<class Type> Foam::slicedFaePatchField<Type>::slicedFaePatchField ( const slicedFaePatchField<Type>& ptf ) : - faePatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>() - ) -{ - // Transfer the slice from the argument - UList<Type>::shallowCopy(ptf); -} + slicedFaePatchField<Type>(ptf, ptf.internalField()) +{} +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + template<class Type> -Foam::tmp<Foam::faePatchField<Type>> -Foam::slicedFaePatchField<Type>::clone -( - const DimensionedField<Type, edgeMesh>& iF -) const +Foam::slicedFaePatchField<Type>::~slicedFaePatchField() { - return tmp<faePatchField<Type>> - ( - new slicedFaePatchField<Type>(*this, iF) - ); + // Set to nullptr to avoid deletion of underlying field + UList<Type>::shallowCopy(nullptr); } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> -Foam::slicedFaePatchField<Type>::~slicedFaePatchField() +void Foam::slicedFaePatchField<Type>::write(Ostream& os) const { - // Set to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + faePatchField<Type>::write(os); + faePatchField<Type>::writeValueEntry(os); } diff --git a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.H b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.H index c56b7a9ffe36fbfd3544cc5b5a925d05a98f25a7..3dd671d7644285ff3c60ef3a1e2f2288462884cb 100644 --- a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchField.H @@ -109,9 +109,6 @@ public: //- Construct as copy slicedFaePatchField(const slicedFaePatchField<Type>&); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const; - //- Construct as copy setting internal field reference slicedFaePatchField ( @@ -119,15 +116,24 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF - ) const; + ) const + { + return faePatchField<Type>::Clone(*this, iF); + } - //- Destructor - virtual ~slicedFaePatchField<Type>(); + //- Destructor, resets pointers to avoid deletion of underlying field + virtual ~slicedFaePatchField(); // Member Functions @@ -135,6 +141,9 @@ public: //- True: this patch field fixes a value. virtual bool fixesValue() const { return true; } + //- Write includes "value" entry + virtual void write(Ostream&) const; + // Member Operators diff --git a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchFields.C b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchFields.C index d576a082d32e7a4828882133d2408da3dbf5aaa4..ed8e890046c04e9baf588aa0a1be3db294169047 100644 --- a/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/basic/sliced/slicedFaePatchFields.C @@ -26,8 +26,9 @@ License \*---------------------------------------------------------------------------*/ #include "slicedFaePatchFields.H" -#include "addToRunTimeSelectionTable.H" #include "faePatchFields.H" +#include "edgeFaMesh.H" +#include "addToRunTimeSelectionTable.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchField.H b/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchField.H index 180033d5e7995c35b6e482fc53e02c778f2f66c9..77dd9189186ce5351331b0e6947dee7e68254102 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchField.H @@ -59,7 +59,7 @@ class cyclicFaePatchField : public coupledFaePatchField<Type> { - // Private data + // Private Data //- Local reference cast into the cyclic patch const cyclicFaPatch& cyclicPatch_; @@ -103,15 +103,6 @@ public: const cyclicFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new cyclicFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicFaePatchField ( @@ -119,16 +110,19 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new cyclicFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchFields.C b/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchFields.C index cc8e3a7dbf4f8bec48765e6f94266ede21f90c15..731f9e7fa2de8da71a37023f84c567a4d80b709c 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/constraint/cyclic/cyclicFaePatchFields.C @@ -27,19 +27,14 @@ License #include "cyclicFaePatchFields.H" #include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(cyclic); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(cyclic); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.C b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.C index 3032a855edb5241fb7544bb42714c37600a856a1..233c58881298ccb550952c1a97d904decb11d823 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.C +++ b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.C @@ -37,7 +37,7 @@ Foam::emptyFaePatchField<Type>::emptyFaePatchField const DimensionedField<Type, edgeMesh>& iF ) : - faePatchField<Type>(p, iF, Field<Type>()) + faePatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field {} @@ -50,7 +50,7 @@ Foam::emptyFaePatchField<Type>::emptyFaePatchField const faPatchFieldMapper& ) : - faePatchField<Type>(p, iF, Field<Type>()) + faePatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { if (!isType<emptyFaPatch>(this->patch())) { @@ -72,8 +72,11 @@ Foam::emptyFaePatchField<Type>::emptyFaePatchField const dictionary& dict ) : - faePatchField<Type>(p, iF, Field<Type>()) + faePatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { + // Empty means empty, so no patchType override + // with faePatchFieldBase::readDict(dict); + if (!isType<emptyFaPatch>(p)) { FatalIOErrorInFunction(dict) @@ -87,22 +90,32 @@ Foam::emptyFaePatchField<Type>::emptyFaePatchField template<class Type> Foam::emptyFaePatchField<Type>::emptyFaePatchField ( - const emptyFaePatchField<Type>& ptf + const emptyFaePatchField<Type>& ptf, + const DimensionedField<Type, edgeMesh>& iF ) : - faePatchField<Type>(ptf.patch(), ptf.internalField(), Field<Type>()) + faePatchField<Type>(ptf.patch(), iF, Field<Type>()) // zero-sized {} template<class Type> Foam::emptyFaePatchField<Type>::emptyFaePatchField ( - const emptyFaePatchField<Type>& ptf, - const DimensionedField<Type, edgeMesh>& iF + const emptyFaePatchField<Type>& ptf ) : - faePatchField<Type>(ptf.patch(), iF, Field<Type>()) + emptyFaePatchField<Type>(ptf, ptf.internalField()) {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::emptyFaePatchField<Type>::write(Ostream& os) const +{ + faePatchField<Type>::write(os); + // Never write "value" +} + + // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.H b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.H index a53926874234f6edbf423b6764602d9162cb505e..1d26f2b788173d90578c62ee5560ecb62b709de3 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchField.H @@ -73,7 +73,8 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. emptyFaePatchField ( const faPatch&, @@ -96,15 +97,6 @@ public: const emptyFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new emptyFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference emptyFaePatchField ( @@ -112,25 +104,29 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new emptyFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } + //- Destructor virtual ~emptyFaePatchField() = default; - // Member functions + // Member Functions - // Mapping functions + // Mapping Functions //- Map (and resize as needed) from self given a mapping object virtual void autoMap @@ -146,6 +142,12 @@ public: const labelList& ) {} + + + // Member Functions + + //- Write without "value" entry! + virtual void write(Ostream&) const; }; diff --git a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchFields.C b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchFields.C index a07507722d42f2a18314ee319b2d8ccb674d5a16..b2085e0bd4bf167c09ff4597eeb9a8207a803efc 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/constraint/empty/emptyFaePatchFields.C @@ -25,21 +25,16 @@ License \*---------------------------------------------------------------------------*/ -#include "faePatchFields.H" #include "emptyFaePatchFields.H" +#include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(empty); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(empty); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchField.H b/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchField.H index c8f9e6441f8a71a5de7ffbe36974c84c157986c2..78baf5315686839d4f7fcff490b939ab01b3aa1e 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchField.H @@ -106,15 +106,6 @@ public: //- Construct as copy processorFaePatchField(const processorFaePatchField<Type>&); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new processorFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorFaePatchField ( @@ -122,16 +113,19 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new processorFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } @@ -144,7 +138,7 @@ public: //- Return true if running parallel virtual bool coupled() const { - return Pstream::parRun(); + return UPstream::parRun(); } }; diff --git a/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchFields.C b/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchFields.C index 60e6ac337e7313ff65ed4b3e6e9859bb879472e1..d50cb717b5ecd502f5bee34c4b2f9fa7d0c3276d 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/constraint/processor/processorFaePatchFields.C @@ -27,19 +27,14 @@ License #include "processorFaePatchFields.H" #include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(processor); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(processor); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchField.H b/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchField.H index f2f80db21a013c5aa7ab75f28373656895090cc1..08dd7ab39b8308c3469b915e471ba7c2b720ab62 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchField.H @@ -98,15 +98,6 @@ public: const symmetryFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new symmetryFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryFaePatchField ( @@ -114,18 +105,22 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new symmetryFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } + //- Destructor virtual ~symmetryFaePatchField() = default; }; diff --git a/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchFields.C b/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchFields.C index b45e2b67eedd64b78e1936addfd6c9f24b239c78..922cf96c7274f874deba09255594b0649d8f96e7 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/constraint/symmetry/symmetryFaePatchFields.C @@ -27,19 +27,14 @@ License #include "symmetryFaePatchFields.H" #include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -makeFaePatchFields(symmetry); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(symmetry); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchField.H b/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchField.H index 017e6426437930d116ebd0de30cb5055b25da2cc..f179b3e8de8d927eaf542427e97b9fccf27c33a9 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchField.H +++ b/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchField.H @@ -95,15 +95,6 @@ public: const wedgeFaePatchField<Type>& ); - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new wedgeFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference wedgeFaePatchField ( @@ -111,16 +102,19 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new wedgeFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchFields.C b/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchFields.C index 7dec3700b1ce330249db654c033422e690e9e822..db9869f5360b7033be248bb504c6308f763da0d1 100644 --- a/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchFields.C +++ b/src/finiteArea/fields/faePatchFields/constraint/wedge/wedgeFaePatchFields.C @@ -27,19 +27,14 @@ License #include "wedgeFaePatchFields.H" #include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Member * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * Static Data Member * * * * * * * * * * * * * // - -makeFaePatchFields(wedge); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam + makeFaePatchFields(wedge); +} // ************************************************************************* // diff --git a/src/finiteArea/fields/faePatchFields/faePatchField/faePatchField.H b/src/finiteArea/fields/faePatchFields/faePatchField/faePatchField.H index d009f72dc8b99fd55dca7e8ba8e6ad9ef9b0d8c2..bf487edd2d22dcaefd81c9d01c32bae022192e35 100644 --- a/src/finiteArea/fields/faePatchFields/faePatchField/faePatchField.H +++ b/src/finiteArea/fields/faePatchFields/faePatchField/faePatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -211,6 +211,25 @@ class faePatchField public faePatchFieldBase, public Field<Type> { +public: + + // Public Data Types + + //- The patch type for the patch field + typedef faPatch Patch; + + //- The value_type for the patch field + typedef Type value_type; + + //- The internal field type associated with the patch field + typedef DimensionedField<Type, edgeMesh> Internal; + + //- Type for a \em calculated patch + typedef calculatedFaePatchField<Type> Calculated; + + +private: + // Private Data //- Reference to internal field @@ -238,16 +257,6 @@ protected: public: - //- The internal field type associated with the patch field - typedef DimensionedField<Type, edgeMesh> Internal; - - //- The patch type for the patch field - typedef faPatch Patch; - - //- Type for a \em calculated patch - typedef calculatedFaePatchField<Type> Calculated; - - // Declare run-time constructor selection tables declareRunTimeSelectionTable @@ -353,22 +362,22 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone + //- Clone patch field with its own internal field reference virtual tmp<faePatchField<Type>> clone() const { - return tmp<faePatchField<Type>>(new faePatchField<Type>(*this)); + return tmp<faePatchField<Type>> + ( + new faePatchField<Type>(*this, this->internalField_) + ); } - //- Construct and return a clone setting internal field reference + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new faePatchField<Type>(*this, iF) - ); + return tmp<faePatchField<Type>>::New(*this, iF); } @@ -376,7 +385,21 @@ public: virtual ~faePatchField() = default; - // Selectors + // Factory Methods + + //- Clone a patch field, optionally with internal field reference etc. + template<class DerivedPatchField, class... Args> + static tmp<faePatchField<Type>> Clone + ( + const DerivedPatchField& pf, + Args&&... args + ) + { + return tmp<faePatchField<Type>> + ( + new DerivedPatchField(pf, std::forward<Args>(args)...) + ); + } //- Return a pointer to a new patchField created on freestore given // patch and internal field @@ -421,10 +444,17 @@ public: //- Return a pointer to a new calculatedFaePatchField created on // freestore without setting patchField values - template<class Type2> static tmp<faePatchField<Type>> NewCalculatedType ( - const faePatchField<Type2>& + const faPatch& p + ); + + //- Return a pointer to a new calculatedFaePatchField created on + // freestore without setting patchField values + template<class AnyType> + static tmp<faePatchField<Type>> NewCalculatedType + ( + const faePatchField<AnyType>& pf ); @@ -452,7 +482,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -460,7 +490,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -486,14 +516,14 @@ public: //- Initialise the evaluation of the patch field, generally a no-op virtual void initEvaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ) {} //- Evaluate the patch field, generally a no-op virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ) {} diff --git a/src/finiteArea/finiteArea/convectionSchemes/faConvectionScheme/faConvectionScheme.H b/src/finiteArea/finiteArea/convectionSchemes/faConvectionScheme/faConvectionScheme.H index ae2673c8fc6a9d1e9382d42b94747f9105091436..cb882d1206900817062b8018ce35c01103b2d11e 100644 --- a/src/finiteArea/finiteArea/convectionSchemes/faConvectionScheme/faConvectionScheme.H +++ b/src/finiteArea/finiteArea/convectionSchemes/faConvectionScheme/faConvectionScheme.H @@ -37,10 +37,8 @@ SourceFiles #ifndef faConvectionScheme_H #define faConvectionScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -48,6 +46,7 @@ SourceFiles namespace Foam { +// Forward Declarations template<class Type> class faMatrix; @@ -67,20 +66,12 @@ class convectionScheme : public refCount { - // Private data + // Private Data + //- Reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy construct - convectionScheme(const convectionScheme&) = delete; - - //- No copy assignment - void operator=(const convectionScheme&) = delete; - - public: // Declare run-time constructor selection tables @@ -99,6 +90,15 @@ public: ); + // Generated Methods + + //- No copy construct + convectionScheme(const convectionScheme&) = delete; + + //- No copy assignment + void operator=(const convectionScheme&) = delete; + + // Constructors //- Construct from mesh, flux and Istream @@ -130,10 +130,7 @@ public: // Member Functions //- Return mesh reference - const faMesh& mesh() const - { - return mesh_; - } + const faMesh& mesh() const noexcept { return mesh_; } virtual tmp<GeometricField<Type, faePatchField, edgeMesh>> flux ( diff --git a/src/finiteArea/finiteArea/convectionSchemes/gaussFaConvectionScheme/gaussFaConvectionScheme.H b/src/finiteArea/finiteArea/convectionSchemes/gaussFaConvectionScheme/gaussFaConvectionScheme.H index be22ae9dbc1c689226ee67302eed430d168ee2b1..b3b46da0f96a395ea97364839d9f9e70e50375f7 100644 --- a/src/finiteArea/finiteArea/convectionSchemes/gaussFaConvectionScheme/gaussFaConvectionScheme.H +++ b/src/finiteArea/finiteArea/convectionSchemes/gaussFaConvectionScheme/gaussFaConvectionScheme.H @@ -60,12 +60,19 @@ class gaussConvectionScheme : public fa::convectionScheme<Type> { - // Private data + // Private Data + //- Edge-interpolation scheme tmp<edgeInterpolationScheme<Type>> tinterpScheme_; - // Private Member Functions +public: + + //- Runtime type information + TypeName("Gauss"); + + + // Generated Methods //- No copy construct gaussConvectionScheme(const gaussConvectionScheme&) = delete; @@ -74,12 +81,6 @@ class gaussConvectionScheme void operator=(const gaussConvectionScheme&) = delete; -public: - - //- Runtime type information - TypeName("Gauss"); - - // Constructors //- Construct from flux and interpolation scheme diff --git a/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.C b/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.C index 7327de14f5d74fcb8af0bbddcd6c437f125843a1..aeca2e05161f8d0fe3d2f0668ea26baaccdafb10 100644 --- a/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.C +++ b/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "EulerFaD2dt2Scheme.H" -#include "facDiv.H" #include "faMatrices.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -72,21 +71,21 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 scalar coefft = (deltaT + deltaT0)/(2*deltaT); scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0); - IOobject d2dt2IOobject + const IOobject d2dt2IOobject ( - "d2dt2("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "d2dt2("+dt.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) { - scalar halfRdeltaT2 = rDeltaT2.value()/2.0; + scalar halfRdeltaT2 = 0.5*rDeltaT2.value(); - scalarField SS0 = mesh().S() + mesh().S0(); - scalarField S0S00 = mesh().S0() + mesh().S00(); + scalarField SS0(mesh().S() + mesh().S0()); + scalarField S0S00(mesh().S0() + mesh().S00()); tmp<GeometricField<Type, faPatchField, areaMesh>> tdt2dt2 ( @@ -131,13 +130,13 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 dimensionedScalar rDeltaT2 = 4.0/sqr(mesh().time().deltaT() + mesh().time().deltaT0()); - IOobject d2dt2IOobject + const IOobject d2dt2IOobject ( - "d2dt2("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "d2dt2("+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -149,10 +148,10 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 if (mesh().moving()) { - scalar halfRdeltaT2 = rDeltaT2.value()/2.0; + scalar halfRdeltaT2 = 0.5*rDeltaT2.value(); - scalarField SS0 = mesh().S() + mesh().S0(); - scalarField S0S00 = mesh().S0() + mesh().S00(); + scalarField SS0(mesh().S() + mesh().S0()); + scalarField S0S00(mesh().S0() + mesh().S00()); return tmp<GeometricField<Type, faPatchField, areaMesh>> ( @@ -209,13 +208,13 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 dimensionedScalar rDeltaT2 = 4.0/sqr(mesh().time().deltaT() + mesh().time().deltaT0()); - IOobject d2dt2IOobject + const IOobject d2dt2IOobject ( - "d2dt2("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "d2dt2("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -229,13 +228,15 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 { scalar halfRdeltaT2 = 0.5*rDeltaT2.value(); - scalarField SS0rhoRho0 = - (mesh().S() + mesh().S0()) - *rho.value(); + scalarField SS0rhoRho0 + ( + (mesh().S() + mesh().S0())*rho.value() + ); - scalarField S0S00rho0Rho00 = - (mesh().S0() + mesh().S00()) - *rho.value(); + scalarField S0S00rho0Rho00 + ( + (mesh().S0() + mesh().S00())*rho.value() + ); return tmp<GeometricField<Type, faPatchField, areaMesh>> ( @@ -294,13 +295,13 @@ EulerFaD2dt2Scheme<Type>::facD2dt2 dimensionedScalar rDeltaT2 = 4.0/sqr(mesh().time().deltaT() + mesh().time().deltaT0()); - IOobject d2dt2IOobject + const IOobject d2dt2IOobject ( - "d2dt2("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "d2dt2("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -490,7 +491,6 @@ EulerFaD2dt2Scheme<Type>::famD2dt2 scalar halfRdeltaT2 = 0.5*rDeltaT2; scalarField SS0(mesh().S() + mesh().S0()); - scalarField S0S00(mesh().S0() + mesh().S00()); fam.diag() = rho.value()*(coefft*halfRdeltaT2)*SS0; diff --git a/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.H b/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.H index f25ca65a793220c7c685e88ce464e6ddc116c35c..584114c2fa4a61fd84b6b7a5aa0d59edb1abd104 100644 --- a/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.H +++ b/src/finiteArea/finiteArea/d2dt2Schemes/EulerFaD2dt2Scheme/EulerFaD2dt2Scheme.H @@ -67,12 +67,6 @@ class EulerFaD2dt2Scheme //- Return the previous time-step scalar deltaT0_() const; - //- No copy construct - EulerFaD2dt2Scheme(const EulerFaD2dt2Scheme&) = delete; - - //- No copy assignment - void operator=(const EulerFaD2dt2Scheme&) = delete; - public: @@ -80,6 +74,15 @@ public: TypeName("Euler"); + // Generated Methods + + //- No copy construct + EulerFaD2dt2Scheme(const EulerFaD2dt2Scheme&) = delete; + + //- No copy assignment + void operator=(const EulerFaD2dt2Scheme&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.C b/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.C index 2f33acefcf46fbd8f1dc91f47bfbf3d2e13c2648..76a5c8b615acba6505cd5d2ad9f7487557532438 100644 --- a/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.C +++ b/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.C @@ -24,13 +24,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Description - Abstract base class for finite area d2dt2 schemes. - \*---------------------------------------------------------------------------*/ #include "fa.H" -#include "HashTable.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.H b/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.H index 1b679b5f7ea232a29ceb48d522aab4ba2cdb9198..9d040c4062fc1db43fd9eae057cf99227d610ec2 100644 --- a/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.H +++ b/src/finiteArea/finiteArea/d2dt2Schemes/faD2dt2Scheme/faD2dt2Scheme.H @@ -37,11 +37,9 @@ SourceFiles #ifndef faD2dt2Scheme_H #define faD2dt2Scheme_H -#include "tmp.H" #include "dimensionedType.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -49,6 +47,7 @@ SourceFiles namespace Foam { +// Forward Declarations template<class Type> class faMatrix; @@ -68,23 +67,14 @@ class faD2dt2Scheme : public refCount { - protected: - // Protected data + // Protected Data + //- Reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy construct - faD2dt2Scheme(const faD2dt2Scheme&) = delete; - - //- No copy assignment - void operator=(const faD2dt2Scheme&) = delete; - - public: //- Runtime type information @@ -103,6 +93,15 @@ public: ); + // Generated Methods + + //- No copy construct + faD2dt2Scheme(const faD2dt2Scheme&) = delete; + + //- No copy assignment + void operator=(const faD2dt2Scheme&) = delete; + + // Constructors //- Construct from mesh @@ -135,10 +134,7 @@ public: // Member Functions //- Return mesh reference - const faMesh& mesh() const - { - return mesh_; - } + const faMesh& mesh() const noexcept { return mesh_; } virtual tmp<GeometricField<Type, faPatchField, areaMesh>> facD2dt2 ( diff --git a/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.C b/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.C index 8b9c8e9fac29ddb157935cc5472399266879d0d6..3359014fe4bc3264b4c33d865cd1362c89f5198e 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.C +++ b/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "EulerFaDdtScheme.H" -#include "facDiv.H" #include "faMatrices.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -50,13 +49,13 @@ EulerFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -97,13 +96,13 @@ EulerFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); tmp<GeometricField<Type, faPatchField, areaMesh>> tdtdt0 @@ -135,13 +134,13 @@ EulerFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -188,13 +187,13 @@ EulerFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -235,13 +234,13 @@ EulerFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -288,13 +287,13 @@ EulerFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -337,13 +336,13 @@ EulerFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) @@ -394,13 +393,13 @@ EulerFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); if (mesh().moving()) diff --git a/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.H b/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.H index 6d0d96c1405954c3589554ddf11e97e12a60913a..834cc62a23ed8072feaf224e37dd4a6b5e5c0083 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.H +++ b/src/finiteArea/finiteArea/ddtSchemes/EulerFaDdtScheme/EulerFaDdtScheme.H @@ -59,7 +59,13 @@ class EulerFaDdtScheme : public fa::faDdtScheme<Type> { - // Private Member Functions +public: + + //- Runtime type information + TypeName("Euler"); + + + // Generated Methods //- No copy construct EulerFaDdtScheme(const EulerFaDdtScheme&) = delete; @@ -68,12 +74,6 @@ class EulerFaDdtScheme void operator=(const EulerFaDdtScheme&) = delete; -public: - - //- Runtime type information - TypeName("Euler"); - - // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.C b/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.C index 01c0576d719147358950f95db7768d6dd7e24de8..457e744df21b6d2b5d59f51fa8a1dd14455c1539 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.C +++ b/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "backwardFaDdtScheme.H" -#include "facDiv.H" #include "faMatrices.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -81,13 +80,13 @@ backwardFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -136,13 +135,13 @@ backwardFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -183,13 +182,13 @@ backwardFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -256,13 +255,13 @@ backwardFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -327,13 +326,13 @@ backwardFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -400,13 +399,13 @@ backwardFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -471,13 +470,13 @@ backwardFaDdtScheme<Type>::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -548,13 +547,13 @@ backwardFaDdtScheme<Type>::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); diff --git a/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.H b/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.H index e2bff70518868c7725e05c45cb195c6bc8179898..54fcb89e4e99955df90209281b8f9372d254b2dc 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.H +++ b/src/finiteArea/finiteArea/ddtSchemes/backwardFaDdtScheme/backwardFaDdtScheme.H @@ -72,12 +72,6 @@ class backwardFaDdtScheme template<class GeoField> scalar deltaT0_(const GeoField&) const; - //- No copy construct - backwardFaDdtScheme(const backwardFaDdtScheme&) = delete; - - //- No copy assignment - void operator=(const backwardFaDdtScheme&) = delete; - public: @@ -85,6 +79,15 @@ public: TypeName("backward"); + // Generated Methods + + //- No copy construct + backwardFaDdtScheme(const backwardFaDdtScheme&) = delete; + + //- No copy assignment + void operator=(const backwardFaDdtScheme&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.C b/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.C index b63446ae20b4094952fae2768f6486a9f23a57da..2e41f5289713b63596bf10c18be870734345f863 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.C +++ b/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "boundedBackwardFaDdtScheme.H" -#include "facDiv.H" #include "faMatrices.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -64,13 +63,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -119,13 +118,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt0 dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+dt.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -164,13 +163,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -261,13 +260,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -356,13 +355,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -453,13 +452,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -548,13 +547,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); @@ -649,13 +648,13 @@ tmp<areaScalarField> boundedBackwardFaDdtScheme::facDdt0 { dimensionedScalar rDeltaT = 1.0/mesh().time().deltaT(); - IOobject ddtIOobject + const IOobject ddtIOobject ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE + mesh().thisDb().newIOobject + ( + "ddt0("+rho.name()+','+vf.name()+')', + { IOobject::REGISTER } + ) ); scalar deltaT = deltaT_(); diff --git a/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.H b/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.H index 02163a746be1ac4a0befd31e91fc23df5e88df39..f778368530a17784fd1835fd6bfeb8fe35fc3b8e 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.H +++ b/src/finiteArea/finiteArea/ddtSchemes/boundedBackwardFaDdtScheme/boundedBackwardFaDdtScheme.H @@ -76,13 +76,19 @@ class boundedBackwardFaDdtScheme { return GREAT; } - else - { - return deltaT0_(); - } + + return deltaT0_(); } +public: + + //- Runtime type information + TypeName("boundedBackward"); + + + // Generated Methods + //- No copy construct boundedBackwardFaDdtScheme(const boundedBackwardFaDdtScheme&) = delete; @@ -90,12 +96,6 @@ class boundedBackwardFaDdtScheme void operator=(const boundedBackwardFaDdtScheme&) = delete; -public: - - //- Runtime type information - TypeName("boundedBackward"); - - // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.C b/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.C index 9c18bf8f16cb844c3cb2406c95f68ef963eed936..d8f2c6550568cae43fe5da3a2082e9fc881654d0 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.C +++ b/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.C @@ -27,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "fa.H" -#include "HashTable.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.H b/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.H index 3415c5332e504da32faec6b90b42d7897cfb043d..1cbaa58008fbe814dff19df2776cddc35a38132f 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.H +++ b/src/finiteArea/finiteArea/ddtSchemes/faDdtScheme/faDdtScheme.H @@ -37,11 +37,9 @@ SourceFiles #ifndef faDdtScheme_H #define faDdtScheme_H -#include "tmp.H" #include "dimensionedType.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -49,6 +47,7 @@ SourceFiles namespace Foam { +// Forward Declarations template<class Type> class faMatrix; @@ -68,23 +67,14 @@ class faDdtScheme : public refCount { - protected: - // Protected data + // Protected Data + //- Reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy construct - faDdtScheme(const faDdtScheme&) = delete; - - //- No copy assignment - void operator=(const faDdtScheme&) = delete; - - public: //- Runtime type information @@ -103,6 +93,15 @@ public: ); + // Generated Methods + + //- No copy construct + faDdtScheme(const faDdtScheme&) = delete; + + //- No copy assignment + void operator=(const faDdtScheme&) = delete; + + // Constructors //- Construct from mesh @@ -135,10 +134,7 @@ public: // Member Functions //- Return mesh reference - const faMesh& mesh() const - { - return mesh_; - } + const faMesh& mesh() const noexcept { return mesh_; } virtual tmp<GeometricField<Type, faPatchField, areaMesh>> facDdt ( diff --git a/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.C b/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.C index d430680d880aeecced441eb6fc6c7147a27bf460..c562a9b2401f63c55ba24dbd8b639de583da9590 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.C +++ b/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.C @@ -48,16 +48,13 @@ steadyStateFaDdtScheme<Type>::facDdt const dimensioned<Type> dt ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt("+dt.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(dt.dimensions()/dimTime, Zero) + Foam::zero{}, + dt.dimensions()/dimTime ); } @@ -69,16 +66,13 @@ steadyStateFaDdtScheme<Type>::facDdt0 const dimensioned<Type> dt ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt("+dt.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt("+dt.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(dt.dimensions()/dimTime, Zero) + Foam::zero{}, + dt.dimensions()/dimTime ); } @@ -90,16 +84,13 @@ steadyStateFaDdtScheme<Type>::facDdt const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt("+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(vf.dimensions()/dimTime, Zero) + Foam::zero{}, + vf.dimensions()/dimTime ); } @@ -111,16 +102,13 @@ steadyStateFaDdtScheme<Type>::facDdt0 const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt0("+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt0("+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(vf.dimensions()/dimTime, Zero) + Foam::zero{}, + vf.dimensions()/dimTime ); } @@ -133,16 +121,13 @@ steadyStateFaDdtScheme<Type>::facDdt const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt("+rho.name()+','+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(rho.dimensions()*vf.dimensions()/dimTime, Zero) + Foam::zero{}, + rho.dimensions()*vf.dimensions()/dimTime ); } @@ -154,16 +139,13 @@ steadyStateFaDdtScheme<Type>::facDdt0 const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt0("+rho.name()+','+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(rho.dimensions()*vf.dimensions()/dimTime, Zero) + Foam::zero{}, + rho.dimensions()*vf.dimensions()/dimTime ); } @@ -176,16 +158,13 @@ steadyStateFaDdtScheme<Type>::facDdt const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt("+rho.name()+','+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(rho.dimensions()*vf.dimensions()/dimTime, Zero) + Foam::zero{}, + rho.dimensions()*vf.dimensions()/dimTime ); } @@ -198,16 +177,13 @@ steadyStateFaDdtScheme<Type>::facDdt0 const GeometricField<Type, faPatchField, areaMesh>& vf ) { - return tmp<GeometricField<Type, faPatchField, areaMesh>>::New + return GeometricField<Type, faPatchField, areaMesh>::New ( - IOobject - ( - "ddt0("+rho.name()+','+vf.name()+')', - mesh().time().timeName(), - mesh().thisDb() - ), + "ddt0("+rho.name()+','+vf.name()+')', + IOobject::REGISTER, mesh(), - dimensioned<Type>(rho.dimensions()*vf.dimensions()/dimTime, Zero) + Foam::zero{}, + rho.dimensions()*vf.dimensions()/dimTime ); } diff --git a/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.H b/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.H index af83dcc556cd5f9cbb8d02a01a00d7b45e7aefd9..48704d0d192c0b8f7ee6db32c2a78cdbd5ded426 100644 --- a/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.H +++ b/src/finiteArea/finiteArea/ddtSchemes/steadyStateFaDdtScheme/steadyStateFaDdtScheme.H @@ -58,7 +58,13 @@ class steadyStateFaDdtScheme : public fa::faDdtScheme<Type> { - // Private Member Functions +public: + + //- Runtime type information + TypeName("steadyState"); + + + // Generated Methods //- No copy construct steadyStateFaDdtScheme(const steadyStateFaDdtScheme&) = delete; @@ -67,12 +73,6 @@ class steadyStateFaDdtScheme void operator=(const steadyStateFaDdtScheme&) = delete; -public: - - //- Runtime type information - TypeName("steadyState"); - - // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.C b/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.C index ee05ffe259ff5059a4bace0948d7857d70b0d748..d2fdc7ca4340634e243c74356b0dcedf00bff7a6 100644 --- a/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.C +++ b/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.C @@ -27,16 +27,11 @@ License \*---------------------------------------------------------------------------*/ #include "fa.H" -#include "HashTable.H" -#include "linearEdgeInterpolation.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - namespace fa { @@ -84,19 +79,9 @@ tmp<divScheme<Type>> divScheme<Type>::New } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -template<class Type> -divScheme<Type>::~divScheme() -{} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace fa - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - } // End namespace Foam // ************************************************************************* // diff --git a/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.H b/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.H index 56f4abc5342b453db51a2bbf03fa2b6e88447add..8fac369c6aaad11c53f09f9a2f8959ab4870e8cc 100644 --- a/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.H +++ b/src/finiteArea/finiteArea/divSchemes/faDivScheme/faDivScheme.H @@ -35,14 +35,12 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faDivScheme_H -#define faDivScheme_H +#ifndef Foam_faDivScheme_H +#define Foam_faDivScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" #include "linearEdgeInterpolation.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -50,9 +48,8 @@ SourceFiles namespace Foam { -template<class Type> -class faMatrix; - +// Forward Declarations +template<class Type> class faMatrix; class faMesh; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -69,22 +66,15 @@ class divScheme : public refCount { - protected: - // Protected data + // Protected Data + //- Reference to mesh const faMesh& mesh_; - tmp<edgeInterpolationScheme<Type>> tinterpScheme_; - - // Private Member Functions - - //- No copy construct - divScheme(const divScheme&) = delete; - - //- No copy assignment - void operator=(const divScheme&) = delete; + //- Edge interpolation scheme + tmp<edgeInterpolationScheme<Type>> tinterpScheme_; public: @@ -101,6 +91,15 @@ public: ); + // Generated Methods + + //- No copy construct + divScheme(const divScheme&) = delete; + + //- No copy assignment + void operator=(const divScheme&) = delete; + + // Constructors //- Construct from mesh @@ -113,9 +112,23 @@ public: //- Construct from mesh and Istream divScheme(const faMesh& mesh, Istream& is) : - mesh_(mesh), - tinterpScheme_(edgeInterpolationScheme<Type>::New(mesh, is)) - {} + mesh_(mesh) + { + if (is.eof()) + { + tinterpScheme_.reset + ( + new linearEdgeInterpolation<Type>(mesh) + ); + } + else + { + tinterpScheme_.reset + ( + edgeInterpolationScheme<Type>::New(mesh, is) + ); + } + } // Selectors @@ -129,16 +142,13 @@ public: //- Destructor - virtual ~divScheme(); + virtual ~divScheme() = default; // Member Functions //- Return mesh reference - const faMesh& mesh() const - { - return mesh_; - } + const faMesh& mesh() const noexcept { return mesh_; } virtual tmp < diff --git a/src/finiteArea/finiteArea/divSchemes/gaussFaDivScheme/gaussFaDivScheme.H b/src/finiteArea/finiteArea/divSchemes/gaussFaDivScheme/gaussFaDivScheme.H index d92add74ee8a543d4966914facb5ca3570cb8f5c..7217f80acc2506033cffe7acb5699569062b5a8d 100644 --- a/src/finiteArea/finiteArea/divSchemes/gaussFaDivScheme/gaussFaDivScheme.H +++ b/src/finiteArea/finiteArea/divSchemes/gaussFaDivScheme/gaussFaDivScheme.H @@ -59,7 +59,13 @@ class gaussDivScheme : public fa::divScheme<Type> { - // Private Member Functions +public: + + //- Runtime type information + TypeName("Gauss"); + + + // Generated Methods //- No copy construct gaussDivScheme(const gaussDivScheme&) = delete; @@ -68,15 +74,9 @@ class gaussDivScheme void operator=(const gaussDivScheme&) = delete; -public: - - //- Runtime type information - TypeName("Gauss"); - - // Constructors - //- Construct null + //- Construct from mesh gaussDivScheme(const faMesh& mesh) : divScheme<Type>(mesh) diff --git a/src/finiteArea/finiteArea/faSchemes/faSchemes.H b/src/finiteArea/finiteArea/faSchemes/faSchemes.H index 8647069ad3c13e8883eacda1890341bc345f105b..0d666c3c968ca44bc476c99c96f48512b0c090d4 100644 --- a/src/finiteArea/finiteArea/faSchemes/faSchemes.H +++ b/src/finiteArea/finiteArea/faSchemes/faSchemes.H @@ -61,11 +61,13 @@ class faSchemes { public: - //- No copy construct - faSchemes(const faSchemes&) = delete; + // Generated Methods - //- No copy assignment - void operator=(const faSchemes&) = delete; + //- No copy construct + faSchemes(const faSchemes&) = delete; + + //- No copy assignment + void operator=(const faSchemes&) = delete; // Constructors diff --git a/src/finiteArea/finiteArea/fac/facAverage.H b/src/finiteArea/finiteArea/fac/facAverage.H index 5ff0a1993af14114a13ccc8d68d649e674c53d12..1aac0cdb2728235835baa8b8c247ae3dfe5e4f8f 100644 --- a/src/finiteArea/finiteArea/fac/facAverage.H +++ b/src/finiteArea/finiteArea/fac/facAverage.H @@ -34,7 +34,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facAverage_H #define facAverage_H diff --git a/src/finiteArea/finiteArea/fac/facDdt.H b/src/finiteArea/finiteArea/fac/facDdt.H index 64c6d35d7605cf9bea99fbf7bc2b2e54f9e0e5af..2b9c872477b36a1673f6d4fcaaf655b1dcc0062f 100644 --- a/src/finiteArea/finiteArea/fac/facDdt.H +++ b/src/finiteArea/finiteArea/fac/facDdt.H @@ -37,7 +37,6 @@ Author \*---------------------------------------------------------------------------*/ - #ifndef facDdt_H #define facDdt_H diff --git a/src/finiteArea/finiteArea/fac/facDiv.H b/src/finiteArea/finiteArea/fac/facDiv.H index d98e2d4ca7b0e28ac0caf7d5f16fdcbcdbb9a237..b3f4ecadba7581ae4eaa51754c4849e9b819c635 100644 --- a/src/finiteArea/finiteArea/fac/facDiv.H +++ b/src/finiteArea/finiteArea/fac/facDiv.H @@ -34,7 +34,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facDiv_H #define facDiv_H diff --git a/src/finiteArea/finiteArea/fac/facEdgeIntegrate.H b/src/finiteArea/finiteArea/fac/facEdgeIntegrate.H index d7acc4231c2fcaa1a4c234416605770ce7965f94..b9a1d887c7a1ad498e7d24f591df599b6d9b2c76 100644 --- a/src/finiteArea/finiteArea/fac/facEdgeIntegrate.H +++ b/src/finiteArea/finiteArea/fac/facEdgeIntegrate.H @@ -35,7 +35,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facEdgeIntegrate_H #define facEdgeIntegrate_H diff --git a/src/finiteArea/finiteArea/fac/facGrad.H b/src/finiteArea/finiteArea/fac/facGrad.H index 29c9d4ef0c8b4d3d864be1625702014bac3d1f1b..89e60708343309da5288feacb7460ecad3b7f8e4 100644 --- a/src/finiteArea/finiteArea/fac/facGrad.H +++ b/src/finiteArea/finiteArea/fac/facGrad.H @@ -34,7 +34,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facGrad_H #define facGrad_H diff --git a/src/finiteArea/finiteArea/fac/facLaplacian.H b/src/finiteArea/finiteArea/fac/facLaplacian.H index 0e29d7c97dbdb274a6c5845f222f21e6afa57c98..53697dcdce6a9461904fab99a9b53c7568824a2b 100644 --- a/src/finiteArea/finiteArea/fac/facLaplacian.H +++ b/src/finiteArea/finiteArea/fac/facLaplacian.H @@ -34,7 +34,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facLaplacian_H #define facLaplacian_H diff --git a/src/finiteArea/finiteArea/fac/facLnGrad.H b/src/finiteArea/finiteArea/fac/facLnGrad.H index 8a136ed844aab1d6a7eeba5bfb4e7bca9c0bc6a7..cfc3cbb11182a64dafbc14e0d9bfe31693fcf993 100644 --- a/src/finiteArea/finiteArea/fac/facLnGrad.H +++ b/src/finiteArea/finiteArea/fac/facLnGrad.H @@ -34,7 +34,6 @@ SourceFiles \*---------------------------------------------------------------------------*/ - #ifndef facLnGrad_H #define facLnGrad_H diff --git a/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.C b/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.C index 597355f7147a9c85d94e382339238fbefcf1b15c..e008472d0b464883efb47cff0a988c71b67723d8 100644 --- a/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.C +++ b/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.C @@ -27,7 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "fa.H" -#include "HashTable.H" #include "objectRegistry.H" #include "solution.H" diff --git a/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.H b/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.H index e6f2bac9c1eb773d2885a0ce87dead960037651b..9cd17ef905eca93c73fc1587ef147f3e8d88c13f 100644 --- a/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.H +++ b/src/finiteArea/finiteArea/gradSchemes/faGradScheme/faGradScheme.H @@ -39,17 +39,15 @@ SourceFiles #ifndef faGradScheme_H #define faGradScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" -#include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward Declarations class faMesh; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -66,20 +64,12 @@ class gradScheme : public refCount { - // Private data + // Private Data + //- Reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy construct - gradScheme(const gradScheme&) = delete; - - //- No copy assignment - void operator=(const gradScheme&) = delete; - - public: // Declare run-time constructor selection tables @@ -94,6 +84,15 @@ public: ); + // Generated Methods + + //- No copy construct + gradScheme(const gradScheme&) = delete; + + //- No copy assignment + void operator=(const gradScheme&) = delete; + + // Constructors //- Construct from mesh @@ -120,7 +119,7 @@ public: // Member Functions //- Return mesh reference - const faMesh& mesh() const { return mesh_; } + const faMesh& mesh() const noexcept { return mesh_; } //- Calculate and return the grad of the given field. // Used by grad either to recalculate the cached gradient when it is diff --git a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.C b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.C index af88fa2cf92cf63c90af1f84b4e978ec3b08a305..f83661c1bd05e2273a018bdc101827273fd1ab79 100644 --- a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.C +++ b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.C @@ -28,8 +28,6 @@ License #include "gaussFaGrad.H" #include "facGrad.H" -#include "areaFields.H" -#include "edgeFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.H b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.H index f0348ffdda9bfa5a28c79c9d050a158686759b1d..9b008cabed64610e0fb0fe8403b7f62f904cccd8 100644 --- a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.H +++ b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrad.H @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef gaussFaGrad_H -#define gaussFaGrad_H +#ifndef Foam_gaussFaGrad_H +#define Foam_gaussFaGrad_H #include "faGradScheme.H" #include "edgeInterpolationScheme.H" @@ -69,7 +69,13 @@ class gaussGrad tmp<edgeInterpolationScheme<Type>> tinterpScheme_; - // Private Member Functions +public: + + //- Runtime type information + TypeName("Gauss"); + + + // Generated Methods //- No copy construct gaussGrad(const gaussGrad&) = delete; @@ -78,12 +84,6 @@ class gaussGrad void operator=(const gaussGrad&) = delete; -public: - - //- Runtime type information - TypeName("Gauss"); - - // Constructors //- Construct from mesh @@ -96,24 +96,21 @@ public: //- Construct from Istream gaussGrad(const faMesh& mesh, Istream& is) : - gradScheme<Type>(mesh), - tinterpScheme_(nullptr) + gradScheme<Type>(mesh) { if (is.eof()) { - tinterpScheme_ = - tmp<edgeInterpolationScheme<Type>> - ( - new linearEdgeInterpolation<Type>(mesh) - ); + tinterpScheme_.reset + ( + new linearEdgeInterpolation<Type>(mesh) + ); } else { - tinterpScheme_ = - tmp<edgeInterpolationScheme<Type>> - ( - edgeInterpolationScheme<Type>::New(mesh, is) - ); + tinterpScheme_.reset + ( + edgeInterpolationScheme<Type>::New(mesh, is) + ); } } diff --git a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrads.C b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrads.C index 7780036413cbe893b8139925aebb6645a0cdd522..479ec97c5ac1e45a6ce64f47ce8fb1fe141f2fb3 100644 --- a/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrads.C +++ b/src/finiteArea/finiteArea/gradSchemes/gaussFaGrad/gaussFaGrads.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "gaussFaGrad.H" -#include "faMesh.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C index ea983b89750369520d4cd6eeb121964eac4786ff..963426c6feee66817cea9713041bc34b5710971c 100644 --- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C +++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C @@ -29,11 +29,6 @@ License #include "leastSquaresFaGrad.H" #include "leastSquaresFaVectors.H" #include "gaussFaGrad.H" -#include "faMesh.H" -#include "areaFaMesh.H" -#include "edgeFaMesh.H" -#include "GeometricField.H" -#include "zeroGradientFaPatchField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -96,10 +91,10 @@ leastSquaresFaGrad<Type>::calcGrad forAll(own, edgei) { - label ownEdgeI = own[edgei]; - label neiEdgeI = nei[edgei]; + const label ownEdgeI = own[edgei]; + const label neiEdgeI = nei[edgei]; - Type deltaVsf = vsf[neiEdgeI] - vsf[ownEdgeI]; + const Type deltaVsf(vsf[neiEdgeI] - vsf[ownEdgeI]); lsGrad[ownEdgeI] += ownLs[edgei]*deltaVsf; lsGrad[neiEdgeI] -= neiLs[edgei]*deltaVsf; @@ -108,35 +103,24 @@ leastSquaresFaGrad<Type>::calcGrad // Boundary edges forAll(vsf.boundaryField(), patchi) { - const faePatchVectorField& patchOwnLs = ownLs.boundaryField()[patchi]; + const faPatchField<Type>& bf = vsf.boundaryField()[patchi]; - const labelUList& edgeFaces = - lsGrad.boundaryField()[patchi].patch().edgeFaces(); + tmp<Field<Type>> tvsfp(bf); - if (vsf.boundaryField()[patchi].coupled()) + if (bf.coupled()) { - Field<Type> neiVsf - ( - vsf.boundaryField()[patchi].patchNeighbourField() - ); - - forAll(neiVsf, patchEdgeI) - { - lsGrad[edgeFaces[patchEdgeI]] += - patchOwnLs[patchEdgeI] - *(neiVsf[patchEdgeI] - vsf[edgeFaces[patchEdgeI]]); - } + tvsfp = bf.patchNeighbourField(); } - else + const auto& vsfp = tvsfp(); + + const faePatchVectorField& ownLsp = ownLs.boundaryField()[patchi]; + const labelUList& edgeFaces = + lsGrad.boundaryField()[patchi].patch().edgeFaces(); + + forAll(vsfp, pEdgei) { - const faPatchField<Type>& patchVsf = vsf.boundaryField()[patchi]; - - forAll(patchVsf, patchEdgeI) - { - lsGrad[edgeFaces[patchEdgeI]] += - patchOwnLs[patchEdgeI] - *(patchVsf[patchEdgeI] - vsf[edgeFaces[patchEdgeI]]); - } + lsGrad[edgeFaces[pEdgei]] += + ownLsp[pEdgei]*(vsfp[pEdgei] - vsf[edgeFaces[pEdgei]]); } } diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.H b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.H index 1e3e518f76e9786bcf01da3ce8a2ff800cb44576..95612b12253399e84574b5c76509525ab2e746c5 100644 --- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.H +++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.H @@ -62,7 +62,13 @@ class leastSquaresFaGrad : public fa::gradScheme<Type> { - // Private Member Functions +public: + + //- Runtime type information + TypeName("leastSquares"); + + + // Generated Methods //- No copy construct leastSquaresFaGrad(const leastSquaresFaGrad&) = delete; @@ -71,12 +77,6 @@ class leastSquaresFaGrad void operator=(const leastSquaresFaGrad&) = delete; -public: - - //- Runtime type information - TypeName("leastSquares"); - - // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrads.C b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrads.C index b593bbde114dedbde4c8f0d5b5a731230f839f62..04927b53994f99c2c84ff50943ef0156076cb709 100644 --- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrads.C +++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrads.C @@ -25,7 +25,6 @@ License \*---------------------------------------------------------------------------*/ -#include "faMesh.H" #include "leastSquaresFaGrad.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.C b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.C index 3421ea637968a7f2a22ed691b7494f15173d473f..44288ccf84bf2d91da1db62f437c47f77b55a6e8 100644 --- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.C +++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.C @@ -29,8 +29,6 @@ License #include "leastSquaresFaVectors.H" #include "edgeFields.H" #include "areaFields.H" -#include "mapPolyMesh.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -44,21 +42,10 @@ namespace Foam Foam::leastSquaresFaVectors::leastSquaresFaVectors(const faMesh& mesh) : - MeshObject<faMesh, Foam::MoveableMeshObject, leastSquaresFaVectors>(mesh), - pVectorsPtr_(nullptr), - nVectorsPtr_(nullptr) + MeshObject_type(mesh) {} -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::leastSquaresFaVectors::~leastSquaresFaVectors() -{ - deleteDemandDrivenData(pVectorsPtr_); - deleteDemandDrivenData(nVectorsPtr_); -} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // void Foam::leastSquaresFaVectors::makeLeastSquaresVectors() const @@ -67,7 +54,7 @@ void Foam::leastSquaresFaVectors::makeLeastSquaresVectors() const << "Constructing finite area (invDist) least square gradient vectors" << nl; - pVectorsPtr_ = new edgeVectorField + pVectorsPtr_ = std::make_unique<edgeVectorField> ( IOobject ( @@ -83,7 +70,7 @@ void Foam::leastSquaresFaVectors::makeLeastSquaresVectors() const ); auto& lsP = *pVectorsPtr_; - nVectorsPtr_ = new edgeVectorField + nVectorsPtr_ = std::make_unique<edgeVectorField> ( IOobject ( @@ -237,8 +224,8 @@ bool Foam::leastSquaresFaVectors::movePoints() DebugInFunction << "Clearing least square data" << nl; - deleteDemandDrivenData(pVectorsPtr_); - deleteDemandDrivenData(nVectorsPtr_); + pVectorsPtr_.reset(nullptr); + nVectorsPtr_.reset(nullptr); return true; } diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.H b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.H index db963c6786fa5553dbd2c3011fb785b9f58f6df2..2e24f7d6aa6e3650abfc714d7dcfe8b9ddbf3211 100644 --- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.H +++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaVectors.H @@ -43,7 +43,6 @@ SourceFiles #include "MeshObject.H" #include "faMesh.H" #include "edgeFieldsFwd.H" -#include "labelPair.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -56,16 +55,26 @@ namespace Foam class leastSquaresFaVectors : - public MeshObject<faMesh, Foam::MoveableMeshObject, leastSquaresFaVectors> + public MeshObject<faMesh, MoveableMeshObject, leastSquaresFaVectors> { - // Private data + // Private Typedefs + + typedef MeshObject + < + faMesh, + MoveableMeshObject, + leastSquaresFaVectors + > MeshObject_type; + + + // Private Data //- Least-squares gradient vectors - mutable edgeVectorField* pVectorsPtr_; - mutable edgeVectorField* nVectorsPtr_; + mutable std::unique_ptr<edgeVectorField> pVectorsPtr_; + mutable std::unique_ptr<edgeVectorField> nVectorsPtr_; - // Private member functions + // Private Member Functions //- Construct Least-squares gradient vectors void makeLeastSquaresVectors() const; @@ -84,7 +93,7 @@ public: //- Destructor - virtual ~leastSquaresFaVectors(); + virtual ~leastSquaresFaVectors() = default; // Member functions diff --git a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrad.H b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrad.H index 1d4ca927fdfe61cdfebb273941d144916ad0d75d..4eef13831fa8447716c2ebf5b90631af3c0ba0dd 100644 --- a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrad.H +++ b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrad.H @@ -66,6 +66,7 @@ class edgeLimitedGrad { // Private Data + //- Basic gradient scheme tmp<fa::gradScheme<Type>> basicGradScheme_; //- Limiter coefficient @@ -83,6 +84,14 @@ class edgeLimitedGrad ) const; +public: + + //- RunTime type information + TypeName("edgeLimited"); + + + // Generated Methods + //- No copy construct edgeLimitedGrad(const edgeLimitedGrad&) = delete; @@ -90,12 +99,6 @@ class edgeLimitedGrad void operator=(const edgeLimitedGrad&) = delete; -public: - - //- RunTime type information - TypeName("edgeLimited"); - - // Constructors //- Construct from mesh and schemeData diff --git a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrads.C b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrads.C index d86270a326c1b718a69821a924142eb4dd4c2547..a68d4f63ec717ad2578af29e386c879b88dc9d5c 100644 --- a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrads.C +++ b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/edgeLimitedFaGrad/edgeLimitedFaGrads.C @@ -28,11 +28,6 @@ License #include "edgeLimitedFaGrad.H" #include "gaussFaGrad.H" -#include "faMesh.H" -#include "areaFaMesh.H" -#include "edgeFaMesh.H" -#include "areaFields.H" -#include "fixedValueFaPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -96,22 +91,22 @@ tmp<areaVectorField> edgeLimitedGrad<scalar>::calcGrad const areaVectorField& C = mesh.areaCentres(); const edgeVectorField& Cf = mesh.edgeCentres(); - // create limiter + // Create limiter field scalarField limiter(vsf.internalField().size(), 1.0); - scalar rk = (1.0/k_ - 1.0); + const scalar rk = (1.0/k_ - 1.0); forAll(owner, edgei) { - label own = owner[edgei]; - label nei = neighbour[edgei]; + const label own = owner[edgei]; + const label nei = neighbour[edgei]; - scalar vsfOwn = vsf[own]; - scalar vsfNei = vsf[nei]; + const scalar vsfOwn = vsf[own]; + const scalar vsfNei = vsf[nei]; scalar maxEdge = max(vsfOwn, vsfNei); scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); + const scalar maxMinEdge = rk*(maxEdge - minEdge); maxEdge += maxMinEdge; minEdge -= maxMinEdge; @@ -119,7 +114,8 @@ tmp<areaVectorField> edgeLimitedGrad<scalar>::calcGrad limitEdge ( limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, + maxEdge - vsfOwn, + minEdge - vsfOwn, (Cf[edgei] - C[own]) & g[own] ); @@ -127,67 +123,53 @@ tmp<areaVectorField> edgeLimitedGrad<scalar>::calcGrad limitEdge ( limiter[nei], - maxEdge - vsfNei, minEdge - vsfNei, + maxEdge - vsfNei, + minEdge - vsfNei, (Cf[edgei] - C[nei]) & g[nei] ); } - const areaScalarField::Boundary& bsf = vsf.boundaryField(); + // Lambda expression to update limiter for boundary edges + auto updateLimiter = [&](const label patchi, const scalarField& fld) -> void + { + const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); + const vectorField& pCf = Cf.boundaryField()[patchi]; + + forAll(pOwner, edgei) + { + const label own = pOwner[edgei]; + + const scalar vsfOwn = vsf[own]; + const scalar vsfNei = fld[edgei]; + + scalar maxEdge = max(vsfOwn, vsfNei); + scalar minEdge = min(vsfOwn, vsfNei); + const scalar maxMinEdge = rk*(maxEdge - minEdge); + maxEdge += maxMinEdge; + minEdge -= maxMinEdge; + + limitEdge + ( + limiter[own], + maxEdge - vsfOwn, + minEdge - vsfOwn, + (pCf[edgei] - C[own]) & g[own] + ); + } + }; + const areaScalarField::Boundary& bsf = vsf.boundaryField(); forAll(bsf, patchi) { const faPatchScalarField& psf = bsf[patchi]; - const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); - const vectorField& pCf = Cf.boundaryField()[patchi]; - if (psf.coupled()) { - const scalarField psfNei(psf.patchNeighbourField()); - - forAll(pOwner, pEdgei) - { - label own = pOwner[pEdgei]; - - scalar vsfOwn = vsf[own]; - scalar vsfNei = psfNei[pEdgei]; - - scalar maxEdge = max(vsfOwn, vsfNei); - scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); - maxEdge += maxMinEdge; - minEdge -= maxMinEdge; - - limitEdge - ( - limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, - (pCf[pEdgei] - C[own]) & g[own] - ); - } + updateLimiter(patchi, psf.patchNeighbourField()); } else if (psf.fixesValue()) { - forAll(pOwner, pEdgei) - { - label own = pOwner[pEdgei]; - - scalar vsfOwn = vsf[own]; - scalar vsfNei = psf[pEdgei]; - - scalar maxEdge = max(vsfOwn, vsfNei); - scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); - maxEdge += maxMinEdge; - minEdge -= maxMinEdge; - - limitEdge - ( - limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, - (pCf[pEdgei] - C[own]) & g[own] - ); - } + updateLimiter(patchi, psf); } } @@ -231,35 +213,33 @@ tmp<areaTensorField> edgeLimitedGrad<vector>::calcGrad const areaVectorField& C = mesh.areaCentres(); const edgeVectorField& Cf = mesh.edgeCentres(); - // create limiter + // Create limiter scalarField limiter(vvf.internalField().size(), 1.0); - scalar rk = (1.0/k_ - 1.0); + const scalar rk = (1.0/k_ - 1.0); forAll(owner, edgei) { - label own = owner[edgei]; - label nei = neighbour[edgei]; - - vector vvfOwn = vvf[own]; - vector vvfNei = vvf[nei]; + const label own = owner[edgei]; + const label nei = neighbour[edgei]; // owner side - vector gradf = (Cf[edgei] - C[own]) & g[own]; + vector gradf((Cf[edgei] - C[own]) & g[own]); - scalar vsfOwn = gradf & vvfOwn; - scalar vsfNei = gradf & vvfNei; + scalar vsfOwn = gradf & vvf[own]; + scalar vsfNei = gradf & vvf[nei]; scalar maxEdge = max(vsfOwn, vsfNei); scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); + const scalar maxMinEdge = rk*(maxEdge - minEdge); maxEdge += maxMinEdge; minEdge -= maxMinEdge; limitEdge ( limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, + maxEdge - vsfOwn, + minEdge - vsfOwn, magSqr(gradf) ); @@ -267,8 +247,8 @@ tmp<areaTensorField> edgeLimitedGrad<vector>::calcGrad // neighbour side gradf = (Cf[edgei] - C[nei]) & g[nei]; - vsfOwn = gradf & vvfOwn; - vsfNei = gradf & vvfNei; + vsfOwn = gradf & vvf[own]; + vsfNei = gradf & vvf[nei]; maxEdge = max(vsfOwn, vsfNei); minEdge = min(vsfOwn, vsfNei); @@ -276,78 +256,57 @@ tmp<areaTensorField> edgeLimitedGrad<vector>::calcGrad limitEdge ( limiter[nei], - maxEdge - vsfNei, minEdge - vsfNei, + maxEdge - vsfNei, + minEdge - vsfNei, magSqr(gradf) ); } - const areaVectorField::Boundary& bvf = vvf.boundaryField(); - - forAll(bvf, patchi) + // Lambda expression to update limiter for boundary edges + auto updateLimiter = [&](const label patchi, const vectorField& fld) -> void { - const faPatchVectorField& psf = bvf[patchi]; - const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); const vectorField& pCf = Cf.boundaryField()[patchi]; - if (psf.coupled()) + forAll(pOwner, edgei) { - const vectorField psfNei(psf.patchNeighbourField()); - - forAll(pOwner, pEdgei) - { - label own = pOwner[pEdgei]; - - vector vvfOwn = vvf[own]; - vector vvfNei = psfNei[pEdgei]; - - vector gradf = (pCf[pEdgei] - C[own]) & g[own]; + const label own = pOwner[edgei]; + + const vector gradf((pCf[edgei] - C[own]) & g[own]); + + const scalar vsfOwn = gradf & vvf[own]; + const scalar vsfNei = gradf & fld[edgei]; + + scalar maxEdge = max(vsfOwn, vsfNei); + scalar minEdge = min(vsfOwn, vsfNei); + const scalar maxMinEdge = rk*(maxEdge - minEdge); + maxEdge += maxMinEdge; + minEdge -= maxMinEdge; + + limitEdge + ( + limiter[own], + maxEdge - vsfOwn, + minEdge - vsfOwn, + magSqr(gradf) + ); + } + }; - scalar vsfOwn = gradf & vvfOwn; - scalar vsfNei = gradf & vvfNei; - scalar maxEdge = max(vsfOwn, vsfNei); - scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); - maxEdge += maxMinEdge; - minEdge -= maxMinEdge; + const areaVectorField::Boundary& bvf = vvf.boundaryField(); + forAll(bvf, patchi) + { + const faPatchVectorField& psf = bvf[patchi]; - limitEdge - ( - limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, - magSqr(gradf) - ); - } + if (psf.coupled()) + { + updateLimiter(patchi, psf.patchNeighbourField()); } else if (psf.fixesValue()) { - forAll(pOwner, pEdgei) - { - label own = pOwner[pEdgei]; - - vector vvfOwn = vvf[own]; - vector vvfNei = psf[pEdgei]; - - vector gradf = (pCf[pEdgei] - C[own]) & g[own]; - - scalar vsfOwn = gradf & vvfOwn; - scalar vsfNei = gradf & vvfNei; - - scalar maxEdge = max(vsfOwn, vsfNei); - scalar minEdge = min(vsfOwn, vsfNei); - scalar maxMinEdge = rk*(maxEdge - minEdge); - maxEdge += maxMinEdge; - minEdge -= maxMinEdge; - - limitEdge - ( - limiter[own], - maxEdge - vsfOwn, minEdge - vsfOwn, - magSqr(gradf) - ); - } + updateLimiter(patchi, psf); } } diff --git a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrad.H b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrad.H index 16f503326422caa36d639a7d22f15580f15941be..006280d2656d7a492bf7455c27756dab903742d3 100644 --- a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrad.H +++ b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrad.H @@ -69,13 +69,20 @@ class faceLimitedGrad { // Private Data + //- Basic gradient scheme tmp<fa::gradScheme<Type>> basicGradScheme_; //- Limiter coefficient scalar k_; - // Private Member Functions +public: + + //- RunTime type information + TypeName("faceLimited"); + + + // Generated Methods //- No copy construct faceLimitedGrad(const faceLimitedGrad&) = delete; @@ -84,12 +91,6 @@ class faceLimitedGrad void operator=(const faceLimitedGrad&) = delete; -public: - - //- RunTime type information - TypeName("faceLimited"); - - // Constructors //- Construct from mesh and schemeData diff --git a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrads.C b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrads.C index c32dda42fe48a3cab5dfcec663bb5a576b8a0b14..eb0cc9bcbd05eaf9f37004519f3e0f0d54db7ef6 100644 --- a/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrads.C +++ b/src/finiteArea/finiteArea/gradSchemes/limitedGradSchemes/faceLimitedFaGrad/faceLimitedFaGrads.C @@ -28,11 +28,6 @@ License #include "faceLimitedFaGrad.H" #include "gaussFaGrad.H" -#include "faMesh.H" -#include "areaFaMesh.H" -#include "edgeFaMesh.H" -#include "areaFields.H" -#include "fixedValueFaPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -123,11 +118,11 @@ tmp<areaVectorField> faceLimitedGrad<scalar>::calcGrad forAll(owner, facei) { - label own = owner[facei]; - label nei = neighbour[facei]; + const label own = owner[facei]; + const label nei = neighbour[facei]; - scalar vsfOwn = vsf[own]; - scalar vsfNei = vsf[nei]; + const scalar vsfOwn = vsf[own]; + const scalar vsfNei = vsf[nei]; maxVsf[own] = max(maxVsf[own], vsfNei); minVsf[own] = min(minVsf[own], vsfNei); @@ -137,37 +132,33 @@ tmp<areaVectorField> faceLimitedGrad<scalar>::calcGrad } - const areaScalarField::Boundary& bsf = vsf.boundaryField(); + // Lambda expression to update limiter for boundary edges + auto updateLimiter = [&](const label patchi, const scalarField& fld) -> void + { + const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); + + forAll(pOwner, facei) + { + const label own = pOwner[facei]; + const scalar vsf = fld[facei]; + + maxVsf[own] = max(maxVsf[own], vsf); + minVsf[own] = min(minVsf[own], vsf); + } + }; + const areaScalarField::Boundary& bsf = vsf.boundaryField(); forAll(bsf, patchi) { const faPatchScalarField& psf = bsf[patchi]; - const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); - if (psf.coupled()) { - scalarField psfNei(psf.patchNeighbourField()); - - forAll(pOwner, pFacei) - { - label own = pOwner[pFacei]; - scalar vsfNei = psfNei[pFacei]; - - maxVsf[own] = max(maxVsf[own], vsfNei); - minVsf[own] = min(minVsf[own], vsfNei); - } + updateLimiter(patchi, psf.patchNeighbourField()); } else { - forAll(pOwner, pFacei) - { - label own = pOwner[pFacei]; - scalar vsfNei = psf[pFacei]; - - maxVsf[own] = max(maxVsf[own], vsfNei); - minVsf[own] = min(minVsf[own], vsfNei); - } + updateLimiter(patchi, psf); } } @@ -176,19 +167,19 @@ tmp<areaVectorField> faceLimitedGrad<scalar>::calcGrad if (k_ < 1.0) { - scalarField maxMinVsf((1.0/k_ - 1.0)*(maxVsf - minVsf)); + const scalarField maxMinVsf((1.0/k_ - 1.0)*(maxVsf - minVsf)); maxVsf += maxMinVsf; minVsf -= maxMinVsf; } - // create limiter + // Create limiter scalarField limiter(vsf.internalField().size(), 1.0); forAll(owner, facei) { - label own = owner[facei]; - label nei = neighbour[facei]; + const label own = owner[facei]; + const label nei = neighbour[facei]; // owner side limitEdge @@ -216,7 +207,7 @@ tmp<areaVectorField> faceLimitedGrad<scalar>::calcGrad forAll(pOwner, pFacei) { - label own = pOwner[pFacei]; + const label own = pOwner[pFacei]; limitEdge ( @@ -273,8 +264,8 @@ tmp<areaTensorField> faceLimitedGrad<vector>::calcGrad forAll(owner, facei) { - label own = owner[facei]; - label nei = neighbour[facei]; + const label own = owner[facei]; + const label nei = neighbour[facei]; const vector& vsfOwn = vsf[own]; const vector& vsfNei = vsf[nei]; @@ -287,36 +278,33 @@ tmp<areaTensorField> faceLimitedGrad<vector>::calcGrad } - const areaVectorField::Boundary& bsf = vsf.boundaryField(); + // Lambda expression to update limiter for boundary edges + auto updateLimiter = [&](const label patchi, const vectorField& fld) -> void + { + const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); + forAll(pOwner, facei) + { + const label own = pOwner[facei]; + const vector& vsf = fld[facei]; + + maxVsf[own] = max(maxVsf[own], vsf); + minVsf[own] = min(minVsf[own], vsf); + } + }; + + const areaVectorField::Boundary& bsf = vsf.boundaryField(); forAll(bsf, patchi) { const faPatchVectorField& psf = bsf[patchi]; - const labelUList& pOwner = mesh.boundary()[patchi].edgeFaces(); if (psf.coupled()) { - vectorField psfNei(psf.patchNeighbourField()); - - forAll(pOwner, pFacei) - { - label own = pOwner[pFacei]; - const vector& vsfNei = psfNei[pFacei]; - - maxVsf[own] = max(maxVsf[own], vsfNei); - minVsf[own] = min(minVsf[own], vsfNei); - } + updateLimiter(patchi, psf.patchNeighbourField()); } else { - forAll(pOwner, pFacei) - { - label own = pOwner[pFacei]; - const vector& vsfNei = psf[pFacei]; - - maxVsf[own] = max(maxVsf[own], vsfNei); - minVsf[own] = min(minVsf[own], vsfNei); - } + updateLimiter(patchi, psf); } } @@ -325,7 +313,7 @@ tmp<areaTensorField> faceLimitedGrad<vector>::calcGrad if (k_ < 1.0) { - vectorField maxMinVsf((1.0/k_ - 1.0)*(maxVsf - minVsf)); + const vectorField maxMinVsf((1.0/k_ - 1.0)*(maxVsf - minVsf)); maxVsf += maxMinVsf; minVsf -= maxMinVsf; @@ -334,13 +322,13 @@ tmp<areaTensorField> faceLimitedGrad<vector>::calcGrad } - // create limiter + // Create limiter vectorField limiter(vsf.internalField().size(), vector::one); forAll(owner, facei) { - label own = owner[facei]; - label nei = neighbour[facei]; + const label own = owner[facei]; + const label nei = neighbour[facei]; // owner side limitEdge @@ -368,7 +356,7 @@ tmp<areaTensorField> faceLimitedGrad<vector>::calcGrad forAll(pOwner, pFacei) { - label own = pOwner[pFacei]; + const label own = pOwner[pFacei]; limitEdge ( diff --git a/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.C b/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.C index 821f2c74e3d79514f132f4309c2516c86f3d6d89..af560bc7dbd227ffe4c8e078b91cd8c056dc4a92 100644 --- a/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.C +++ b/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.C @@ -27,8 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "fa.H" -#include "HashTable.H" -#include "linearEdgeInterpolation.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.H b/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.H index 01a1e3478722bec254f9af5746401aa198385f3b..63c76b9f92f3ff85890340f6f4630dcbf2b99e0f 100644 --- a/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.H +++ b/src/finiteArea/finiteArea/laplacianSchemes/faLaplacianScheme/faLaplacianScheme.H @@ -35,15 +35,12 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faLaplacianScheme_H -#define faLaplacianScheme_H +#ifndef Foam_faLaplacianScheme_H +#define Foam_faLaplacianScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "linearEdgeInterpolation.H" #include "correctedLnGrad.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -51,9 +48,8 @@ SourceFiles namespace Foam { -template<class Type> -class faMatrix; - +// Forward Declarations +template<class Type> class faMatrix; class faMesh; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -70,25 +66,16 @@ class laplacianScheme : public refCount { - protected: - // Protected data + // Protected Data const faMesh& mesh_; + tmp<edgeInterpolationScheme<scalar>> tinterpGammaScheme_; tmp<lnGradScheme<Type>> tlnGradScheme_; - // Private Member Functions - - //- No copy construct - laplacianScheme(const laplacianScheme&) = delete; - - //- No copy assignment - void operator=(const laplacianScheme&) = delete; - - public: // Declare run-time constructor selection tables @@ -103,6 +90,15 @@ public: ); + // Generated Methods + + //- No copy construct + laplacianScheme(const laplacianScheme&) = delete; + + //- No copy assignment + void operator=(const laplacianScheme&) = delete; + + // Constructors //- Construct from mesh @@ -116,30 +112,28 @@ public: //- Construct from mesh and Istream laplacianScheme(const faMesh& mesh, Istream& is) : - mesh_(mesh), - tinterpGammaScheme_(nullptr), - tlnGradScheme_(nullptr) + mesh_(mesh) { if (is.eof()) { - tinterpGammaScheme_ = tmp<edgeInterpolationScheme<scalar>> + tinterpGammaScheme_.reset ( new linearEdgeInterpolation<scalar>(mesh) ); - tlnGradScheme_ = tmp<lnGradScheme<Type>> + tlnGradScheme_.reset ( new correctedLnGrad<Type>(mesh) ); } else { - tinterpGammaScheme_ = tmp<edgeInterpolationScheme<scalar>> + tinterpGammaScheme_.reset ( edgeInterpolationScheme<scalar>::New(mesh, is) ); - tlnGradScheme_ = tmp<lnGradScheme<Type>> + tlnGradScheme_.reset ( lnGradScheme<Type>::New(mesh, is) ); @@ -218,11 +212,11 @@ public: \ namespace Foam \ { \ - namespace fa \ - { \ - laplacianScheme<Type>::addIstreamConstructorToTable<SS<Type>> \ - add##SS##Type##IstreamConstructorToTable_; \ - } \ + namespace fa \ + { \ + laplacianScheme<Type>::addIstreamConstructorToTable<SS<Type>> \ + add##SS##Type##IstreamConstructorToTable_; \ + } \ } diff --git a/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.C b/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.C index 46e7d4bb4f3502bb177523dc985d30905cc2b5d1..b5236b2369e9787d3ef4f1d3bcc829751914c503 100644 --- a/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.C +++ b/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.C @@ -82,8 +82,10 @@ gaussLaplacianScheme<Type>::famLaplacian { if (this->mesh().fluxRequired(vf.name())) { - fam.faceFluxCorrectionPtr() = new - GeometricField<Type, faePatchField, edgeMesh> + fam.faceFluxCorrectionPtr() = std::make_unique + < + GeometricField<Type, faePatchField, edgeMesh> + > ( gammaMagSf*this->tlnGradScheme_().correction(vf) ); diff --git a/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.H b/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.H index fac32562ccbf73f0effee23cd5a02a3dc5566f4f..86130d54b5328efddfc0d84b7a18d0378ad2f5db 100644 --- a/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.H +++ b/src/finiteArea/finiteArea/laplacianSchemes/gaussFaLaplacianScheme/gaussFaLaplacianScheme.H @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef gaussFaLaplacianScheme_H -#define gaussFaLaplacianScheme_H +#ifndef Foam_gaussFaLaplacianScheme_H +#define Foam_gaussFaLaplacianScheme_H #include "faLaplacianScheme.H" @@ -59,7 +59,13 @@ class gaussLaplacianScheme : public fa::laplacianScheme<Type> { - // Private Member Functions +public: + + //- Runtime type information + TypeName("Gauss"); + + + // Generated Methods //- No copy construct gaussLaplacianScheme(const gaussLaplacianScheme&) = delete; @@ -68,15 +74,9 @@ class gaussLaplacianScheme void operator=(const gaussLaplacianScheme&) = delete; -public: - - //- Runtime type information - TypeName("Gauss"); - - // Constructors - //- Construct null + //- Construct from mesh gaussLaplacianScheme(const faMesh& mesh) : laplacianScheme<Type>(mesh) diff --git a/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.C b/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.C index 808fd89648f635540ed85a66f4abf2ff8dac62f1..53805d07aed14bb407a9f821944d8ebaa4054c20 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.C +++ b/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.C @@ -25,10 +25,8 @@ License \*---------------------------------------------------------------------------*/ -#include "correctedLnGrad.H" #include "areaFields.H" #include "edgeFields.H" -#include "linearEdgeInterpolation.H" #include "gaussFaGrad.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.H b/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.H index b7128c00a6cb91b6f9a79f6ff09941cf14099385..74bcf22ba19b4c06c7d2734b5f34bf4a9b9fbd1e 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.H +++ b/src/finiteArea/finiteArea/lnGradSchemes/correctedLnGrad/correctedLnGrad.H @@ -58,18 +58,21 @@ class correctedLnGrad : public lnGradScheme<Type> { - // Private Member Functions - - //- No copy assignment - void operator=(const correctedLnGrad&) = delete; - - public: //- Runtime type information TypeName("corrected"); + // Generated Methods + + //- No copy construct + correctedLnGrad(const correctedLnGrad&) = delete; + + //- No copy assignment + void operator=(const correctedLnGrad&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.C b/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.C index b8cef6777752dd7a6ee573cd9466558b33fdb90d..425891626aa9677ffea6d00c8625f019736c18a3 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.C +++ b/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.C @@ -29,7 +29,6 @@ License #include "areaFields.H" #include "edgeFields.H" #include "correctedLnGrad.H" -#include "linearEdgeInterpolation.H" #include "gaussFaGrad.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.H b/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.H index 97a250e9c6e672a27805b3b514a56281199d0abb..6a9ad2331ad539f101a558eb1a8a82c20d925773 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.H +++ b/src/finiteArea/finiteArea/lnGradSchemes/fourthLnGrad/fourthLnGrad.H @@ -58,18 +58,21 @@ class fourthLnGrad : public lnGradScheme<Type> { - // Private Member Functions - - //- No copy assignment - void operator=(const fourthLnGrad&) = delete; - - public: //- Runtime type information TypeName("fourth"); + // Generated Methods + + //- No copy construct + fourthLnGrad(const fourthLnGrad&) = delete; + + //- No copy assignment + void operator=(const fourthLnGrad&) = delete; + + // Constructors //- Construct from mesh @@ -102,10 +105,7 @@ public: } //- Return true if this scheme uses an explicit correction - virtual bool corrected() const - { - return true; - } + virtual bool corrected() const { return true; } //- Return the explicit correction to the fourthLnGrad // for the given field diff --git a/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.C b/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.C index 8c3f93a3f6f064b38428f2d0baa1051084854f86..d8857d4e1f62f578a69bf3c2e89e25d9b0afcd0d 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.C +++ b/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.C @@ -72,7 +72,7 @@ limitedLnGrad<Type>::correction (1 - limitCoeff_)*mag(corr) + dimensionedScalar("small", corr.dimensions(), SMALL) ), - dimensionedScalar("one", dimless, 1.0) + dimensionedScalar(dimless, Foam::one{}) ) ); diff --git a/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.H b/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.H index 1e0a6d7720e34a81f4c45d959cbef19d4ca8c58e..eef75a51f8ac1494f071af06f85844e13127f190 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.H +++ b/src/finiteArea/finiteArea/lnGradSchemes/limitedLnGrad/limitedLnGrad.H @@ -68,24 +68,27 @@ class limitedLnGrad : public lnGradScheme<Type> { - // Private data + // Private Data //- Limiter. 0 = no limiting, 1 = full limiting scalar limitCoeff_; - // Private Member Functions - - //- No copy assignment - void operator=(const limitedLnGrad&) = delete; - - public: //- Runtime type information TypeName("limited"); + // Generated Methods + + //- No copy construct + limitedLnGrad(const limitedLnGrad&) = delete; + + //- No copy assignment + void operator=(const limitedLnGrad&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.C b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.C index 2fbc4fbc81bdfcae9ca5ae23f78a43d622fcbadd..1e073adb513d22d5333d7f139c38f1137b9338d7 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.C +++ b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.C @@ -30,7 +30,6 @@ License #include "lnGradScheme.H" #include "areaFields.H" #include "edgeFields.H" -#include "HashTable.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.H b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.H index 63adf7ea78a15263e6614fc3e9e7877fe9d4d7ff..a1692f0d8d806bb48b4a48fae2125b30aa84a584 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.H +++ b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradScheme.H @@ -37,10 +37,8 @@ SourceFiles #ifndef lnGradScheme_H #define lnGradScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -48,6 +46,7 @@ SourceFiles namespace Foam { +// Forward Declarations class faMesh; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -64,18 +63,12 @@ class lnGradScheme : public refCount { - // Private data + // Private Data //- Hold reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy assignment - void operator=(const lnGradScheme&) = delete; - - public: // Declare run-time constructor selection tables @@ -90,6 +83,15 @@ public: ); + // Generated Methods + + //- No copy construct + lnGradScheme(const lnGradScheme&) = delete; + + //- No copy assignment + void operator=(const lnGradScheme&) = delete; + + // Constructors //- Construct from mesh @@ -116,10 +118,7 @@ public: // Member Functions //- Return mesh reference - const faMesh& mesh() const - { - return mesh_; - } + const faMesh& mesh() const noexcept { return mesh_; } //- Return the lnGrad of the given cell field // with the given weighting factors @@ -138,10 +137,7 @@ public: ) const = 0; //- Return true if this scheme uses an explicit correction - virtual bool corrected() const - { - return false; - } + virtual bool corrected() const { return false; } //- Return the explicit correction to the lnGrad // for the given field diff --git a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradSchemes.C b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradSchemes.C index 65acc733043f383cff3c285cbff79c082e1f0b0d..49ae846a8b65f6293134da7be8ee054aa5001c80 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradSchemes.C +++ b/src/finiteArea/finiteArea/lnGradSchemes/lnGradScheme/lnGradSchemes.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "lnGradScheme.H" -#include "HashTable.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteArea/finiteArea/lnGradSchemes/uncorrectedLnGrad/uncorrectedLnGrad.H b/src/finiteArea/finiteArea/lnGradSchemes/uncorrectedLnGrad/uncorrectedLnGrad.H index 8ff48692cecadb96f9ce608b8fd407be67e90096..ecda9a6e1fc858ed703caee0d2366fce1e5c7f3e 100644 --- a/src/finiteArea/finiteArea/lnGradSchemes/uncorrectedLnGrad/uncorrectedLnGrad.H +++ b/src/finiteArea/finiteArea/lnGradSchemes/uncorrectedLnGrad/uncorrectedLnGrad.H @@ -58,18 +58,21 @@ class uncorrectedLnGrad : public lnGradScheme<Type> { - // Private Member Functions - - //- No copy assignment - void operator=(const uncorrectedLnGrad&) = delete; - - public: //- Runtime type information TypeName("uncorrected"); + // Generated Methods + + //- No copy construct + uncorrectedLnGrad(const uncorrectedLnGrad&) = delete; + + //- No copy assignment + void operator=(const uncorrectedLnGrad&) = delete; + + // Constructors //- Construct from mesh @@ -101,10 +104,7 @@ public: } //- Return true if this scheme uses an explicit correction - virtual bool corrected() const - { - return false; - } + virtual bool corrected() const { return false; } //- Return the explicit correction to the uncorrectedLnGrad //- for the given field diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.C b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.C index 54dcd271b1460ce156813086109b87c999756221..2fcbe116a1a743c73c4935647750dca34d1f57e5 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.C +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.C @@ -100,14 +100,14 @@ Foam::fac::interpolate Istream& schemeData ) { -# ifdef DEBUGInterpolations + #ifdef DEBUGInterpolations if (edgeInterpolation::debug) { InfoInFunction << "interpolating GeometricField<Type, faPatchField, areaMesh> " << endl; } -# endif + #endif return scheme<Type>(faceFlux, schemeData)().interpolate(vf); } @@ -122,7 +122,7 @@ Foam::fac::interpolate const word& name ) { -# ifdef DEBUGInterpolations + #ifdef DEBUGInterpolations if (edgeInterpolation::debug) { InfoInFunction @@ -130,7 +130,7 @@ Foam::fac::interpolate << "using " << name << endl; } -# endif + #endif return scheme<Type>(faceFlux, name)().interpolate(vf); } @@ -199,14 +199,14 @@ Foam::fac::interpolate Istream& schemeData ) { -# ifdef DEBUGInterpolations + #ifdef DEBUGInterpolations if (edgeInterpolation::debug) { InfoInFunction << "interpolating GeometricField<Type, faPatchField, areaMesh> " << endl; } -# endif + #endif return scheme<Type>(vf.mesh(), schemeData)().interpolate(vf); } @@ -220,7 +220,7 @@ Foam::fac::interpolate const word& name ) { -# ifdef DEBUGInterpolations + #ifdef DEBUGInterpolations if (edgeInterpolation::debug) { InfoInFunction @@ -228,7 +228,7 @@ Foam::fac::interpolate << "using " << name << endl; } -# endif + #endif return scheme<Type>(vf.mesh(), name)().interpolate(vf); } @@ -257,7 +257,7 @@ Foam::fac::interpolate const GeometricField<Type, faPatchField, areaMesh>& vf ) { -# ifdef DEBUGInterpolations + #ifdef DEBUGInterpolations if (edgeInterpolation::debug) { InfoInFunction @@ -265,7 +265,7 @@ Foam::fac::interpolate << "using run-time selected scheme" << endl; } -# endif + #endif return interpolate(vf, "interpolate(" + vf.name() + ')'); } diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.H b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.H index 2b38213350c98911c47bc6e079d9d860d60787a4..a9a974ad01ce23f01352c3ce3add69b83cc2fee2 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.H +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolate.H @@ -36,7 +36,6 @@ SourceFiles #ifndef edgeInterpolate_H #define edgeInterpolate_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" #include "edgeInterpolationScheme.H" diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.C b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.C index be58b303255f51cdc2438f97d97426555712919c..5da45321ce37f7a182ec8c9334cdb16b2d9560ae 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.C +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.C @@ -29,8 +29,6 @@ License #include "faMesh.H" #include "areaFields.H" #include "edgeFields.H" -#include "demandDrivenData.H" -#include "faPatchFields.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -39,79 +37,55 @@ namespace Foam defineTypeNameAndDebug(edgeInterpolation, 0); } -// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * // - -void Foam::edgeInterpolation::clearOut() -{ - deleteDemandDrivenData(lPN_); - deleteDemandDrivenData(weightingFactors_); - deleteDemandDrivenData(differenceFactors_); - deleteDemandDrivenData(correctionVectors_); - deleteDemandDrivenData(skewCorrectionVectors_); -} - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::edgeInterpolation::edgeInterpolation(const faMesh& fam) : faMesh_(fam), - lPN_(nullptr), - weightingFactors_(nullptr), - differenceFactors_(nullptr), - correctionVectors_(nullptr), - skewCorrectionVectors_(nullptr), orthogonal_(false), skew_(true) {} -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::edgeInterpolation::~edgeInterpolation() -{ - clearOut(); -} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // const Foam::edgeScalarField& Foam::edgeInterpolation::lPN() const { - if (!lPN_) + if (!lPNptr_) { makeLPN(); } - return (*lPN_); + return (*lPNptr_); } const Foam::edgeScalarField& Foam::edgeInterpolation::weights() const { - if (!weightingFactors_) + if (!weightingFactorsPtr_) { makeWeights(); } - return (*weightingFactors_); + return (*weightingFactorsPtr_); } const Foam::edgeScalarField& Foam::edgeInterpolation::deltaCoeffs() const { - if (!differenceFactors_) + if (!differenceFactorsPtr_) { makeDeltaCoeffs(); } - return (*differenceFactors_); + return (*differenceFactorsPtr_); } bool Foam::edgeInterpolation::orthogonal() const { - if (orthogonal_ == false && !correctionVectors_) + if (orthogonal_ == false && !correctionVectorsPtr_) { makeCorrectionVectors(); } @@ -129,13 +103,13 @@ const Foam::edgeVectorField& Foam::edgeInterpolation::correctionVectors() const << abort(FatalError); } - return (*correctionVectors_); + return (*correctionVectorsPtr_); } bool Foam::edgeInterpolation::skew() const { - if (skew_ == true && !skewCorrectionVectors_) + if (skew_ == true && !skewCorrectionVectorsPtr_) { makeSkewCorrectionVectors(); } @@ -154,21 +128,21 @@ Foam::edgeInterpolation::skewCorrectionVectors() const << abort(FatalError); } - return (*skewCorrectionVectors_); + return (*skewCorrectionVectorsPtr_); } bool Foam::edgeInterpolation::movePoints() const { - deleteDemandDrivenData(lPN_); - deleteDemandDrivenData(weightingFactors_); - deleteDemandDrivenData(differenceFactors_); + lPNptr_.reset(nullptr); + weightingFactorsPtr_.reset(nullptr); + differenceFactorsPtr_.reset(nullptr); orthogonal_ = false; - deleteDemandDrivenData(correctionVectors_); + correctionVectorsPtr_.reset(nullptr); skew_ = true; - deleteDemandDrivenData(skewCorrectionVectors_); + skewCorrectionVectorsPtr_.reset(nullptr); return true; } @@ -180,14 +154,14 @@ const Foam::vector& Foam::edgeInterpolation::skewCorr(const label edgeI) const return ( - skewCorrectionVectors_ - ? (*skewCorrectionVectors_)[edgeI] + skewCorrectionVectorsPtr_ + ? (*skewCorrectionVectorsPtr_)[edgeI] : pTraits<vector>::zero ); #else - return (*skewCorrectionVectors_)[edgeI]; + return (*skewCorrectionVectorsPtr_)[edgeI]; #endif } @@ -200,7 +174,7 @@ void Foam::edgeInterpolation::makeLPN() const << endl; - lPN_ = new edgeScalarField + lPNptr_ = std::make_unique<edgeScalarField> ( IOobject ( @@ -214,7 +188,7 @@ void Foam::edgeInterpolation::makeLPN() const mesh(), dimLength ); - edgeScalarField& lPN = *lPN_; + edgeScalarField& lPN = *lPNptr_; // Set local references to mesh data const edgeVectorField& edgeCentres = mesh().edgeCentres(); @@ -281,7 +255,7 @@ void Foam::edgeInterpolation::makeWeights() const << endl; - weightingFactors_ = new edgeScalarField + weightingFactorsPtr_ = std::make_unique<edgeScalarField> ( IOobject ( @@ -295,7 +269,7 @@ void Foam::edgeInterpolation::makeWeights() const mesh(), dimensionedScalar(dimless, 1) ); - edgeScalarField& weightingFactors = *weightingFactors_; + edgeScalarField& weightingFactors = *weightingFactorsPtr_; // Set local references to mesh data @@ -361,11 +335,11 @@ void Foam::edgeInterpolation::makeDeltaCoeffs() const // needed to make sure deltaCoeffs are calculated for parallel runs. weights(); - differenceFactors_ = new edgeScalarField + differenceFactorsPtr_ = std::make_unique<edgeScalarField> ( IOobject ( - "differenceFactors_", + "differenceFactors", mesh().pointsInstance(), mesh().thisDb(), IOobject::NO_READ, @@ -375,7 +349,7 @@ void Foam::edgeInterpolation::makeDeltaCoeffs() const mesh(), dimensionedScalar(dimless/dimLength, SMALL) ); - edgeScalarField& DeltaCoeffs = *differenceFactors_; + edgeScalarField& DeltaCoeffs = *differenceFactorsPtr_; scalarField& dc = DeltaCoeffs.primitiveFieldRef(); // Set local references to mesh data @@ -455,7 +429,7 @@ void Foam::edgeInterpolation::makeCorrectionVectors() const << "Constructing non-orthogonal correction vectors" << endl; - correctionVectors_ = new edgeVectorField + correctionVectorsPtr_ = std::make_unique<edgeVectorField> ( IOobject ( @@ -469,7 +443,7 @@ void Foam::edgeInterpolation::makeCorrectionVectors() const mesh(), dimless ); - edgeVectorField& CorrVecs = *correctionVectors_; + edgeVectorField& CorrVecs = *correctionVectorsPtr_; // Set local references to mesh data const areaVectorField& faceCentres = mesh().areaCentres(); @@ -543,7 +517,7 @@ void Foam::edgeInterpolation::makeCorrectionVectors() const if (NonOrthogCoeff < 0.1) { orthogonal_ = true; - deleteDemandDrivenData(correctionVectors_); + correctionVectorsPtr_.reset(nullptr); } else { @@ -562,7 +536,7 @@ void Foam::edgeInterpolation::makeSkewCorrectionVectors() const << "Constructing skew correction vectors" << endl; - skewCorrectionVectors_ = new edgeVectorField + skewCorrectionVectorsPtr_ = std::make_unique<edgeVectorField> ( IOobject ( @@ -576,7 +550,7 @@ void Foam::edgeInterpolation::makeSkewCorrectionVectors() const mesh(), dimensionedVector(dimless, Zero) ); - edgeVectorField& SkewCorrVecs = *skewCorrectionVectors_; + edgeVectorField& SkewCorrVecs = *skewCorrectionVectorsPtr_; // Set local references to mesh data const areaVectorField& C = mesh().areaCentres(); @@ -700,12 +674,12 @@ void Foam::edgeInterpolation::makeSkewCorrectionVectors() const if (skewCoeff < maxSkewRatio) { - deleteDemandDrivenData(skewCorrectionVectors_); + skewCorrectionVectorsPtr_.reset(nullptr); } #endif - skew_ = bool(skewCorrectionVectors_); + skew_ = bool(skewCorrectionVectorsPtr_); DebugInFunction diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.H index ff84b3c7420a893d3d025e3ef7610ccfa9b71496..689b1384d47faed7db87878bbe078dc8d5ef9c0b 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolation.H @@ -42,11 +42,8 @@ SourceFiles #ifndef Foam_edgeInterpolation_H #define Foam_edgeInterpolation_H -#include "tmp.H" -#include "scalar.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "className.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -71,19 +68,19 @@ class edgeInterpolation // Demand-driven data //- Geodesic distance between centroids of neighbour finite areas - mutable edgeScalarField* lPN_; + mutable std::unique_ptr<edgeScalarField> lPNptr_; //- Central-differencing weighting factors - mutable edgeScalarField* weightingFactors_; + mutable std::unique_ptr<edgeScalarField> weightingFactorsPtr_; //- Face-gradient difference factors - mutable edgeScalarField* differenceFactors_; + mutable std::unique_ptr<edgeScalarField> differenceFactorsPtr_; //- Non-orthogonality correction vectors - mutable edgeVectorField* correctionVectors_; + mutable std::unique_ptr<edgeVectorField> correctionVectorsPtr_; //- Skew correction vectors - mutable edgeVectorField* skewCorrectionVectors_; + mutable std::unique_ptr<edgeVectorField> skewCorrectionVectorsPtr_; //- Is mesh orthogonal mutable bool orthogonal_; @@ -113,20 +110,19 @@ class edgeInterpolation void makeSkewCorrectionVectors() const; -protected: +public: - // Protected Member Functions + // Declare name of the class and it's debug switch + ClassName("edgeInterpolation"); - // Storage Management - //- Clear all geometry and addressing - void clearOut(); + // Generated Methods + //- No copy construct + edgeInterpolation(const edgeInterpolation&) = delete; -public: - - // Declare name of the class and it's debug switch - ClassName("edgeInterpolation"); + //- No copy assignment + void operator=(const edgeInterpolation&) = delete; // Constructors @@ -136,16 +132,13 @@ public: //- Destructor - ~edgeInterpolation(); + ~edgeInterpolation() = default; // Member Functions //- Return mesh reference - const faMesh& mesh() const noexcept - { - return faMesh_; - } + const faMesh& mesh() const noexcept { return faMesh_; } //- Return reference to PN geodesic distance const edgeScalarField& lPN() const; @@ -178,7 +171,7 @@ public: // Storage Management //- True if weights exist - bool hasWeights() const noexcept { return bool(weightingFactors_); } + bool hasWeights() const noexcept { return bool(weightingFactorsPtr_); } }; diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C index b348c7ca0f2e8639c020fe1c89427f6d55dc3838..d84b52730fb95f61c70e79ae1a5ec2325f0889c5 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C @@ -29,9 +29,7 @@ License #include "edgeInterpolationScheme.H" #include "areaFields.H" #include "edgeFields.H" -#include "faPatchFields.H" #include "coupledFaPatchField.H" -#include "transform.H" // * * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * // @@ -211,8 +209,8 @@ Foam::edgeInterpolationScheme<Type>::interpolate label size = vf.boundaryField()[pi].patch().size(); label start = vf.boundaryField()[pi].patch().start(); - Field<Type> pOwnVf = vf.boundaryField()[pi].patchInternalField(); - Field<Type> pNgbVf = vf.boundaryField()[pi].patchNeighbourField(); + Field<Type> pOwnVf(vf.boundaryField()[pi].patchInternalField()); + Field<Type> pNgbVf(vf.boundaryField()[pi].patchNeighbourField()); Field<Type>& pSf = sf.boundaryFieldRef()[pi]; diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.H b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.H index 64bc2a9cef82885f52ff49a0f0f99fd650418a47..bc4a12f06f6f60e95d32be50a111fa5a952f3304 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.H +++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.H @@ -37,10 +37,8 @@ SourceFiles #ifndef edgeInterpolationScheme_H #define edgeInterpolationScheme_H -#include "tmp.H" #include "areaFieldsFwd.H" #include "edgeFieldsFwd.H" -#include "typeInfo.H" #include "runTimeSelectionTables.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -59,18 +57,12 @@ class edgeInterpolationScheme : public refCount { - // Private data + // Private Data - //- Hold reference to mesh + //- Reference to mesh const faMesh& mesh_; - // Private Member Functions - - //- No copy assignment - void operator=(const edgeInterpolationScheme&) = delete; - - public: // Declare run-time constructor selection tables @@ -101,6 +93,15 @@ public: ); + // Private Member Functions + + //- No copy construct + edgeInterpolationScheme(const edgeInterpolationScheme&) = delete; + + //- No copy assignment + void operator=(const edgeInterpolationScheme&) = delete; + + // Constructors //- Construct from mesh @@ -179,10 +180,7 @@ public: ) const = 0; //- Return true if this scheme uses an explicit correction - virtual bool corrected() const - { - return false; - } + virtual bool corrected() const { return false; } //- Return the explicit correction to the face-interpolate // for the given field diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/Gamma/Gamma.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/Gamma/Gamma.H index 39b547745ded6de2c0db3d8090505a664721a361..6b3eb5f3be418dd0054f5aac358063c7f4dfd4a3 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/Gamma/Gamma.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/Gamma/Gamma.H @@ -54,7 +54,11 @@ namespace Foam class GammaWeight { - scalar k_; + // Private Data + + //- Model coefficient [0,1] + scalar k_; + public: @@ -72,7 +76,7 @@ public: // Rescale k_ to be >= 0 and <= 0.5 (TVD conformant) // and avoid the /0 when k_ = 0 - k_ = max(k_/2.0, SMALL); + k_ = max(0.5*k_, SMALL); } @@ -87,30 +91,19 @@ public: const vector& d ) const { - scalar magd = mag(d); - vector dHat = d/mag(d); - - scalar gradf = (phiN - phiP)/magd; + const vector dHat(normalised(d)); - scalar gradcf; - scalar udWeight; - - if (faceFlux > 0) - { - gradcf = dHat & gradcP; - udWeight = 1; - } - else - { - gradcf = dHat & gradcN; - udWeight = 0; - } + // Choose gradc based on faceFlux + const vector& gradcPN = (faceFlux > 0) ? gradcP : gradcN; + const scalar udWeight = (faceFlux > 0) ? 1 : 0; // Stabilise for division - gradcf = stabilise(gradcf, SMALL); + const scalar gradcf = stabilise(dHat & gradcPN, SMALL); + + const scalar gradf = (phiN - phiP)/mag(d); - scalar phict = 1 - 0.5*gradf/gradcf; - scalar limiter = clamp(phict/k_, zero_one{}); + const scalar phict = 1 - 0.5*gradf/gradcf; + const scalar limiter = clamp(phict/k_, zero_one{}); return lerp(udWeight, cdWeight, limiter); } diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/NVDscheme/faNVDscheme.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/NVDscheme/faNVDscheme.H index b6ad35709a3d049f462b842736bd23e9e65ceae9..442d045698c63f6781aa14e7e2f8fd5fe376884a 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/NVDscheme/faNVDscheme.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/NVDscheme/faNVDscheme.H @@ -72,14 +72,6 @@ protected: const edgeScalarField& edgeFlux_; - // Protected Member Functions - - //- No copy construct - faNVDscheme(const faNVDscheme&) = delete; - - //- No copy assignment - void operator=(const faNVDscheme&) = delete; - public: @@ -91,6 +83,15 @@ public: TypeName("faNVDscheme"); + // Generated Methods + + //- No copy construct + faNVDscheme(const faNVDscheme&) = delete; + + //- No copy assignment + void operator=(const faNVDscheme&) = delete; + + // Constructors //- Construct from mesh and edgeFlux and blendingFactor diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/blended/blendedEdgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/blended/blendedEdgeInterpolation.H index 5e3bfc513a793a40a517b8a87ce7b5b700c88cd2..f4a027d4a21a43f0f92c405784b2237d6281bc58 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/blended/blendedEdgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/blended/blendedEdgeInterpolation.H @@ -56,12 +56,19 @@ class blendedEdgeInterpolation public linearEdgeInterpolation<Type>, public upwindEdgeInterpolation<Type> { - // Private data + // Private Data + //- Blending factor const scalar blendingFactor_; - // Private Member Functions +public: + + //- Runtime type information + TypeName("blended"); + + + // Generated Methods //- No copy construct blendedEdgeInterpolation(const blendedEdgeInterpolation&) = delete; @@ -70,12 +77,6 @@ class blendedEdgeInterpolation void operator=(const blendedEdgeInterpolation&) = delete; -public: - - //- Runtime type information - TypeName("blended"); - - // Constructors //- Construct from mesh, faceFlux and blendingFactor diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/leastSquares/leastSquaresEdgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/leastSquares/leastSquaresEdgeInterpolation.H index fd261bae448323c9c9b55b64f08ce35032782e73..6ccff4b7956aa52851317ecfcc6e2cef1a393a7c 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/leastSquares/leastSquaresEdgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/leastSquares/leastSquaresEdgeInterpolation.H @@ -67,18 +67,22 @@ class leastSquaresEdgeInterpolation : virtual public edgeInterpolationScheme<Type> { - // Private Member Functions - - //- No copy assignment - void operator=(const leastSquaresEdgeInterpolation&) = delete; - - public: //- Runtime type information TypeName("leastSquares"); + // Generated Methods + + //- No copy construct + leastSquaresEdgeInterpolation(const leastSquaresEdgeInterpolation&) + = delete; + + //- No copy assignment + void operator=(const leastSquaresEdgeInterpolation&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/linear/linearEdgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/linear/linearEdgeInterpolation.H index 9a1c99c3d2e2cfbc14b53f82c385560aef11c051..e4ce7041bd393da7a8d09d75af584287372729c9 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/linear/linearEdgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/linear/linearEdgeInterpolation.H @@ -54,17 +54,21 @@ class linearEdgeInterpolation : virtual public edgeInterpolationScheme<Type> { - // Private Member Functions - - //- No copy assignment - void operator=(const linearEdgeInterpolation&) = delete; - public: //- Runtime type information TypeName("linear"); + // Generated Methods + + //- No copy construct + linearEdgeInterpolation(const linearEdgeInterpolation&) = delete; + + //- No copy assignment + void operator=(const linearEdgeInterpolation&) = delete; + + // Constructors //- Construct from mesh diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/linearUpwind/linearUpwind.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/linearUpwind/linearUpwind.H index da9b6bdfc7e5cfb0e23724b62e9c726a9c895aa6..5ac45a791306a011dcedc55dc3db1d9a898bed5e 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/linearUpwind/linearUpwind.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/linearUpwind/linearUpwind.H @@ -58,9 +58,17 @@ namespace Foam class linearUpwindWeight { - public: + // Generated Methods + + //- No copy construct + linearUpwindWeight(const linearUpwindWeight&) = delete; + + //- No copy assignment + void operator=(const linearUpwindWeight&) = delete; + + linearUpwindWeight(Istream&) {} diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/skewCorrected/skewCorrectedEdgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/skewCorrected/skewCorrectedEdgeInterpolation.H index da63c64444d2a01ba880adde40e7eb974dfec6de..a725730e359a29767359c0a1bc238778e4d720f1 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/skewCorrected/skewCorrectedEdgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/skewCorrected/skewCorrectedEdgeInterpolation.H @@ -39,10 +39,8 @@ SourceFiles #define skewCorrectedEdgeInterpolation_H #include "edgeInterpolationScheme.H" -#include "linearEdgeInterpolation.H" #include "gaussFaGrad.H" #include "areaFields.H" -#include "zeroGradientFaPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -60,6 +58,7 @@ class skewCorrectedEdgeInterpolation { // Private Data + //- Edge-interpolation scheme tmp<edgeInterpolationScheme<Type>> tScheme_; @@ -69,6 +68,16 @@ public: TypeName("skewCorrected"); + // Generated Methods + + //- No copy construct + skewCorrectedEdgeInterpolation(const skewCorrectedEdgeInterpolation&) + = delete; + + //- No copy assignment + void operator=(const skewCorrectedEdgeInterpolation&) = delete; + + // Constructors //- Construct from Istream @@ -96,13 +105,6 @@ public: ) {} - //- No copy construct - skewCorrectedEdgeInterpolation(const skewCorrectedEdgeInterpolation&) = - delete; - - //- No copy assignment - void operator=(const skewCorrectedEdgeInterpolation&) = delete; - // Member Functions @@ -115,7 +117,7 @@ public: return tScheme_().weights(vf); } - //- Return true if this scheme uses an explicit correction + //- Return true if this scheme uses an explicit correction virtual bool corrected() const { return diff --git a/src/finiteArea/interpolation/edgeInterpolation/schemes/upwind/upwindEdgeInterpolation.H b/src/finiteArea/interpolation/edgeInterpolation/schemes/upwind/upwindEdgeInterpolation.H index 7384f19d5e91613b47787ec8e2de9665e0028837..fbafdcb4e813eb3124d05a79af5333a7f1f55719 100644 --- a/src/finiteArea/interpolation/edgeInterpolation/schemes/upwind/upwindEdgeInterpolation.H +++ b/src/finiteArea/interpolation/edgeInterpolation/schemes/upwind/upwindEdgeInterpolation.H @@ -55,23 +55,27 @@ class upwindEdgeInterpolation : virtual public edgeInterpolationScheme<Type> { - // Private data + // Private Data + //- Face flux const edgeScalarField& faceFlux_; - // Private Member Functions - - //- No copy assignment - void operator=(const upwindEdgeInterpolation&) = delete; - - public: //- Runtime type information TypeName("upwind"); + // Generated Methods + + //- No copy construct + upwindEdgeInterpolation(const upwindEdgeInterpolation&) = delete; + + //- No copy assignment + void operator=(const upwindEdgeInterpolation&) = delete; + + // Constructors //- Construct from faceFlux diff --git a/src/finiteArea/output/ensight/ensightFaMesh.C b/src/finiteArea/output/ensight/ensightFaMesh.C index 601aa319989dcca392ec82304a4715c83fd36657..60347e366dc4170fc26c28d82cadf7a41f91772a 100644 --- a/src/finiteArea/output/ensight/ensightFaMesh.C +++ b/src/finiteArea/output/ensight/ensightFaMesh.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -125,6 +125,11 @@ void Foam::ensightFaMesh::write bool parallel ) const { + if (UPstream::master()) + { + os.beginGeometry(); + } + // Area meshes (currently only one) // const label areaId = 0; areaPart_.write(os, mesh_.mesh(), parallel); diff --git a/src/finiteArea/output/ensight/ensightFaMesh.H b/src/finiteArea/output/ensight/ensightFaMesh.H index 394b4d5463eaff73c661d63fa0a4f17be24b5608..11d6db97acf34e196823d790a34340492ce0d802 100644 --- a/src/finiteArea/output/ensight/ensightFaMesh.H +++ b/src/finiteArea/output/ensight/ensightFaMesh.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -85,6 +85,11 @@ class ensightFaMesh //- Enforce consistent index/part numbering void renumber(); + +public: + + // Generated Methods + //- No copy construct ensightFaMesh(const ensightFaMesh&) = delete; @@ -92,8 +97,6 @@ class ensightFaMesh void operator=(const ensightFaMesh&) = delete; -public: - // Constructors //- Construct from mesh with all default options @@ -144,18 +147,21 @@ public: // Output - //- Write geometry to file. Normally in parallel + //- Write geometry to file (normally in parallel). + //- Adds beginGeometry() marker. void write ( ensightGeoFile& os, - bool parallel = Pstream::parRun() + bool parallel = UPstream::parRun() ) const; - //- Write geometry to file. Normally in parallel + //- Write geometry to file (normally in parallel). + //- Adds beginGeometry() marker. + FOAM_DEPRECATED_FOR(2024-05, "write(ensightGeoFile&, ...") inline void write ( autoPtr<ensightGeoFile>& os, - bool parallel = Pstream::parRun() + bool parallel = UPstream::parRun() ) const; }; diff --git a/src/finiteVolume/Make/files b/src/finiteVolume/Make/files index dca1ff2d9f89b4bc3e0b7e41cd8f2b83ffd6159c..36b69f77f089d7a0955c1a142007e6008eed04fa 100644 --- a/src/finiteVolume/Make/files +++ b/src/finiteVolume/Make/files @@ -295,6 +295,9 @@ $(patchExpr)/patchExprLemonParser.lyy-m4 $(patchExpr)/patchExprScanner.cc $(expr)/PatchFunction1/makePatchFunction1Expression.C +$(expr)/PatchFunction1/lookup/lookupBase.C +$(expr)/PatchFunction1/lookup/makeLookups.C +$(expr)/PatchFunction1/lookup/makeLookupFields.C volumeExpr = $(expr)/volume $(volumeExpr)/volumeExpr.C diff --git a/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.C b/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.C index c3b4084131433d013942a974a76d6b14b1901d9a..d50d8a65cfdd879f6a779f95d884b21877f4edae 100644 --- a/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.C +++ b/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,6 +28,7 @@ License #include "MRFZoneList.H" #include "volFields.H" +#include "surfaceFields.H" #include "fixedValueFvsPatchFields.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -188,18 +189,13 @@ Foam::tmp<Foam::volVectorField> Foam::MRFZoneList::DDt const volVectorField& U ) const { - auto tacceleration = - tmp<volVectorField>::New - ( - IOobject - ( - "MRFZoneList:acceleration", - U.mesh().time().timeName(), - U.mesh().thisDb() - ), - U.mesh(), - dimensionedVector(U.dimensions()/dimTime, Zero) - ); + auto tacceleration = volVectorField::New + ( + IOobject::scopedName("MRFZoneList", "acceleration"), + IOobject::NO_REGISTER, + U.mesh(), + dimensionedVector(U.dimensions()/dimTime, Zero) + ); auto& acceleration = tacceleration.ref(); for (const auto& mrf: *this) @@ -221,6 +217,26 @@ Foam::tmp<Foam::volVectorField> Foam::MRFZoneList::DDt } +Foam::tmp<Foam::surfaceScalarField> Foam::MRFZoneList::phi() const +{ + auto tphi = surfaceScalarField::New + ( + "phiMRF", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimVelocity*dimArea, Zero) + ); + auto& phi = tphi.ref(); + + for (const auto& mrf : *this) + { + mrf.makeAbsolute(phi); + } + + return tphi; +} + + void Foam::MRFZoneList::makeRelative(volVectorField& U) const { for (const auto& mrf: *this) @@ -263,10 +279,8 @@ Foam::tmp<Foam::surfaceScalarField> Foam::MRFZoneList::relative return rphi; } - else - { - return tmp<surfaceScalarField>(tphi, true); - } + + return tmp<surfaceScalarField>(tphi, true); } @@ -289,10 +303,8 @@ Foam::MRFZoneList::relative return rphi; } - else - { - return tmp<FieldField<fvsPatchField, scalar>>(tphi, true); - } + + return tmp<FieldField<fvsPatchField, scalar>>(tphi, true); } @@ -316,10 +328,8 @@ Foam::MRFZoneList::relative return rphi; } - else - { - return tmp<Field<scalar>>(tphi, true); - } + + return tmp<Field<scalar>>(tphi, true); } @@ -378,10 +388,8 @@ Foam::tmp<Foam::surfaceScalarField> Foam::MRFZoneList::absolute return rphi; } - else - { - return tmp<surfaceScalarField>(tphi, true); - } + + return tmp<surfaceScalarField>(tphi, true); } diff --git a/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.H b/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.H index 72ee1c986031649ba3c9e77b8c537fbf6733d7c3..c91c24f4e743123b24f273c8ff04f7f5b165ef1b 100644 --- a/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.H +++ b/src/finiteVolume/cfdTools/general/MRF/MRFZoneList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2018 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -127,6 +127,9 @@ public: const volVectorField& U ) const; + //- Return the MRF absolute flux + tmp<surfaceScalarField> phi() const; + //- Make the given absolute velocity relative within the MRF region void makeRelative(volVectorField& U) const; diff --git a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C index 683f2a9c66b73fc19a4e4dd98aa8957edec93006..58b002be2d3645813543aba5018dcca612ef0a85 100644 --- a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C +++ b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C @@ -55,8 +55,9 @@ Foam::SRF::SRFModel::SRFModel "SRFProperties", Urel.time().constant(), Urel.db(), - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), Urel_(Urel), @@ -118,19 +119,12 @@ const Foam::dimensionedVector& Foam::SRF::SRFModel::omega() const Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::SRF::SRFModel::Fcoriolis() const { - return tmp<volVectorField::Internal> + return volVectorField::Internal::New ( - new volVectorField::Internal + "Fcoriolis", + IOobject::NO_REGISTER, ( - IOobject - ( - "Fcoriolis", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - 2.0*omega_ ^ Urel_ + 2.0*omega_ ^ Urel_.internalField() ) ); } @@ -139,18 +133,11 @@ Foam::SRF::SRFModel::Fcoriolis() const Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::SRF::SRFModel::Fcentrifugal() const { - return tmp<volVectorField::Internal> + return volVectorField::Internal::New ( - new volVectorField::Internal + "Fcentrifugal", + IOobject::NO_REGISTER, ( - IOobject - ( - "Fcentrifugal", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), omega_ ^ (omega_ ^ (mesh_.C().internalField() - origin_)) ) ); @@ -169,14 +156,14 @@ Foam::vectorField Foam::SRF::SRFModel::velocity const vectorField& positions ) const { - tmp<vectorField> tfld = + return vectorField + ( omega_.value() ^ ( (positions - origin_.value()) - axis_*(axis_ & (positions - origin_.value())) - ); - - return tfld(); + ) + ); } @@ -186,18 +173,11 @@ Foam::tmp<Foam::volVectorField> Foam::SRF::SRFModel::U() const volVectorField::Boundary::localConsistency = 0; tmp<volVectorField> relPos(mesh_.C() - origin_); - tmp<volVectorField> tU + auto tU = volVectorField::New ( - new volVectorField + "Usrf", + IOobject::NO_REGISTER, ( - IOobject - ( - "Usrf", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), omega_ ^ (relPos() - axis_*(axis_ & relPos())) ) ); @@ -211,24 +191,13 @@ Foam::tmp<Foam::volVectorField> Foam::SRF::SRFModel::Uabs() const { tmp<volVectorField> Usrf = U(); - tmp<volVectorField> tUabs + auto tUabs = volVectorField::New ( - new volVectorField - ( - IOobject - ( - "Uabs", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - Usrf - ) + "Uabs", + IOobject::NO_REGISTER, + Usrf ); - - volVectorField& Uabs = tUabs.ref(); + auto& Uabs = tUabs.ref(); // Add SRF contribution to internal field Uabs.primitiveFieldRef() += Urel_.primitiveField(); diff --git a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFFreestreamVelocityFvPatchVectorField/SRFFreestreamVelocityFvPatchVectorField.H b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFFreestreamVelocityFvPatchVectorField/SRFFreestreamVelocityFvPatchVectorField.H index 228a801ff72f656a0e62c0d3118dd6edbd8f8553..ae77aee61a2edcaef68112b17c138d56cb571d8d 100644 --- a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFFreestreamVelocityFvPatchVectorField/SRFFreestreamVelocityFvPatchVectorField.H +++ b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFFreestreamVelocityFvPatchVectorField/SRFFreestreamVelocityFvPatchVectorField.H @@ -143,15 +143,6 @@ public: const SRFFreestreamVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new SRFFreestreamVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference SRFFreestreamVelocityFvPatchVectorField ( @@ -159,16 +150,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new SRFFreestreamVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFVelocityFvPatchVectorField/SRFVelocityFvPatchVectorField.H b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFVelocityFvPatchVectorField/SRFVelocityFvPatchVectorField.H index 4b998a3fcad362e0e4c0499177160409ec658df3..b5f8c50fa4d7c551f526e1d25d34c22b3e5647d0 100644 --- a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFVelocityFvPatchVectorField/SRFVelocityFvPatchVectorField.H +++ b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFVelocityFvPatchVectorField/SRFVelocityFvPatchVectorField.H @@ -154,15 +154,6 @@ public: const SRFVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new SRFVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference SRFVelocityFvPatchVectorField ( @@ -170,16 +161,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new SRFVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFWallVelocityFvPatchVectorField/SRFWallVelocityFvPatchVectorField.H b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFWallVelocityFvPatchVectorField/SRFWallVelocityFvPatchVectorField.H index f5732855a5ac0d75d0913cc550e8c2cf93b71a24..95d3ad431a34b3a92b8c667616b9eab49d11964c 100644 --- a/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFWallVelocityFvPatchVectorField/SRFWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/cfdTools/general/SRF/derivedFvPatchFields/SRFWallVelocityFvPatchVectorField/SRFWallVelocityFvPatchVectorField.H @@ -129,15 +129,6 @@ public: const SRFWallVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new SRFWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference SRFWallVelocityFvPatchVectorField ( @@ -145,16 +136,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new SRFWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/cfdTools/general/fvOptions/fvOptionListTemplates.C b/src/finiteVolume/cfdTools/general/fvOptions/fvOptionListTemplates.C index 8112e1c6899be879ecd575621fb95697f4408304..b6e8d9aa07dfdee145149392798dd97b97c00e60 100644 --- a/src/finiteVolume/cfdTools/general/fvOptions/fvOptionListTemplates.C +++ b/src/finiteVolume/cfdTools/general/fvOptions/fvOptionListTemplates.C @@ -42,8 +42,8 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::source { checkApplied(); - tmp<fvMatrix<Type>> tmtx(new fvMatrix<Type>(field, ds)); - fvMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<fvMatrix<Type>>::New(field, ds); + auto& mtx = tmtx.ref(); for (fv::option& source : *this) { @@ -51,7 +51,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::source if (fieldi != -1) { - addProfiling(fvopt, "fvOption()." + source.name()); + addProfiling(fvopt, "fvOption().", source.name()); source.setApplied(fieldi); @@ -129,8 +129,8 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::operator() rho.dimensions()*field.dimensions()/dimTime*dimVolume ); - tmp<fvMatrix<Type>> tmtx(new fvMatrix<Type>(field, ds)); - fvMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<fvMatrix<Type>>::New(field, ds); + auto& mtx = tmtx.ref(); for (fv::option& source : *this) { @@ -138,7 +138,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::operator() if (fieldi != -1) { - addProfiling(fvopt, "fvOption()." + source.name()); + addProfiling(fvopt, "fvOption().", source.name()); source.setApplied(fieldi); @@ -198,8 +198,8 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::operator() /dimTime*dimVolume ); - tmp<fvMatrix<Type>> tmtx(new fvMatrix<Type>(field, ds)); - fvMatrix<Type>& mtx = tmtx.ref(); + auto tmtx = tmp<fvMatrix<Type>>::New(field, ds); + auto& mtx = tmtx.ref(); for (fv::option& source : *this) { @@ -207,7 +207,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::fv::optionList::operator() if (fieldi != -1) { - addProfiling(fvopt, "fvOption()." + source.name()); + addProfiling(fvopt, "fvOption().", source.name()); source.setApplied(fieldi); @@ -321,7 +321,7 @@ void Foam::fv::optionList::constrain(fvMatrix<Type>& eqn) if (fieldi != -1) { - addProfiling(fvopt, "fvOption::constrain." + eqn.psi().name()); + addProfiling(fvopt, "fvOption::constrain.", eqn.psi().name()); source.setApplied(fieldi); @@ -364,7 +364,7 @@ void Foam::fv::optionList::correct if (fieldi != -1) { - addProfiling(fvopt, "fvOption::correct." + source.name()); + addProfiling(fvopt, "fvOption::correct.", source.name()); source.setApplied(fieldi); @@ -407,7 +407,7 @@ void Foam::fv::optionList::postProcessSens if (fieldi != -1) { - addProfiling(fvopt, "fvOption::postProcessSens." + source.name()); + addProfiling(fvopt, "fvOption::postProcessSens.", source.name()); const bool ok = source.isActive(); @@ -447,7 +447,10 @@ void Foam::fv::optionList::postProcessAuxSens if (fieldi != -1) { addProfiling - (fvopt, "fvOption::postProcessAuxSens." + source.name()); + ( + fvopt, + "fvOption::postProcessAuxSens.", source.name() + ); const bool ok = source.isActive(); diff --git a/src/finiteVolume/cfdTools/general/fvOptions/fvOptions.C b/src/finiteVolume/cfdTools/general/fvOptions/fvOptions.C index a341b20543c95ae9b7c47c0b73e17139463defcf..7b37201c35d362ca860d70c9821812277bac90d5 100644 --- a/src/finiteVolume/cfdTools/general/fvOptions/fvOptions.C +++ b/src/finiteVolume/cfdTools/general/fvOptions/fvOptions.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -102,7 +102,7 @@ Foam::fv::options::options Foam::fv::options& Foam::fv::options::New(const fvMesh& mesh) { - options* ptr = mesh.thisDb().getObjectPtr<options>(typeName); + auto* ptr = mesh.thisDb().getObjectPtr<options>(typeName); if (!ptr) { diff --git a/src/finiteVolume/cfdTools/general/levelSet/levelSet.C b/src/finiteVolume/cfdTools/general/levelSet/levelSet.C index 4e800b71a01acc79d9f6d126756cc74abe4b4408..2dcea81c816f65ab3bf03b9865c3828202f79da3 100644 --- a/src/finiteVolume/cfdTools/general/levelSet/levelSet.C +++ b/src/finiteVolume/cfdTools/general/levelSet/levelSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,21 +42,14 @@ Foam::levelSetFraction const bool above ) { - tmp<DimensionedField<scalar, volMesh>> tResult + auto tResult = DimensionedField<scalar, volMesh>::New ( - new DimensionedField<scalar, volMesh> - ( - IOobject - ( - "levelSetFraction", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar(dimless, Zero) - ) + "levelSetFraction", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar(dimless, Zero) ); - DimensionedField<scalar, volMesh>& result = tResult.ref(); + auto& result = tResult.ref(); forAll(result, cI) { @@ -113,8 +106,8 @@ Foam::tmp<Foam::scalarField> Foam::levelSetFraction const bool above ) { - tmp<scalarField> tResult(new scalarField(patch.size(), Zero)); - scalarField& result = tResult.ref(); + auto tResult = tmp<scalarField>::New(patch.size(), Zero); + auto& result = tResult.ref(); forAll(result, fI) { diff --git a/src/finiteVolume/cfdTools/general/levelSet/levelSetTemplates.C b/src/finiteVolume/cfdTools/general/levelSet/levelSetTemplates.C index f5e154f93b45769f712ecb8cc5e1318cf44a18ab..17b8e935ac7818d3f01d3b913199338017412e1e 100644 --- a/src/finiteVolume/cfdTools/general/levelSet/levelSetTemplates.C +++ b/src/finiteVolume/cfdTools/general/levelSet/levelSetTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,21 +45,14 @@ Foam::tmp<Foam::DimensionedField<Type, Foam::volMesh>> Foam::levelSetAverage const DimensionedField<Type, pointMesh>& negativeP ) { - tmp<DimensionedField<Type, volMesh>> tResult + auto tresult = DimensionedField<Type, volMesh>::New ( - new DimensionedField<Type, volMesh> - ( - IOobject - ( - positiveC.name() + ":levelSetAverage", - mesh.time().timeName(), - mesh - ), - mesh, - dimensioned<Type>(positiveC.dimensions(), Zero) - ) + IOobject::scopedName(positiveC.name(), "levelSetAverage"), + mesh, + Foam::zero{}, // value + positiveC.dimensions() ); - DimensionedField<Type, volMesh>& result = tResult.ref(); + auto& result = tresult.ref(); forAll(result, cI) { @@ -114,7 +107,7 @@ Foam::tmp<Foam::DimensionedField<Type, Foam::volMesh>> Foam::levelSetAverage result[cI] = r/v; } - return tResult; + return tresult; } @@ -132,8 +125,8 @@ Foam::tmp<Foam::Field<Type>> Foam::levelSetAverage { typedef typename outerProduct<Type, vector>::type sumType; - tmp<Field<Type>> tResult(new Field<Type>(patch.size(), Zero)); - Field<Type>& result = tResult.ref(); + auto tResult = tmp<Field<Type>>::New(patch.size(), Zero); + auto& result = tResult.ref(); forAll(result, fI) { diff --git a/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.C b/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.C index d0de1e97ec27e52c21030e8b2f68a76825f90220..e33603a1d369ee3df775e13c47e430002a28655c 100644 --- a/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.C +++ b/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.C @@ -42,7 +42,7 @@ namespace meshObjects Foam::meshObjects::gravity::gravity(const word& name, const Time& runTime) : - MeshObject<Time, TopologicalMeshObject, gravity>(name, runTime), + MeshObject_type(name, runTime), uniformDimensionedVectorField ( IOobject @@ -50,7 +50,7 @@ Foam::meshObjects::gravity::gravity(const word& name, const Time& runTime) name, runTime.constant(), runTime, - IOobject::MUST_READ_IF_MODIFIED, + IOobject::READ_MODIFIED, IOobject::NO_WRITE, IOobject::NO_REGISTER // Already registered by MeshObject ) diff --git a/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.H b/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.H index fc84e49a628500d425ed2f370cb3d51184b328a2..87784ab73b39bf999188580dbbb1b9d0da7736c8 100644 --- a/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.H +++ b/src/finiteVolume/cfdTools/general/meshObjects/gravity/gravityMeshObject.H @@ -60,10 +60,19 @@ class gravity < Time, TopologicalMeshObject, - gravity + meshObjects::gravity >, public uniformDimensionedVectorField { + // Private Typedefs + + typedef MeshObject + < + Time, + TopologicalMeshObject, + meshObjects::gravity + > MeshObject_type; + public: //- Run-time type information @@ -72,12 +81,10 @@ public: // Constructors - //- Construct with given name on Time from \c constant - //- (MUST_READ_IF_MODIFIED) + //- Construct with given name on Time from \c constant (READ_MODIFIED) gravity(const word& name, const Time& runTime); - //- Construct "g" field on Time from \c constant - //- (MUST_READ_IF_MODIFIED) + //- Construct "g" field on Time from \c constant (READ_MODIFIED) explicit gravity(const Time& runTime) : gravity("g", runTime) @@ -86,20 +93,13 @@ public: //- Return named gravity field cached or construct on Time static const gravity& New(const word& name, const Time& runTime) { - return MeshObject<Time, TopologicalMeshObject, gravity>::New - ( - name, - runTime - ); + return MeshObject_type::New(name, runTime); } //- Return gravity "g" field cached or construct on Time static const gravity& New(const Time& runTime) { - return MeshObject<Time, TopologicalMeshObject, gravity>::New - ( - runTime - ); + return MeshObject_type::New(runTime); } diff --git a/src/finiteVolume/cfdTools/general/porosityModel/DarcyForchheimer/DarcyForchheimer.C b/src/finiteVolume/cfdTools/general/porosityModel/DarcyForchheimer/DarcyForchheimer.C index 2ac51692d2b85ff4422ea1b72a74344dd5e35e2d..5fbe22d28469d72997c1acd28d9cd351ed9e3f8d 100644 --- a/src/finiteVolume/cfdTools/general/porosityModel/DarcyForchheimer/DarcyForchheimer.C +++ b/src/finiteVolume/cfdTools/general/porosityModel/DarcyForchheimer/DarcyForchheimer.C @@ -126,32 +126,18 @@ void Foam::porosityModels::DarcyForchheimer::calcTransformModelData() { volTensorField Dout ( - IOobject - ( - typeName + ":D", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh_.newIOobject(IOobject::scopedName(typeName, "D")), mesh_, dimensionedTensor(dXYZ_.dimensions(), Zero) ); + volTensorField Fout ( - IOobject - ( - typeName + ":F", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh_.newIOobject(IOobject::scopedName(typeName, "F")), mesh_, dimensionedTensor(fXYZ_.dimensions(), Zero) ); - forAll(cellZoneIDs_, zonei) { const labelList& cells = mesh_.cellZones()[cellZoneIDs_[zonei]]; diff --git a/src/finiteVolume/cfdTools/general/porosityModel/porosityModel/porosityModel.C b/src/finiteVolume/cfdTools/general/porosityModel/porosityModel/porosityModel.C index 283e46f9aebd5e0b404fe2f47324314b9edc3f6d..eb4ea67311ed52c0a1bcabfc440c449c78f663ff 100644 --- a/src/finiteVolume/cfdTools/general/porosityModel/porosityModel/porosityModel.C +++ b/src/finiteVolume/cfdTools/general/porosityModel/porosityModel/porosityModel.C @@ -173,7 +173,7 @@ Foam::tmp<Foam::vectorField> Foam::porosityModel::porosityModel::force { transformModelData(); - tmp<vectorField> tforce(new vectorField(U.size(), Zero)); + auto tforce = tmp<vectorField>::New(U.size(), Zero); if (!cellZoneIDs_.empty()) { diff --git a/src/finiteVolume/cfdTools/general/solutionControl/loopControl/fvSolution b/src/finiteVolume/cfdTools/general/solutionControl/loopControl/fvSolution index d35c734e6873f8c5ff06ff483a77606a45d91b39..fb7bffffe36560c8133f1ca9db7469592fedbb7e 100644 --- a/src/finiteVolume/cfdTools/general/solutionControl/loopControl/fvSolution +++ b/src/finiteVolume/cfdTools/general/solutionControl/loopControl/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.C b/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.C index a342dc4b57cf8c1dfbdede94ea59b3043b8487ad..554e74e8a3862617d6294a2d21b36194ffe5f55b 100644 --- a/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.C +++ b/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.C @@ -65,24 +65,24 @@ Foam::PatchFunction1Types::PatchExprField<Type>::PatchExprField template<class Type> Foam::PatchFunction1Types::PatchExprField<Type>::PatchExprField ( - const PatchExprField<Type>& rhs + const PatchExprField<Type>& rhs, + const polyPatch& pp ) : - PatchExprField<Type>(rhs, rhs.patch()) + PatchFunction1<Type>(rhs, pp), + dict_(rhs.dict_), // Deep copy + valueExpr_(rhs.valueExpr_), + driver_(fvPatch::lookupPatch(this->patch()), rhs.driver_, dict_) {} template<class Type> Foam::PatchFunction1Types::PatchExprField<Type>::PatchExprField ( - const PatchExprField<Type>& rhs, - const polyPatch& pp + const PatchExprField<Type>& rhs ) : - PatchFunction1<Type>(rhs, pp), - dict_(rhs.dict_), // Deep copy - valueExpr_(rhs.valueExpr_), - driver_(fvPatch::lookupPatch(this->patch()), rhs.driver_, dict_) + PatchExprField<Type>(rhs, rhs.patch()) {} diff --git a/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.H b/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.H index 4a66dbc66986cf3bd6255a5f98cbc6e0eb713e31..ac3620918c34b9f737f6c7639751d67b35b106fa 100644 --- a/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.H +++ b/src/finiteVolume/expressions/PatchFunction1/PatchFunction1Expression.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -122,9 +122,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit PatchExprField(const PatchExprField<Type>& rhs); - //- Copy construct setting patch explicit PatchExprField ( @@ -132,22 +129,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit PatchExprField(const PatchExprField<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>> - ( - new PatchExprField<Type>(*this) - ); + return PatchFunction1<Type>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new PatchExprField<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.C b/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.C new file mode 100644 index 0000000000000000000000000000000000000000..322a4faf5bf6bee152c252378d84393a88d41689 --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.C @@ -0,0 +1,89 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "uniformDimensionedFields.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +template<class Type> +Foam::Function1Types::Lookup<Type>::Lookup +( + const word& entryName, + const dictionary& dict, + const objectRegistry* obrPtr +) +: + lookupBase(dict), + Function1<Type>(entryName, dict, obrPtr) +{} + + +template<class Type> +Foam::Function1Types::Lookup<Type>::Lookup(const Lookup<Type>& rhs) +: + lookupBase(rhs), + Function1<Type>(rhs) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +Type Foam::Function1Types::Lookup<Type>::value(const scalar t) const +{ + const objectRegistry& db = function1Base::obr(); + const auto& obj = + db.lookupObject<UniformDimensionedField<Type>>(name_, true); + + return obj.value(); +} + + +template<class Type> +Type Foam::Function1Types::Lookup<Type>::integrate +( + const scalar t1, + const scalar t2 +) const +{ + return (t2-t1)*value(0.5*(t1+t2)); +} + + +template<class Type> +void Foam::Function1Types::Lookup<Type>::writeData(Ostream& os) const +{ + Function1<Type>::writeData(os); + os.endEntry(); + + os.beginBlock(word(this->name() + "Coeffs")); + writeEntries(os); + os.endBlock(); +} + + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.H b/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.H new file mode 100644 index 0000000000000000000000000000000000000000..4a8c64c85a71df55cc025c324de06a43ff78cae3 --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/Lookup.H @@ -0,0 +1,142 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::Function1Types::Lookup + +Description + Function1 to lookup UniformDimensionedField from an objectregistry. + + The dictionary specification would typically resemble this: + \verbatim + entry + { + type lookup; + name myScalar; + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Default + type | Function type: lookup | word | yes | + name | name of variable | word | yes | + \endtable + +SourceFiles + Lookup.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Function1Types_Lookup_H +#define Function1Types_Lookup_H + +#include "Function1.H" +#include "lookupBase.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace Function1Types +{ + +/*---------------------------------------------------------------------------*\ + Class Lookup Declaration +\*---------------------------------------------------------------------------*/ + +template<class Type> +class Lookup +: + public lookupBase, + public Function1<Type> +{ +public: + + // Runtime type information + TypeName("lookup"); + + + // Generated Methods + + //- No copy assignment + void operator=(const Lookup<Type>&) = delete; + + + // Constructors + + //- Construct from entry name, dictionary and optional registry + Lookup + ( + const word& entryName, + const dictionary& dict, + const objectRegistry* obrPtr = nullptr + ); + + //- Copy construct + explicit Lookup(const Lookup<Type>& rhs); + + //- Construct and return a clone + virtual tmp<Function1<Type>> clone() const + { + return tmp<Function1<Type>>(new Lookup<Type>(*this)); + } + + + //- Destructor + virtual ~Lookup() = default; + + + // Member Functions + + //- Return value for time t + virtual Type value(const scalar t) const; + + //- Integrate between two (scalar) values + virtual Type integrate(const scalar x1, const scalar x2) const; + + //- Write in dictionary format + virtual void writeData(Ostream& os) const; + + using lookupBase::writeEntries; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Function1Types +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "Lookup.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.C b/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.C new file mode 100644 index 0000000000000000000000000000000000000000..2a202b6bfdc5ffd52c4383c14796f77b49f52ffd --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.C @@ -0,0 +1,198 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "volFields.H" +#include "volMesh.H" +#include "surfaceFields.H" +#include "surfaceMesh.H" +#include "pointFields.H" +#include "pointMesh.H" +#include "UniformDimensionedField.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +template<class Type> +Foam::PatchFunction1Types::LookupField<Type>::LookupField +( + const polyPatch& pp, + const word& redirectType, + const word& entryName, + const dictionary& dict, + const bool faceValues +) +: + PatchFunction1<Type>(pp, entryName, dict, faceValues), + lookupBase(dict) +{} + + +template<class Type> +Foam::PatchFunction1Types::LookupField<Type>::LookupField +( + const LookupField<Type>& rhs, + const polyPatch& pp +) +: + PatchFunction1<Type>(rhs, pp), + lookupBase(rhs) +{} + + +template<class Type> +Foam::PatchFunction1Types::LookupField<Type>::LookupField +( + const LookupField<Type>& rhs +) +: + LookupField<Type>(rhs, rhs.patch()) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +Foam::tmp<Foam::Field<Type>> +Foam::PatchFunction1Types::LookupField<Type>::value(const scalar x) const +{ + typedef UniformDimensionedField<Type> UType; + + const objectRegistry& db = patchFunction1Base::obr(); + const label patchi = patchFunction1Base::patch().index(); + + if (this->faceValues()) + { + typedef GeometricField<Type, fvPatchField, volMesh> VType; + typedef GeometricField<Type, fvsPatchField, surfaceMesh> SType; + + // Try: + // - as volField in local scope + // - as surfaceField in local scope + // - as UniformDimensionedField recursively + + const regIOobject* ptr = db.cfindIOobject(name_, false); + + if (ptr) + { + const auto* vPtr = dynamic_cast<const VType*>(ptr); + if (vPtr) + { + return vPtr->boundaryField()[patchi]; + } + + const auto* sPtr = dynamic_cast<const SType*>(ptr); + if (sPtr) + { + return sPtr->boundaryField()[patchi]; + } + + const auto* uPtr = dynamic_cast<const UType*>(ptr); + if (uPtr) + { + return Field<Type>(this->size(), uPtr->value()); + } + } + + // Done db level. Try recursion + ptr = db.parent().cfindIOobject(name_, true); + + if (ptr) + { + const auto* uPtr = dynamic_cast<const UType*>(ptr); + if (uPtr) + { + return Field<Type>(this->size(), uPtr->value()); + } + } + + FatalErrorInFunction + << nl + << " failed lookup of " << name_ + << " (objectRegistry " + << db.name() + << ")\n available objects of type " << VType::typeName + << ':' << nl + << db.names<VType>() << nl + << " available objects of type " << SType::typeName + << ':' << nl + << db.names<SType>() << nl + << " available objects of type " << UType::typeName + << ':' << nl + << db.names<UType>() << nl + << exit(FatalError); + return Field<Type>::null(); + } + else + { + // Assume pointField + typedef GeometricField<Type, pointPatchField, pointMesh> PType; + + const regIOobject* ptr = db.cfindIOobject(name_, false); + + if (ptr) + { + const auto* pPtr = dynamic_cast<const PType*>(ptr); + if (pPtr) + { + return pPtr->boundaryField()[patchi].patchInternalField(); + } + } + + // Re-do as uniform field. Note: could repeat logic above + const auto& obj = db.lookupObject<UType>(name_, true); + + return Field<Type>(this->size(), obj.value()); + } +} + + +template<class Type> +Foam::tmp<Foam::Field<Type>> +Foam::PatchFunction1Types::LookupField<Type>::integrate +( + const scalar x1, + const scalar x2 +) const +{ + return (x2-x1)*value(0.5*(x1+x2)); +} + + +template<class Type> +void Foam::PatchFunction1Types::LookupField<Type>::writeData +( + Ostream& os +) const +{ + PatchFunction1<Type>::writeData(os); + os.writeEntry(this->name(), type()); + os.beginBlock(word(this->name() + "Coeffs")); + writeEntries(os); + os.endBlock(); +} + + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.H b/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.H new file mode 100644 index 0000000000000000000000000000000000000000..7fb5d25a6f02d8558805e0771a5f8db847355d54 --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/LookupField.H @@ -0,0 +1,171 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::PatchFunction1Types::LookupField + +Description + PatchFunction1 to lookup volField/surfaceField or pointField from an + objectregistry and return its value on the patch. + + The dictionary specification would typically resemble this: + \verbatim + entry + { + type lookup; + name myField; + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Default + type | Function type: lookup | word | yes | + name | name of volField/pointField | word | yes | + \endtable + +SourceFiles + LookupField.C + +\*---------------------------------------------------------------------------*/ + +#ifndef PatchFunction1Types_LookupField_H +#define PatchFunction1Types_LookupField_H + +#include "PatchFunction1.H" +#include "lookupBase.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace PatchFunction1Types +{ + +/*---------------------------------------------------------------------------*\ + Class LookupField Declaration +\*---------------------------------------------------------------------------*/ + +template<class Type> +class LookupField +: + public PatchFunction1<Type>, + protected lookupBase +{ + + +public: + + // Runtime type information + TypeName("lookup"); + + + // Generated Methods + + //- No copy assignment + void operator=(const LookupField<Type>&) = delete; + + + // Constructors + + //- Construct from entry name, dictionary and optional registry + LookupField + ( + const polyPatch& pp, + const word& redirectType, + const word& entryName, + const dictionary& dict, + const bool faceValues = true + ); + + //- Copy construct, setting patch + explicit LookupField + ( + const LookupField<Type>& rhs, + const polyPatch& pp + ); + + //- Copy construct + explicit LookupField(const LookupField<Type>& rhs); + + //- Construct and return a clone + virtual tmp<PatchFunction1<Type>> clone() const + { + return tmp<PatchFunction1<Type>>(new LookupField<Type>(*this)); + } + + //- Return a clone, setting the patch + virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const + { + return PatchFunction1<Type>::Clone(*this, pp); + } + + + //- Destructor + virtual ~LookupField() = default; + + + // Member Functions + + //- Is value uniform (i.e. independent of coordinate) + virtual inline bool uniform() const { return false; } + + + // Evaluation + + //- Return Lookup value + virtual tmp<Field<Type>> value(const scalar x) const; + + //- Integrate between two values + virtual tmp<Field<Type>> integrate + ( + const scalar x1, + const scalar x2 + ) const; + + + // I-O + + //- Write in dictionary format + virtual void writeData(Ostream& os) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace PatchFunction1Types +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "LookupField.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.C b/src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.C new file mode 100644 index 0000000000000000000000000000000000000000..4c3a10cee180284e8f9ccb73daf7fa00d1eda614 --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.C @@ -0,0 +1,52 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "lookupBase.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::lookupBase::lookupBase(const dictionary& dict) +: + name_(dict.get<word>("name")) +{} + + +Foam::lookupBase::lookupBase(const lookupBase& rhs) +: + name_(rhs.name_) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::lookupBase::writeEntries(Ostream& os) const +{ + os.writeEntry<word>("name", name_); +} + + +// ************************************************************************* // diff --git a/applications/test/router/Gather/GatherBase.H b/src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.H similarity index 62% rename from applications/test/router/Gather/GatherBase.H rename to src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.H index 2fb0a4cdba995b08fc643c9f233a7534ce1c437b..271466ff4bea98b940fa83970f8dc95b1b06bdf9 100644 --- a/applications/test/router/Gather/GatherBase.H +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/lookupBase.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -24,20 +24,20 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Class - Foam::GatherBase + Foam::lookupBase Description + Base level of Lookup and LookupField classes. SourceFiles - GatherBase.C + lookupBase.C \*---------------------------------------------------------------------------*/ -#ifndef GatherBase_H -#define GatherBase_H +#ifndef lookupBase_H +#define lookupBase_H -#include "List.H" -#include "labelList.H" +#include "dictionary.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -45,55 +45,50 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class GatherBase Declaration + Class lookupBase Declaration \*---------------------------------------------------------------------------*/ -class GatherBase +class lookupBase { +protected: + + // Protected Data + + //- Key of object + word name_; + public: - //- Flatten: appends all elements of list into one single list. - // Used to collapse 'Gathered' data. - template<class T> - static T flatten(const List<T>); - - //- Flatten and offset 'Gathered' indices (into value) so they - // remain valid with respect to values (after they have been flattened) - template<class DataType, class IndexType, class AddOp> - static IndexType offset - ( - const List<DataType>& values, - const List<IndexType>& indices, - AddOp aop - ); -}; + // Generated Methods + //- No copy assignment + void operator=(const lookupBase&) = delete; -template<class T> -class AddOp -{ -public: + // Constructors - T operator() - ( - const T& x, - const label offset - ) const - { - return x + offset; - } -}; + //- Construct from dictionary + explicit lookupBase(const dictionary& dict); + //- Copy construct + explicit lookupBase(const lookupBase& rhs); -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace Foam + //- Destructor + virtual ~lookupBase() = default; + + + // Member Functions + + //- Write coefficient entries in dictionary format + virtual void writeEntries(Ostream& os) const; +}; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "GatherBase.txx" +} // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookupFields.C b/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookupFields.C new file mode 100644 index 0000000000000000000000000000000000000000..5989e59a8c88fead18351e386b64bfda3e70c2de --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookupFields.C @@ -0,0 +1,40 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "LookupField.H" +#include "addToRunTimeSelectionTable.H" + +namespace Foam +{ + makePatchFunction1Type(LookupField, scalar); + makePatchFunction1Type(LookupField, vector); + makePatchFunction1Type(LookupField, sphericalTensor); + makePatchFunction1Type(LookupField, symmTensor); + makePatchFunction1Type(LookupField, tensor); +} + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookups.C b/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookups.C new file mode 100644 index 0000000000000000000000000000000000000000..e98d88563d8800e0242fbd6c5e085af2348a6e0e --- /dev/null +++ b/src/finiteVolume/expressions/PatchFunction1/lookup/makeLookups.C @@ -0,0 +1,46 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "Lookup.H" +#include "fieldTypes.H" +#include "PatchFunction1.H" +#include "addToRunTimeSelectionTable.H" +#include "UniformValueField.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + makeFunction1Type(Lookup, scalar); + makeFunction1Type(Lookup, vector); + makeFunction1Type(Lookup, sphericalTensor); + makeFunction1Type(Lookup, symmTensor); + makeFunction1Type(Lookup, tensor); +} + + +// ************************************************************************* // diff --git a/src/finiteVolume/expressions/fields/fvPatchFields/exprFixedValueFvPatchField.H b/src/finiteVolume/expressions/fields/fvPatchFields/exprFixedValueFvPatchField.H index 69395b5c62aaf15d0336de49002104331421e114..2b2a407ac7a927f444f92656e223a877439ecc16 100644 --- a/src/finiteVolume/expressions/fields/fvPatchFields/exprFixedValueFvPatchField.H +++ b/src/finiteVolume/expressions/fields/fvPatchFields/exprFixedValueFvPatchField.H @@ -131,16 +131,6 @@ public: const exprFixedValueFvPatchField<Type>& ); - - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new exprFixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference exprFixedValueFvPatchField ( @@ -148,16 +138,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new exprFixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/expressions/fields/fvPatchFields/exprMixedFvPatchField.H b/src/finiteVolume/expressions/fields/fvPatchFields/exprMixedFvPatchField.H index 32bfa068db9b6f8c0ebe48b6e9e29ec20f9998d5..938ce78d2be39a4680717da1b25d042e258c234c 100644 --- a/src/finiteVolume/expressions/fields/fvPatchFields/exprMixedFvPatchField.H +++ b/src/finiteVolume/expressions/fields/fvPatchFields/exprMixedFvPatchField.H @@ -135,15 +135,6 @@ public: const exprMixedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new exprMixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference exprMixedFvPatchField ( @@ -151,16 +142,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new exprMixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/expressions/fields/pointPatchFields/exprValuePointPatchField.H b/src/finiteVolume/expressions/fields/pointPatchFields/exprValuePointPatchField.H index fa328a54289769e366c19bc6fc0684cf3a912ea0..59aed7e1c41872ed3169d2173479e2158d34223a 100644 --- a/src/finiteVolume/expressions/fields/pointPatchFields/exprValuePointPatchField.H +++ b/src/finiteVolume/expressions/fields/pointPatchFields/exprValuePointPatchField.H @@ -126,17 +126,10 @@ public: const exprValuePointPatchField<Type>& ); - - //- Construct and return a clone + //- Return a clone virtual autoPtr<pointPatchField<Type>> clone() const { - return autoPtr<pointPatchField<Type>> - ( - new exprValuePointPatchField<Type> - ( - *this - ) - ); + return pointPatchField<Type>::Clone(*this); } //- Construct and return a clone setting internal field reference @@ -145,14 +138,7 @@ public: const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new exprValuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/expressions/patch/patchExprLemonParser.lyy-m4 b/src/finiteVolume/expressions/patch/patchExprLemonParser.lyy-m4 index 71b223566900de2c000b02000fcc333cf99480d3..3251f09d2252112aa9f1572e82059ee3b0b293a4 100644 --- a/src/finiteVolume/expressions/patch/patchExprLemonParser.lyy-m4 +++ b/src/finiteVolume/expressions/patch/patchExprLemonParser.lyy-m4 @@ -7,7 +7,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -129,7 +129,7 @@ identifier (lhs) ::= IDENTIFIER (tok) . %type svalue { Foam::scalar } svalue (lhs) ::= NUMBER (tok) . { lhs = (tok).scalarValue; } // scanToken -svalue (lhs) ::= ZERO . { lhs = Foam::Zero; } +svalue (lhs) ::= ZERO . { lhs = Foam::zero{}; } svalue (lhs) ::= PI LPAREN RPAREN . { lhs = Foam::constant::mathematical::pi; } svalue (lhs) ::= DEG_TO_RAD LPAREN RPAREN . { lhs = Foam::degToRad(); } svalue (lhs) ::= RAD_TO_DEG LPAREN RPAREN . { lhs = Foam::radToDeg(); } diff --git a/src/finiteVolume/expressions/volume/volumeExprLemonParser.lyy-m4 b/src/finiteVolume/expressions/volume/volumeExprLemonParser.lyy-m4 index c280458f594dd5e4a3fc79f12c354de32e11b93b..6b55f9787bfed02a6010ebb463b7e347cdafd73d 100644 --- a/src/finiteVolume/expressions/volume/volumeExprLemonParser.lyy-m4 +++ b/src/finiteVolume/expressions/volume/volumeExprLemonParser.lyy-m4 @@ -7,7 +7,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -170,7 +170,7 @@ identifier (lhs) ::= IDENTIFIER (tok) . %type svalue { Foam::scalar } svalue (lhs) ::= NUMBER (tok) . { lhs = (tok).scalarValue; } // scanToken -svalue (lhs) ::= ZERO . { lhs = Foam::Zero; } +svalue (lhs) ::= ZERO . { lhs = Foam::zero{}; } svalue (lhs) ::= PI LPAREN RPAREN . { lhs = Foam::constant::mathematical::pi; } svalue (lhs) ::= DEG_TO_RAD LPAREN RPAREN . { lhs = Foam::degToRad(); } svalue (lhs) ::= RAD_TO_DEG LPAREN RPAREN . { lhs = Foam::radToDeg(); } diff --git a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H index 8ffea2a4381656eff27f17fe9082c4a51782e1c9..30d2268cfd0bb167bc0b02ebdb0de172fd7b34ec 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H @@ -30,7 +30,8 @@ Group grpConstraintBoundaryConditions Description - A symmetry patch + A symmetry patch. + The "value" entry is NO_READ, NO_WRITE. SourceFiles basicSymmetryFvPatchField.C @@ -57,7 +58,6 @@ class basicSymmetryFvPatchField : public transformFvPatchField<Type> { - public: // Constructors @@ -69,7 +69,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. basicSymmetryFvPatchField ( const fvPatch&, @@ -77,8 +78,8 @@ public: const dictionary& ); - //- Construct by mapping given basicSymmetryFvPatchField onto a new - // patch + //- Construct by mapping given basicSymmetry patch field + //- onto a new patch basicSymmetryFvPatchField ( const basicSymmetryFvPatchField<Type>&, @@ -93,15 +94,6 @@ public: const basicSymmetryFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new basicSymmetryFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference basicSymmetryFvPatchField ( @@ -109,20 +101,23 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new basicSymmetryFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions //- Return gradient at boundary virtual tmp<Field<Type>> snGrad() const; @@ -130,11 +125,17 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal virtual tmp<Field<Type>> snGradTransformDiag() const; + + + // Member Operators + + //- Inherit assignment operators + using transformFvPatchField<Type>::operator=; }; diff --git a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C index 03e44871b4785e753c7a4ade53f09189a5ab38e5..8de6386d2ad4aa48c4cd9a2a5cb081a0b0ae27bb 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C @@ -121,10 +121,11 @@ Foam::fvPatchField<Type>::NewCalculatedType template<class Type> -template<class Type2> -Foam::tmp<Foam::fvPatchField<Type>> Foam::fvPatchField<Type>::NewCalculatedType +template<class AnyType> +Foam::tmp<Foam::fvPatchField<Type>> +Foam::fvPatchField<Type>::NewCalculatedType ( - const fvPatchField<Type2>& pf + const fvPatchField<AnyType>& pf ) { return NewCalculatedType(pf.patch()); diff --git a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H index 59089a4b4d18166f5c5e56efd9401a7e4cadd93f..1b44100ead18b63c36013b2dc826f601a8193c49 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H @@ -31,11 +31,16 @@ Group grpGenericBoundaryConditions Description - This boundary condition is not designed to be evaluated; it is assmued + This boundary condition is not designed to be evaluated; it is assumed that the value is assigned via field assignment, and not via a call to e.g. \c updateCoeffs or \c evaluate. Usage + \table + Property | Description | Required | Default + value | field value | yes | + \endtable + Example of the boundary condition specification: \verbatim <patchName> @@ -99,13 +104,13 @@ public: const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : calculatedFvPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -124,15 +129,6 @@ public: const calculatedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new calculatedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference calculatedFvPatchField ( @@ -140,16 +136,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new calculatedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -184,7 +183,7 @@ public: tmp<Field<Type>> gradientBoundaryCoeffs() const; - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H index 2729af6a17a1e0f51ae0339ca789f87ef26a471e..60671c45dc2982647fb13fb6b94762ec2257cabe 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H @@ -33,6 +33,8 @@ Group Description Abstract base class for coupled patches. + The "value" entry is usually MUST_READ and always WRITE. + SourceFiles coupledFvPatchField.C @@ -98,13 +100,13 @@ public: const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : coupledFvPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -123,9 +125,6 @@ public: const coupledFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference coupledFvPatchField ( @@ -133,6 +132,9 @@ public: const DimensionedField<Type, volMesh>& ); + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const = 0; + //- Construct and return a clone virtual tmp<fvPatchField<Type>> clone ( @@ -144,8 +146,7 @@ public: // Access - //- Return true if this patch field is derived from - // coupledFvPatchField<Type>. + //- True if this patch field is derived from coupledFvPatchField. virtual bool coupled() const { return true; @@ -187,7 +188,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) { initEvaluate(commsType); @@ -197,7 +198,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) { evaluate(commsType); @@ -268,7 +269,7 @@ public: ) const = 0; - //- Write + //- Write includes "value" entry virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H index d56bc7113a729e8711d21fc0886a83a8d60c487e..b4b5e3060d388282fa7d3d289a73891329fa79de 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H @@ -101,15 +101,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new directionMixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference directionMixedFvPatchField ( @@ -117,16 +108,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new directionMixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -197,7 +191,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal diff --git a/src/finiteVolume/fields/fvPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFvPatchField.H index dad65d55ffaecc304a31bbfe7157d3199185c805..84c9f30f8c0c1da5dbd2963ad1ebd0657536887a 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/extrapolatedCalculated/extrapolatedCalculatedFvPatchField.H @@ -107,15 +107,6 @@ public: const extrapolatedCalculatedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new extrapolatedCalculatedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference extrapolatedCalculatedFvPatchField ( @@ -123,16 +114,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new extrapolatedCalculatedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -141,7 +135,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); }; diff --git a/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H index 5d10c6a2a981eb96c1983d8ab7739f897fe4b7eb..07919120bafe684cb1d606d0bdd395a71a3a6154 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H @@ -143,15 +143,6 @@ public: const fixedGradientFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedGradientFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedGradientFvPatchField ( @@ -159,16 +150,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedGradientFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -216,7 +210,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the diff --git a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.C index dd3731399d8a41abfc35bcef343700b5a4326cb8..7ce790c829002a9f72229adaa94d083aee4aecc1 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.C @@ -92,21 +92,21 @@ Foam::fixedValueFvPatchField<Type>::fixedValueFvPatchField template<class Type> Foam::fixedValueFvPatchField<Type>::fixedValueFvPatchField ( - const fixedValueFvPatchField<Type>& ptf + const fixedValueFvPatchField<Type>& ptf, + const DimensionedField<Type, volMesh>& iF ) : - fvPatchField<Type>(ptf) + fvPatchField<Type>(ptf, iF) {} template<class Type> Foam::fixedValueFvPatchField<Type>::fixedValueFvPatchField ( - const fixedValueFvPatchField<Type>& ptf, - const DimensionedField<Type, volMesh>& iF + const fixedValueFvPatchField<Type>& ptf ) : - fvPatchField<Type>(ptf, iF) + fixedValueFvPatchField<Type>(ptf, ptf.internalField()) {} @@ -119,10 +119,7 @@ Foam::fixedValueFvPatchField<Type>::valueInternalCoeffs const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } diff --git a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H index d8c09c57173bd136e616eddbd33a450d51b4915d..7c2fa1bcc8e3c879c7ae60739017bd09fe699191 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H @@ -111,13 +111,13 @@ public: const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : fixedValueFvPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -137,15 +137,6 @@ public: const fixedValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedValueFvPatchField ( @@ -153,16 +144,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -174,6 +168,9 @@ public: //- False: this patch field is not altered by assignment. virtual bool assignable() const { return false; } + //- Write includes "value" entry + virtual void write(Ostream&) const; + // Evaluation functions @@ -200,11 +197,7 @@ public: virtual tmp<Field<Type>> gradientBoundaryCoeffs() const; - //- Write - virtual void write(Ostream&) const; - - - // Member operators + // Member Operators virtual void operator=(const UList<Type>&) {} diff --git a/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H index 7c43a6ca226d3dcfcf5ffd0db038fc061056ffcf..67d8b9ac7a145da5f967c2567ef79f6f246f9d14 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H @@ -168,15 +168,6 @@ public: const mixedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference mixedFvPatchField ( @@ -184,16 +175,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -274,7 +268,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the diff --git a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.C index d886c4d8d37a7907ea00cd6d0645c0595b0e8c02..c053c9b93447c9d503efc21df21510e7ca3cb483 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.C @@ -111,47 +111,14 @@ Foam::slicedFvPatchField<Type>::slicedFvPatchField } -template<class Type> -Foam::tmp<Foam::fvPatchField<Type>> -Foam::slicedFvPatchField<Type>::clone() const -{ - return tmp<fvPatchField<Type>> - ( - new slicedFvPatchField<Type>(*this) - ); -} - - template<class Type> Foam::slicedFvPatchField<Type>::slicedFvPatchField ( const slicedFvPatchField<Type>& ptf ) : - fvPatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>() - ) -{ - // Transfer the slice from the argument - UList<Type>::shallowCopy(ptf); -} - - -template<class Type> -Foam::tmp<Foam::fvPatchField<Type>> -Foam::slicedFvPatchField<Type>::clone -( - const DimensionedField<Type, volMesh>& iF -) const -{ - return tmp<fvPatchField<Type>> - ( - new slicedFvPatchField<Type>(*this, iF) - ); -} + slicedFvPatchField<Type>(ptf, ptf.internalField()) +{} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // @@ -160,7 +127,7 @@ template<class Type> Foam::slicedFvPatchField<Type>::~slicedFvPatchField() { // Set to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + UList<Type>::shallowCopy(nullptr); } @@ -170,8 +137,7 @@ template<class Type> Foam::tmp<Foam::Field<Type>> Foam::slicedFvPatchField<Type>::snGrad() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -180,8 +146,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFvPatchField<Type>::patchInternalField() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -200,8 +165,7 @@ Foam::slicedFvPatchField<Type>::patchNeighbourField ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -210,8 +174,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFvPatchField<Type>::patchNeighbourField() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -223,8 +186,7 @@ Foam::slicedFvPatchField<Type>::valueInternalCoeffs ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -236,8 +198,7 @@ Foam::slicedFvPatchField<Type>::valueBoundaryCoeffs ) const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -246,8 +207,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFvPatchField<Type>::gradientInternalCoeffs() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } @@ -256,8 +216,7 @@ Foam::tmp<Foam::Field<Type>> Foam::slicedFvPatchField<Type>::gradientBoundaryCoeffs() const { NotImplemented; - - return Field<Type>::null(); + return nullptr; } diff --git a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H index 6b7a51733e2d23aacf201bfa4c26be58c4be6939..ad71341426c361b726bac4373969f7b67652ac54 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H @@ -115,9 +115,6 @@ public: //- Construct as copy slicedFvPatchField(const slicedFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const; - //- Construct as copy setting internal field reference slicedFvPatchField ( @@ -125,15 +122,24 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF - ) const; + ) const + { + return fvPatchField<Type>::Clone(*this, iF); + } - //- Destructor - virtual ~slicedFvPatchField<Type>(); + //- Destructor, resets pointers to avoid deletion of underlying field + virtual ~slicedFvPatchField(); // Member Functions @@ -170,7 +176,7 @@ public: virtual void initEvaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -178,7 +184,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H index 89042ab75170d4803b7fad85ede4d1d1f83708f2..9211155c7107c70f4d5ae4bed7e6dfb47293ce11 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H @@ -30,15 +30,16 @@ Group grpGenericBoundaryConditions Description - Foam::transformFvPatchField + Intermediate layer (not used directly as a user boundary condition). + The "value" entry is NO_READ, NO_WRITE. SourceFiles transformFvPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef transformFvPatchField_H -#define transformFvPatchField_H +#ifndef Foam_transformFvPatchField_H +#define Foam_transformFvPatchField_H #include "fvPatchField.H" @@ -56,7 +57,6 @@ class transformFvPatchField : public fvPatchField<Type> { - public: //- Runtime type information @@ -72,7 +72,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. transformFvPatchField ( const fvPatch&, @@ -96,9 +97,6 @@ public: const transformFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference transformFvPatchField ( @@ -106,6 +104,9 @@ public: const DimensionedField<Type, volMesh>& ); + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const = 0; + //- Construct and return a clone setting internal field reference virtual tmp<fvPatchField<Type>> clone ( diff --git a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.C index 65f532974fcb76b2fd4c80d96c8d17d8632b590f..e7aad92d1acc1c6b928074f0cd9018071f62320a 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.C @@ -112,10 +112,7 @@ Foam::zeroGradientFvPatchField<Type>::valueInternalCoeffs const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), pTraits<Type>::one) - ); + return tmp<Field<Type>>::New(this->size(), pTraits<Type>::one); } @@ -126,10 +123,7 @@ Foam::zeroGradientFvPatchField<Type>::valueBoundaryCoeffs const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } @@ -137,10 +131,7 @@ template<class Type> Foam::tmp<Foam::Field<Type>> Foam::zeroGradientFvPatchField<Type>::gradientInternalCoeffs() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } @@ -148,10 +139,7 @@ template<class Type> Foam::tmp<Foam::Field<Type>> Foam::zeroGradientFvPatchField<Type>::gradientBoundaryCoeffs() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } diff --git a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H index 65d8582bc2218432151efacb22e04626eaf2bbfc..950b8b2ecf35db2790ec87a369c2bfc0bf373933 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H @@ -105,15 +105,6 @@ public: const zeroGradientFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new zeroGradientFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference zeroGradientFvPatchField ( @@ -121,16 +112,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new zeroGradientFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -148,7 +142,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return the matrix diagonal coefficients corresponding to the diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/calculatedProcessor/calculatedProcessorFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/calculatedProcessor/calculatedProcessorFvPatchField.H index ef6807119ec85512a1a0f6b193a6c2a549ae6e20..a01b26187b40324a71508d7795e5c35c153414a4 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/calculatedProcessor/calculatedProcessorFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/calculatedProcessor/calculatedProcessorFvPatchField.H @@ -132,15 +132,6 @@ public: const calculatedProcessorFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new calculatedProcessorFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference calculatedProcessorFvPatchField ( @@ -148,16 +139,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new calculatedProcessorFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.C index 0d6dac5c1564422a277a4c5aa3fd942835817a0d..380b6e4999a21a5d64ad12709ce11782ca7fe9cc 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.C @@ -51,7 +51,7 @@ Foam::cyclicFvPatchField<Type>::cyclicFvPatchField const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueRequired + const bool needValue ) : coupledFvPatchField<Type>(p, iF, dict, IOobjectOption::NO_READ), @@ -68,9 +68,9 @@ Foam::cyclicFvPatchField<Type>::cyclicFvPatchField << exit(FatalIOError); } - if (valueRequired) + if (needValue) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } @@ -134,8 +134,8 @@ Foam::cyclicFvPatchField<Type>::patchNeighbourField() const const labelUList& nbrFaceCells = cyclicPatch().cyclicPatch().neighbPatch().faceCells(); - tmp<Field<Type>> tpnf(new Field<Type>(this->size())); - Field<Type>& pnf = tpnf.ref(); + auto tpnf = tmp<Field<Type>>::New(this->size()); + auto& pnf = tpnf.ref(); if (doTransform()) @@ -324,4 +324,5 @@ void Foam::cyclicFvPatchField<Type>::manipulateMatrix } } + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H index b2b3595ae5bbe72a191231b604fbd38c7ea1b9ab..b8199cb28eccaf38815d89da8d71d9770a2b94fb 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H @@ -34,6 +34,8 @@ Description This boundary condition enforces a cyclic condition between a pair of boundaries. + The "value" entry is NO_READ. + Usage Example of the boundary condition specification: \verbatim @@ -75,7 +77,7 @@ class cyclicFvPatchField virtual public cyclicLduInterfaceField, public coupledFvPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the cyclic patch const cyclicFvPatch& cyclicPatch_; @@ -113,7 +115,7 @@ public: const fvPatch&, const DimensionedField<Type, volMesh>&, const dictionary&, - const bool valueRequired = true + const bool needValue = true //!< evaluate ); //- Construct by mapping given cyclicFvPatchField onto a new patch @@ -131,15 +133,6 @@ public: const cyclicFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new cyclicFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicFvPatchField ( @@ -147,20 +140,23 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new cyclicFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions // Access diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.C index 7c139b2f9f4defce0fb60b82567a19ec28091fa8..a95239a9b67b050106f5793fa130d15cfdbca65c 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.C @@ -109,7 +109,21 @@ Foam::cyclicACMIFvPatchField<Type>::cyclicACMIFvPatchField << exit(FatalIOError); } - this->evaluate(Pstream::commsTypes::blocking); + // Tricky: avoid call to evaluate without call to initEvaluate. + // For now just disable the localConsistency to make it use the + // old logic (ultimately calls the fully self contained + // patchNeighbourField) + + int& consistency = + GeometricField<Type, fvPatchField, volMesh>:: + Boundary::localConsistency; + + const int oldConsistency = consistency; + consistency = 0; + + this->evaluate(Pstream::commsTypes::buffered); + + consistency = oldConsistency; } } @@ -903,7 +917,8 @@ Foam::cyclicACMIFvPatchField<Type>::coeffs matrix.lduMeshAssembly().cellBoundMap()[mat][index].size() ); - Field<scalar> mapCoeffs(nSubFaces, Zero); + auto tmapCoeffs = tmp<Field<scalar>>::New(nSubFaces, Zero); + auto& mapCoeffs = tmapCoeffs.ref(); const scalarListList& srcWeight = cyclicACMIPatch_.cyclicACMIPatch().AMI().srcWeights(); @@ -928,7 +943,7 @@ Foam::cyclicACMIFvPatchField<Type>::coeffs } } - return tmp<Field<scalar>>(new Field<scalar>(mapCoeffs)); + return tmapCoeffs; } diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.H index 1b2a9083adc5569ad398d31f38326171a73da6fb..f79ce7aa645ad482bc4a6eb0cf11c9ae482a7677 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicACMI/cyclicACMIFvPatchField.H @@ -180,15 +180,6 @@ public: //- Construct as copy cyclicACMIFvPatchField(const cyclicACMIFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new cyclicACMIFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicACMIFvPatchField ( @@ -196,16 +187,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new cyclicACMIFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.C index 452d119105b647c58e038f70adc35829f344510b..8a8ad6e3cd8db421a1b78750a49fc7502ce9b39d 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.C @@ -92,7 +92,21 @@ Foam::cyclicAMIFvPatchField<Type>::cyclicAMIFvPatchField { if (this->coupled()) { + // Tricky: avoid call to evaluate without call to initEvaluate. + // For now just disable the localConsistency to make it use the + // old logic (ultimately calls the fully self contained + // patchNeighbourField) + + int& consistency = + GeometricField<Type, fvPatchField, volMesh>:: + Boundary::localConsistency; + + const int oldConsistency = consistency; + consistency = 0; + this->evaluate(UPstream::commsTypes::nonBlocking); + + consistency = oldConsistency; } else { diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H index 3b41ecc270746dfd6ad3cbc7b5240a4993c2e47e..09fc3971b11f61ddc2287d450b42fbd6a7d005dc 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H @@ -200,15 +200,6 @@ public: //- Construct as copy cyclicAMIFvPatchField(const cyclicAMIFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new cyclicAMIFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicAMIFvPatchField ( @@ -216,16 +207,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new cyclicAMIFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.C index 215d3655b8215d143dce65a5d323594f47ea03ee..051ef0b8f89d1442d2af208188ffd427456834e9 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.C @@ -61,7 +61,7 @@ Foam::cyclicSlipFvPatchField<Type>::cyclicSlipFvPatchField const dictionary& dict ) : - cyclicFvPatchField<Type>(p, iF, dict) + cyclicFvPatchField<Type>(p, iF, dict) // needValue (evaluate) = true {} diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H index b78bb1e67d6382826dde685689991995397675ac..3283b60e5e1e720844dcc47bcb77fe9c354058c9 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H @@ -33,6 +33,8 @@ Description This boundary condition is a light wrapper around the cyclicFvPatchField condition, providing no new functionality. + The "value" entry is NO_READ. + Usage Example of the boundary condition specification: \verbatim @@ -50,8 +52,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cyclicSlipFvPatchField_H -#define cyclicSlipFvPatchField_H +#ifndef Foam_cyclicSlipFvPatchField_H +#define Foam_cyclicSlipFvPatchField_H #include "cyclicFvPatchField.H" #include "cyclicSlipFvPatch.H" @@ -70,7 +72,6 @@ class cyclicSlipFvPatchField : public cyclicFvPatchField<Type> { - public: //- Runtime type information @@ -86,7 +87,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. cyclicSlipFvPatchField ( const fvPatch&, @@ -109,15 +111,6 @@ public: const cyclicSlipFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new cyclicSlipFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicSlipFvPatchField ( @@ -125,16 +118,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new cyclicSlipFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.C index 846c33a2165735f18fef78602acbd051f6ee55bc..3a7da4963b03a1074a2c4fe6b8c6f94db6be7e20 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,7 +38,7 @@ Foam::emptyFvPatchField<Type>::emptyFvPatchField const DimensionedField<Type, volMesh>& iF ) : - fvPatchField<Type>(p, iF, Field<Type>(0)) + fvPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field {} @@ -50,7 +51,7 @@ Foam::emptyFvPatchField<Type>::emptyFvPatchField const fvPatchFieldMapper& ) : - fvPatchField<Type>(p, iF, Field<Type>(0)) + fvPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { if (!isType<emptyFvPatch>(p)) { @@ -73,8 +74,11 @@ Foam::emptyFvPatchField<Type>::emptyFvPatchField const dictionary& dict ) : - fvPatchField<Type>(p, iF, Field<Type>(0)) + fvPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { + // Empty means empty, so no patchType override + // with fvPatchFieldBase::readDict(dict); + if (!isType<emptyFvPatch>(p)) { FatalIOErrorInFunction(dict) @@ -91,26 +95,21 @@ Foam::emptyFvPatchField<Type>::emptyFvPatchField template<class Type> Foam::emptyFvPatchField<Type>::emptyFvPatchField ( - const emptyFvPatchField<Type>& ptf + const emptyFvPatchField<Type>& ptf, + const DimensionedField<Type, volMesh>& iF ) : - fvPatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>(0) - ) + fvPatchField<Type>(ptf.patch(), iF, Field<Type>()) // zero-sized {} template<class Type> Foam::emptyFvPatchField<Type>::emptyFvPatchField ( - const emptyFvPatchField<Type>& ptf, - const DimensionedField<Type, volMesh>& iF + const emptyFvPatchField<Type>& ptf ) : - fvPatchField<Type>(ptf.patch(), iF, Field<Type>(0)) + emptyFvPatchField<Type>(ptf, ptf.internalField()) {} @@ -124,4 +123,12 @@ void Foam::emptyFvPatchField<Type>::updateCoeffs() } +template<class Type> +void Foam::emptyFvPatchField<Type>::write(Ostream& os) const +{ + fvPatchField<Type>::write(os); + // Never write "value" +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H index 6d97bc67ed89be43408909ad32292e737093328b..3cf910fc07297c6e7f1daeb749a9050ff91af10c 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H @@ -33,14 +33,16 @@ Description This boundary condition provides an 'empty' condition for reduced dimensions cases, i.e. 1- and 2-D geometries. Apply this condition to patches whose normal is aligned to geometric directions that do not - constitue solution directions. + constitute solution directions. + + The "value" entry is NO_READ, NO_WRITE. Usage Example of the boundary condition specification: \verbatim <patchName> { - type empty; + type empty; } \endverbatim @@ -84,7 +86,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. emptyFvPatchField ( const fvPatch&, @@ -107,15 +110,6 @@ public: const emptyFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new emptyFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference emptyFvPatchField ( @@ -123,16 +117,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new emptyFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -197,6 +194,12 @@ public: { return tmp<Field<Type>>::New(); } + + + // Member Functions + + //- Write without "value" entry! + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.C index 2b5e3a364bb4bec03af58f155c68a0b28dce5395..fb9a97b3487e81b28e244be93f06ab35d2ffafa7 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,14 +60,11 @@ Foam::jumpCyclicFvPatchField<Type>::jumpCyclicFvPatchField const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueRequired + const bool needValue ) : - cyclicFvPatchField<Type>(p, iF, dict, valueRequired) -{ - // Call this evaluation in derived classes - //this->evaluate(Pstream::commsTypes::blocking); -} + cyclicFvPatchField<Type>(p, iF, dict, needValue) +{} template<class Type> diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H index 28c803b6591ea4e617502e79ced080de7f224544..199215c62823a7def4e94a74b6a8a655219fdf22 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H @@ -34,6 +34,8 @@ Description This boundary condition provides a base class for coupled-cyclic conditions with a specified 'jump' (or offset) between the values + The "value" entry is NO_READ. + See also Foam::cyclicFvPatchField @@ -42,8 +44,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef jumpCyclicFvPatchField_H -#define jumpCyclicFvPatchField_H +#ifndef Foam_jumpCyclicFvPatchField_H +#define Foam_jumpCyclicFvPatchField_H #include "cyclicFvPatchField.H" @@ -61,7 +63,6 @@ class jumpCyclicFvPatchField : public cyclicFvPatchField<Type> { - public: //- Runtime type information @@ -77,13 +78,14 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. jumpCyclicFvPatchField ( const fvPatch&, const DimensionedField<Type, volMesh>&, const dictionary&, - const bool valueRequired = true + const bool needValue = true //!< evaluate ); //- Construct by mapping given jumpCyclicFvPatchField onto a new patch diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclicAMI/jumpCyclicAMIFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclicAMI/jumpCyclicAMIFvPatchField.C index dcd345fc87e2cd117e3ada0ebe227db1e34c3a0a..fad9173a2ed8cad528310973b8a7165a4e20689e 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclicAMI/jumpCyclicAMIFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclicAMI/jumpCyclicAMIFvPatchField.C @@ -66,7 +66,7 @@ Foam::jumpCyclicAMIFvPatchField<Type>::jumpCyclicAMIFvPatchField cyclicAMIFvPatchField<Type>(p, iF, dict) { // Call this evaluation in derived classes - //this->evaluate(Pstream::commsTypes::blocking); + //this->evaluate(Pstream::commsTypes::buffered); } diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.C index f4ac86faf38d72d2a7ee5c4d60a1ecc8a5e5acf3..04cb2a9220c74809a23a4fc000c31c365df385f8 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.C @@ -50,7 +50,7 @@ nonuniformTransformCyclicFvPatchField const dictionary& dict ) : - cyclicFvPatchField<Type>(p, iF, dict) + cyclicFvPatchField<Type>(p, iF, dict) // needValue (evaluate) = true {} diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H index 21c42d36f08b3649461ac78be522544c6a8f6e39..fa4b6f670176540cfef1a2c5c9ea5f1e51d239da 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H @@ -33,6 +33,8 @@ Description This boundary condition enforces a cyclic condition between a pair of boundaries, incorporating a non-uniform transformation. + The "value" entry is NO_READ. + SourceFiles nonuniformTransformCyclicFvPatchField.C nonuniformTransformCyclicFvPatchFields.H @@ -41,8 +43,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef nonuniformTransformCyclicFvPatchField_H -#define nonuniformTransformCyclicFvPatchField_H +#ifndef Foam_nonuniformTransformCyclicFvPatchField_H +#define Foam_nonuniformTransformCyclicFvPatchField_H #include "cyclicFvPatchField.H" #include "nonuniformTransformCyclicFvPatch.H" @@ -61,8 +63,6 @@ class nonuniformTransformCyclicFvPatchField : public cyclicFvPatchField<Type> { - // Private data - public: //- Runtime type information @@ -78,7 +78,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. nonuniformTransformCyclicFvPatchField ( const fvPatch&, @@ -102,15 +103,6 @@ public: const nonuniformTransformCyclicFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new nonuniformTransformCyclicFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference nonuniformTransformCyclicFvPatchField ( @@ -118,18 +110,20 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new nonuniformTransformCyclicFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } - }; diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.C index a4c1e57ea735ef100f17465d418d6e1550d47daf..793b638cc6ea54a9c59f0b8bea57a3b715455498 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.C @@ -28,7 +28,6 @@ License #include "processorFvPatchField.H" #include "processorFvPatch.H" -#include "demandDrivenData.H" #include "transformField.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H index 4bc96dadd44264c193d13e50ea18f8a1f3fb4cda..9cf3b074a535f608e4488442e5c4075aae3246cd 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H @@ -145,15 +145,6 @@ public: //- Construct as copy processorFvPatchField(const processorFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new processorFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorFvPatchField ( @@ -161,16 +152,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new processorFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -205,7 +199,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -214,7 +208,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C index c03c65b7449362610f3661ef36bf37888ebce9b6..5c3f68ec4b969bbd0c1ce44ef86b7d24ca702c51 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C @@ -135,11 +135,4 @@ Foam::processorCyclicFvPatchField<Type>::processorCyclicFvPatchField {} -// * * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * // - -template<class Type> -Foam::processorCyclicFvPatchField<Type>::~processorCyclicFvPatchField() -{} - - // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H index f8068ac40afc43ed6ac39b5d1c05afb2a26dba15..8287cd4359474875a0afa4013f01677d014bb2be 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H @@ -73,7 +73,7 @@ class processorCyclicFvPatchField : public processorFvPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the processor patch const processorCyclicFvPatch& procPatch_; @@ -122,15 +122,6 @@ public: //- Construct as copy processorCyclicFvPatchField(const processorCyclicFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new processorCyclicFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorCyclicFvPatchField ( @@ -138,24 +129,27 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new processorCyclicFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } //- Destructor - virtual ~processorCyclicFvPatchField(); + virtual ~processorCyclicFvPatchField() = default; - // Member functions + // Member Functions // Access diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H index 7416fa0685583ad736f55769827acc7f808370d1..6f2ec33e0daa96921bcb523f2e6ef1166930c8f7 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H @@ -69,7 +69,6 @@ class symmetryFvPatchField : public basicSymmetryFvPatchField<Type> { - public: //- Runtime type information @@ -108,15 +107,6 @@ public: const symmetryFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new symmetryFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryFvPatchField ( @@ -124,16 +114,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new symmetryFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.C index 53851b7e0073a49f26f38f61af8158f10034f946..b83f6c80a96ebc7d361df67f96fcd6e4743d7640 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.C @@ -157,27 +157,21 @@ Foam::symmetryPlaneFvPatchField<Type>::snGradTransformDiag() const { vector nHat(symmetryPlanePatch_.n()); - const vector diag - ( - mag(nHat.component(vector::X)), - mag(nHat.component(vector::Y)), - mag(nHat.component(vector::Z)) - ); + const vector diag(mag(nHat.x()), mag(nHat.y()), mag(nHat.z())); - return tmp<Field<Type>> + return tmp<Field<Type>>::New ( - new Field<Type> + this->size(), + transformMask<Type> ( - this->size(), - transformMask<Type> + //pow<vector, pTraits<Type>::rank>(diag) + pow ( - //pow<vector, pTraits<Type>::rank>(diag) - pow - ( - diag, - pTraits<typename powProduct<vector, pTraits<Type>::rank> - ::type>::zero - ) + diag, + pTraits + < + typename powProduct<vector, pTraits<Type>::rank>::type + >::zero ) ) ); diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.H index fea87f176dc523b2aaea14a032977af498a5b826..5ea077b08a0b93604507dd9ffb2117d97301ea4f 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/symmetryPlane/symmetryPlaneFvPatchField.H @@ -114,15 +114,6 @@ public: const symmetryPlaneFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new symmetryPlaneFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryPlaneFvPatchField ( @@ -130,16 +121,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new symmetryPlaneFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -151,7 +145,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.C index 8d63c8a5d8631b431fcc1429a84b8be8a772076e..8c2b3eb61c59f563cbbbcdafd9a233d391633cc0 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,7 +32,6 @@ License #include "symmTransform.H" #include "diagTensor.H" - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class Type> @@ -41,7 +41,7 @@ Foam::wedgeFvPatchField<Type>::wedgeFvPatchField const DimensionedField<Type, volMesh>& iF ) : - transformFvPatchField<Type>(p, iF) + parent_bctype(p, iF) {} @@ -54,7 +54,7 @@ Foam::wedgeFvPatchField<Type>::wedgeFvPatchField const fvPatchFieldMapper& mapper ) : - transformFvPatchField<Type>(ptf, p, iF, mapper) + parent_bctype(ptf, p, iF, mapper) { if (!isType<wedgeFvPatch>(this->patch())) { @@ -77,7 +77,7 @@ Foam::wedgeFvPatchField<Type>::wedgeFvPatchField const dictionary& dict ) : - transformFvPatchField<Type>(p, iF, dict) + parent_bctype(p, iF, dict) // "value" is NO_READ { if (!isType<wedgeFvPatch>(p)) { @@ -97,21 +97,21 @@ Foam::wedgeFvPatchField<Type>::wedgeFvPatchField template<class Type> Foam::wedgeFvPatchField<Type>::wedgeFvPatchField ( - const wedgeFvPatchField<Type>& ptf + const wedgeFvPatchField<Type>& ptf, + const DimensionedField<Type, volMesh>& iF ) : - transformFvPatchField<Type>(ptf) + parent_bctype(ptf, iF) {} template<class Type> Foam::wedgeFvPatchField<Type>::wedgeFvPatchField ( - const wedgeFvPatchField<Type>& ptf, - const DimensionedField<Type, volMesh>& iF + const wedgeFvPatchField<Type>& ptf ) : - transformFvPatchField<Type>(ptf, iF) + wedgeFvPatchField<Type>(ptf, ptf.internalField()) {} @@ -157,19 +157,18 @@ Foam::wedgeFvPatchField<Type>::snGradTransformDiag() const const vector diagV(diagT.xx(), diagT.yy(), diagT.zz()); - return tmp<Field<Type>> + return tmp<Field<Type>>::New ( - new Field<Type> + this->size(), + transformMask<Type> ( - this->size(), - transformMask<Type> + pow ( - pow - ( - diagV, - pTraits<typename powProduct<vector, pTraits<Type>::rank> - ::type>::zero - ) + diagV, + pTraits + < + typename powProduct<vector, pTraits<Type>::rank>::type + >::zero ) ) ); diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H index d51a2942b7e85c29ea5efde448718cdd2b8b8669..fe9e31f64481cb937141e9f7612ef167385c76d4 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H @@ -33,6 +33,8 @@ Description This boundary condition is similar to the cyclic condition, except that it is applied to 2-D geometries. + The "value" entry is NO_READ, NO_WRITE. + Usage Example of the boundary condition specification: \verbatim @@ -50,8 +52,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef wedgeFvPatchField_H -#define wedgeFvPatchField_H +#ifndef Foam_wedgeFvPatchField_H +#define Foam_wedgeFvPatchField_H #include "transformFvPatchField.H" #include "wedgeFvPatch.H" @@ -70,6 +72,9 @@ class wedgeFvPatchField : public transformFvPatchField<Type> { + //- The parent boundary condition type + typedef transformFvPatchField<Type> parent_bctype; + public: @@ -86,7 +91,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. wedgeFvPatchField ( const fvPatch&, @@ -109,15 +115,6 @@ public: const wedgeFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new wedgeFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference wedgeFvPatchField ( @@ -125,16 +122,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new wedgeFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -146,7 +146,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal diff --git a/src/finiteVolume/fields/fvPatchFields/derived/acousticWaveTransmissive/acousticWaveTransmissiveFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/acousticWaveTransmissive/acousticWaveTransmissiveFvPatchField.H index f0f31cfefb37317ba92139afe5abd946aeea88f9..2dc9d4592d4fe350c5475cf8215a3c13b5613ef0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/acousticWaveTransmissive/acousticWaveTransmissiveFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/acousticWaveTransmissive/acousticWaveTransmissiveFvPatchField.H @@ -131,15 +131,6 @@ public: const acousticWaveTransmissiveFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new acousticWaveTransmissiveFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference acousticWaveTransmissiveFvPatchField ( @@ -147,16 +138,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new acousticWaveTransmissiveFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H index 139054619082ba242f3da27d0bc20e5dfe3cbf2a..675c182dfa6ea145fbf9324d1be3c41c76ab0f95 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H @@ -187,15 +187,6 @@ public: const activeBaffleVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new activeBaffleVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference activeBaffleVelocityFvPatchVectorField ( @@ -203,16 +194,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new activeBaffleVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.C index 6f2a989768001586e00f47d262e1e6a39591a817..f2b719f54544a92667ea417f482b1f73378bcffb 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.C @@ -317,16 +317,10 @@ void Foam::activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs() Info<< "Open fraction = " << openFraction_ << endl; } - scalar areaFraction = 0.0; - - if (opening_) - { - areaFraction = openFraction_; - } - else - { - areaFraction = 1 - openFraction_; - } + const scalar areaFraction = + ( + opening_ ? openFraction_ : (1 - openFraction_) + ); if (patch().boundaryMesh().mesh().moving()) { @@ -342,6 +336,7 @@ void Foam::activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs() ).neighbFvPatch().Sf(); } + // Update this wall patch vectorField::subField Sfw = patch().patch().faceAreas(); vectorField newSfw((1 - areaFraction)*initWallSf_); @@ -350,16 +345,20 @@ void Foam::activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs() Sfw[facei] = newSfw[facei]; } const_cast<scalarField&>(patch().magSf()) = mag(patch().Sf()); + // Cache fraction + const_cast<polyPatch&>(patch().patch()).areaFraction(1-areaFraction); + // Update owner side of cyclic const_cast<vectorField&>(cyclicPatch.Sf()) = areaFraction*initCyclicSf_; - const_cast<scalarField&>(cyclicPatch.magSf()) = mag(cyclicPatch.Sf()); + const_cast<polyPatch&>(cyclicPatch.patch()).areaFraction(areaFraction); + // Update neighbour side of cyclic const_cast<vectorField&>(nbrPatch.Sf()) = areaFraction*nbrCyclicSf_; - const_cast<scalarField&>(nbrPatch.magSf()) = mag(nbrPatch.Sf()); + const_cast<polyPatch&>(nbrPatch.patch()).areaFraction(areaFraction); curTimeIndex_ = this->db().time().timeIndex(); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H index 56663319a4d917e2953fcc35072bd56a5a10f9f3..295aba083618e65473fb9b0728c1f67ebc311946 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H @@ -200,15 +200,6 @@ public: const activePressureForceBaffleVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new activePressureForceBaffleVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference activePressureForceBaffleVelocityFvPatchVectorField ( @@ -216,20 +207,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new activePressureForceBaffleVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H index 38be063ad4bbe146fb9e68403827fd7d99a19749..4eadf0edfc34e9c28fbf9f6524d1d7dc2c003750 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H @@ -154,15 +154,6 @@ public: const advectiveFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new advectiveFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference advectiveFvPatchField ( @@ -170,16 +161,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new advectiveFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.C index fad36642e65b46b2b8240c393106b03feff2d0d0..64926a0bae8ee6819ad520b1a4b3a7a6cbaa7fcc 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.C @@ -192,7 +192,7 @@ Foam::codedFixedValueFvPatchField<Type>::codedFixedValueFvPatchField this->extrapolateInternal(); // Evaluate to assign a value - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } @@ -237,9 +237,9 @@ Foam::codedFixedValueFvPatchField<Type>::redirectPatchField() const // Construct a patch // Make sure to construct the patchfield with up-to-date value - OStringStream os; + OCharStream os; this->writeValueEntry(os); - IStringStream is(os.str()); + ISpanStream is(os.view()); dictionary constructDict(is); constructDict.set("type", name_); diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H index 0c747c5cb839606e4f00e4c083dfb51701ad59a6..425208697fa206aaece798296aa2bfe5cee0ac01 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H @@ -211,15 +211,6 @@ public: const codedFixedValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new codedFixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference codedFixedValueFvPatchField ( @@ -227,16 +218,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new codedFixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -251,7 +245,7 @@ public: //- Evaluate the patch field, sets updated() to false virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.C index c63ebc4abc2a8ee8085a09d5e75b15acfb84748a..33e41351bacbe65d567c0b21e977bee1be10e327 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.C @@ -228,10 +228,9 @@ Foam::codedMixedFvPatchField<Type>::redirectPatchField() const // Make sure to construct the patchfield with up-to-date value // Write the data from the mixed b.c. - OStringStream os; + OCharStream os; this->parent_bctype::write(os); - IStringStream is(os.str()); - // Construct dictionary from it. + ISpanStream is(os.view()); dictionary constructDict(is); // Override type diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H index 821b473d23e4fcfea673117bcf72f587b5da9d66..b02036e92d5fcad9ea9e9fe6fe055d453110e935 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H @@ -215,15 +215,6 @@ public: const codedMixedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new codedMixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference codedMixedFvPatchField ( @@ -231,16 +222,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new codedMixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -257,7 +251,7 @@ public: // to false. virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H index 401d3e1477da0182d6a23ab1d5327857251d1ffe..495472af4eea4e61ac01c4d48ddb898088219abc 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H @@ -147,15 +147,6 @@ public: const cylindricalInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new cylindricalInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference cylindricalInletVelocityFvPatchVectorField ( @@ -163,16 +154,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new cylindricalInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/electrostaticDeposition/electrostaticDepositionFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/electrostaticDeposition/electrostaticDepositionFvPatchScalarField.H index efda99389e287db995b4078a158f7705e67c137a..a0d8c5bf9ca3b6c326b32e6b1e2973ce97eeb3c6 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/electrostaticDeposition/electrostaticDepositionFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/electrostaticDeposition/electrostaticDepositionFvPatchScalarField.H @@ -302,15 +302,6 @@ public: const electrostaticDepositionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new electrostaticDepositionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference electrostaticDepositionFvPatchScalarField ( @@ -318,16 +309,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new electrostaticDepositionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C index 39b7394febdbcfdb31e4cd82629ff77b2ea5e8d2..107fcf30a5c1c0da2bf9c34b0a8d35ac9e01c687 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C @@ -67,7 +67,7 @@ Foam::fanFvPatchField<Type>::fanFvPatchField const dictionary& dict ) : - uniformJumpFvPatchField<Type>(p, iF, dict, false), // Pass no valueRequired + uniformJumpFvPatchField<Type>(p, iF, dict, false), // needValue = false phiName_(dict.getOrDefault<word>("phi", "phi")), rhoName_(dict.getOrDefault<word>("rho", "rho")), uniformJump_(dict.getOrDefault("uniformJump", false)), @@ -89,7 +89,7 @@ Foam::fanFvPatchField<Type>::fanFvPatchField if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H index 96a57d99f081758c6e87cc4670034e9cffa48473..4a0fb21631e316e001b403ea4de5063aa394c20a 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H @@ -196,15 +196,6 @@ public: const fanFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fanFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fanFvPatchField ( @@ -212,16 +203,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fanFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fanPressure/fanPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fanPressure/fanPressureFvPatchScalarField.H index a4707921bd13ae97d6c0fdcde6613109803ed71f..6c7fd4ebe783e7a389cc5a4c5d2c8b4b93bd174c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fanPressure/fanPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fanPressure/fanPressureFvPatchScalarField.H @@ -200,15 +200,6 @@ public: const fanPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fanPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fanPressureFvPatchScalarField ( @@ -216,20 +207,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fanPressureFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxExtrapolatedPressure/fixedFluxExtrapolatedPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxExtrapolatedPressure/fixedFluxExtrapolatedPressureFvPatchScalarField.H index 719b4ab426fd6b81e20801a1dfae47cb3df9142f..121f4e763da91a5f85ccdd082c33fd8fb160c845 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxExtrapolatedPressure/fixedFluxExtrapolatedPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxExtrapolatedPressure/fixedFluxExtrapolatedPressureFvPatchScalarField.H @@ -108,15 +108,6 @@ public: const fixedFluxExtrapolatedPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedFluxExtrapolatedPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedFluxExtrapolatedPressureFvPatchScalarField ( @@ -124,16 +115,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedFluxExtrapolatedPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H index cddfa8aa34c2d075ffb1cd5cce1f98665339ea6b..1fae7a7f37710dd760555d6cb6519a7e214fec62 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H @@ -117,15 +117,6 @@ public: const fixedFluxPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedFluxPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedFluxPressureFvPatchScalarField ( @@ -133,16 +124,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedFluxPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H index d36397c07362c60578710921b23b460f9e4bea3a..c5a7a2e1d219ff8b694083be25bada8119550fd2 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H @@ -116,15 +116,6 @@ public: const fixedInternalValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedInternalValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedInternalValueFvPatchField ( @@ -132,16 +123,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedInternalValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.C index e55831b999c200ef4c67c69b7defc7d423f2e264..4eafe72c8c2761770cfe7a2a2a717f7ccf5da8b7 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.C @@ -70,10 +70,10 @@ Foam::fixedJumpFvPatchField<Type>::fixedJumpFvPatchField const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueRequired + const bool needValue ) : - jumpCyclicFvPatchField<Type>(p, iF, dict, false), // Pass no valueRequired + jumpCyclicFvPatchField<Type>(p, iF, dict, false), // needValue = false jump_(p.size(), Zero), jump0_(p.size(), Zero), minJump_(dict.getOrDefault<Type>("minJump", pTraits<Type>::min)), @@ -82,7 +82,7 @@ Foam::fixedJumpFvPatchField<Type>::fixedJumpFvPatchField { if (this->cyclicPatch().owner()) { - if (valueRequired) + if (needValue) { jump_.assign("jump", dict, p.size(), IOobjectOption::MUST_READ); } @@ -90,11 +90,11 @@ Foam::fixedJumpFvPatchField<Type>::fixedJumpFvPatchField jump0_.assign("jump0", dict, p.size(), IOobjectOption::LAZY_READ); } - if (valueRequired) + if (needValue) { if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H index ee758e59283a7a0536bac1221d68270b2bab5b7b..441b420dea7d1733a4752a4bea2d043cce298687 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H @@ -128,7 +128,7 @@ public: const fvPatch&, const DimensionedField<Type, volMesh>&, const dictionary&, - const bool valueRequired = true + const bool needValue = true ); //- Construct by mapping given fixedJumpFvPatchField onto a @@ -147,15 +147,6 @@ public: const fixedJumpFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedJumpFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedJumpFvPatchField ( @@ -163,16 +154,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedJumpFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.C index b3efdea5961909f3ef5c00c914d9250719dbb4d8..4c8c5aa199315c8fa7d373674dc4c42cc0533d8d 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.C @@ -73,7 +73,7 @@ Foam::fixedJumpAMIFvPatchField<Type>::fixedJumpAMIFvPatchField if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.H index d25ef22b01c275077c2429e2b7d1720b04c56b10..a6656c937b67cc32cedf32774ea98591999ee9f1 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedJumpAMI/fixedJumpAMIFvPatchField.H @@ -133,15 +133,6 @@ public: const fixedJumpAMIFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedJumpAMIFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedJumpAMIFvPatchField ( @@ -149,16 +140,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedJumpAMIFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H index 855401aa13d20a594f64213fb60a009130243919..5240397df9308c1f26e58844e8ea7db4a6fb965e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H @@ -123,15 +123,6 @@ public: const fixedMeanFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedMeanFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedMeanFvPatchField ( @@ -139,16 +130,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedMeanFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedMeanOutletInlet/fixedMeanOutletInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedMeanOutletInlet/fixedMeanOutletInletFvPatchField.H index 1be8a7d1cc0cab0551e90931a10182ef734dd1dc..ae5b90eaac64e7bb2d249abd60f649ce4960655e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedMeanOutletInlet/fixedMeanOutletInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedMeanOutletInlet/fixedMeanOutletInletFvPatchField.H @@ -131,15 +131,6 @@ public: const fixedMeanOutletInletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedMeanOutletInletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedMeanOutletInletFvPatchField ( @@ -147,16 +138,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedMeanOutletInletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalInletOutletVelocity/fixedNormalInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalInletOutletVelocity/fixedNormalInletOutletVelocityFvPatchVectorField.H index 0ebb2f934e80df3382272bcce9a3b7cbcd5d4b60..ed03178de34bf114cc40ae81aae0d1bb32f63cd8 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalInletOutletVelocity/fixedNormalInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalInletOutletVelocity/fixedNormalInletOutletVelocityFvPatchVectorField.H @@ -159,15 +159,6 @@ public: const fixedNormalInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new fixedNormalInletOutletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference fixedNormalInletOutletVelocityFvPatchVectorField ( @@ -175,16 +166,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new fixedNormalInletOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.C index 557ffce4949d020d798a0c3cb4c2bbdeecf5a040..32c993eaa1f81ba196d21c2a797ed4512d50a0eb 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.C @@ -39,7 +39,7 @@ Foam::fixedNormalSlipFvPatchField<Type>::fixedNormalSlipFvPatchField ) : parent_bctype(p, iF), - fixedValue_(p.size(), Zero), + fixedValue_(p.size(), Foam::zero{}), writeValue_(false) {} @@ -72,6 +72,7 @@ Foam::fixedNormalSlipFvPatchField<Type>::fixedNormalSlipFvPatchField writeValue_(dict.getOrDefault("writeValue", false)) { fvPatchFieldBase::readDict(dict); + evaluate(); } @@ -181,11 +182,13 @@ template<class Type> void Foam::fixedNormalSlipFvPatchField<Type>::write(Ostream& os) const { this->parent_bctype::write(os); - fixedValue_.writeEntry("fixedValue", os); - if (writeValue_) { os.writeEntry("writeValue", "true"); + } + fixedValue_.writeEntry("fixedValue", os); + if (writeValue_) + { fvPatchField<Type>::writeValueEntry(os); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H index d811f125f508bb1fcbdf18a3a0d877a266d3c5d5..026a245ccbcab7e3982151c67eed95be1478edcd 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H @@ -36,6 +36,8 @@ Description The tangential component is treated as slip, i.e. copied from the internal field. + The "value" entry is NO_READ, optional write. + Usage Example of the boundary condition specification: \verbatim @@ -76,8 +78,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef fixedNormalSlipFvPatchField_H -#define fixedNormalSlipFvPatchField_H +#ifndef Foam_fixedNormalSlipFvPatchField_H +#define Foam_fixedNormalSlipFvPatchField_H #include "transformFvPatchField.H" @@ -123,7 +125,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. fixedNormalSlipFvPatchField ( const fvPatch&, @@ -147,15 +150,6 @@ public: const fixedNormalSlipFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedNormalSlipFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedNormalSlipFvPatchField ( @@ -163,16 +157,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedNormalSlipFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -222,7 +219,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H index 7ccabdb43c6a8e703e9b259329f46cba2fe45467..e9c7cbcb46ac0cdf5ea7411d5eb30d47fc151d6a 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H @@ -138,15 +138,6 @@ public: const fixedPressureCompressibleDensityFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedPressureCompressibleDensityFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedPressureCompressibleDensityFvPatchScalarField ( @@ -154,20 +145,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedPressureCompressibleDensityFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedProfile/fixedProfileFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedProfile/fixedProfileFvPatchField.H index 49a7e611a43c9a848fedfb97d2fcf6f0e41927cb..2093f34e67002f1db48c02f10e9e47f8520cf1a1 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedProfile/fixedProfileFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedProfile/fixedProfileFvPatchField.H @@ -172,15 +172,6 @@ public: const fixedProfileFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new fixedProfileFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference fixedProfileFvPatchField ( @@ -188,16 +179,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new fixedProfileFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C index 156ce0376bad456225a22c07f0ed48d1b5f4e48d..bc4504b4a5b1d6d3ebc77d1c1089a05a12e0e8bd 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C @@ -93,7 +93,7 @@ flowRateInletVelocityFvPatchVectorField // Value field required if mass based if (!this->readValueEntry(dict)) { - evaluate(Pstream::commsTypes::blocking); + evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H index b85605dd3f72d677b96ee205363bd4add3ca80ce..e34a34d94d51755a7fb4b0dcd0e3add2b6c0e378 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H @@ -182,15 +182,6 @@ public: const flowRateInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new flowRateInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference flowRateInletVelocityFvPatchVectorField ( @@ -198,16 +189,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new flowRateInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.C index 045f59e00f6ab119e6f4db4fbee29f26c09b2cc7..7ff807b21a224c5104309a329479015754e4dc84 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.C @@ -87,7 +87,7 @@ flowRateOutletVelocityFvPatchVectorField // Value field required if mass based if (!this->readValueEntry(dict)) { - evaluate(Pstream::commsTypes::blocking); + evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.H index 1e88968065cc8bb681f69914e458771fcba3ed71..0a459a4ea6ea47da0ef85f0985638ca2c7f5fa20 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateOutletVelocity/flowRateOutletVelocityFvPatchVectorField.H @@ -173,15 +173,6 @@ public: const flowRateOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new flowRateOutletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference flowRateOutletVelocityFvPatchVectorField ( @@ -189,16 +180,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new flowRateOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H index 00eb4a13211b500634083eb535bb9516d0e6de1f..6a9f71ede2bd230c77f4a61c0bc178cf4e1a80a3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H @@ -140,15 +140,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new fluxCorrectedVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference fluxCorrectedVelocityFvPatchVectorField ( @@ -156,16 +147,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new fluxCorrectedVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } @@ -174,7 +168,7 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H index 76f5707391dbee9b8c89d3d37e1b3d87a107e86b..5f108129101a8b1bc35529f65e0635dc62dd81c0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H @@ -146,15 +146,6 @@ public: const freestreamFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new freestreamFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference freestreamFvPatchField ( @@ -162,16 +153,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new freestreamFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H index 1922113c0b7c11aa0d37cafb4975e22e883b93a1..832380193d8795175fb01b7665850b5736c513d3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H @@ -128,15 +128,6 @@ public: const freestreamPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new freestreamPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference freestreamPressureFvPatchScalarField ( @@ -144,16 +135,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new freestreamPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestreamVelocity/freestreamVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/freestreamVelocity/freestreamVelocityFvPatchVectorField.H index aadeeb81c206de55e00032b4773fe761de51f68d..259a2230279562c0ae8a860f1efe0d1a8c226b7e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/freestreamVelocity/freestreamVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/freestreamVelocity/freestreamVelocityFvPatchVectorField.H @@ -122,15 +122,6 @@ public: const freestreamVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new freestreamVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference freestreamVelocityFvPatchVectorField ( @@ -138,16 +129,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new freestreamVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H index fbf117c729f3fadc78c0cc5e6a9801ec679abc59..f33a7ffbe4d0fe1ea6a1ca2da1e561c29412a9ed 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H @@ -135,15 +135,6 @@ public: const inletOutletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new inletOutletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference inletOutletFvPatchField ( @@ -151,16 +142,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new inletOutletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H index edeaff00c0924a2f14d45239bbb815263ffa1c09..62e239cb733bf6022850ff6785adb079b744bda0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H @@ -140,15 +140,6 @@ public: const inletOutletTotalTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new inletOutletTotalTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference inletOutletTotalTemperatureFvPatchScalarField ( @@ -156,16 +147,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new inletOutletTotalTemperatureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/interfaceCompression/interfaceCompressionFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/interfaceCompression/interfaceCompressionFvPatchScalarField.H index 485f5cdf9006cf5b385cbf9d32c6fbbc3059ef35..e196f9618ea7b00026c10746b34115fbb5bc9ac5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/interfaceCompression/interfaceCompressionFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/interfaceCompression/interfaceCompressionFvPatchScalarField.H @@ -104,15 +104,6 @@ public: const interfaceCompressionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new interfaceCompressionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference interfaceCompressionFvPatchScalarField ( @@ -120,16 +111,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new interfaceCompressionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H index 6deeb490ce45b3d926361491f4ee3736ddd13c1c..e1ff6e4beb98d0cf08cce772c5546fb6cd4fc449 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H @@ -112,15 +112,6 @@ public: const interstitialInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new interstitialInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference interstitialInletVelocityFvPatchVectorField ( @@ -128,16 +119,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new interstitialInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.C b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.C index 45601fe236525f609a4e196670dc2e54a5c8df4f..7cc3c3048de4f6fd7f6fbd3d7ae69530475bdec1 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.C @@ -73,16 +73,6 @@ Foam::PatchFunction1Types::Sampled<Type>::Sampled } -template<class Type> -Foam::PatchFunction1Types::Sampled<Type>::Sampled -( - const Sampled<Type>& rhs -) -: - Sampled<Type>(rhs, rhs.patch()) -{} - - template<class Type> Foam::PatchFunction1Types::Sampled<Type>::Sampled ( @@ -99,6 +89,16 @@ Foam::PatchFunction1Types::Sampled<Type>::Sampled {} +template<class Type> +Foam::PatchFunction1Types::Sampled<Type>::Sampled +( + const Sampled<Type>& rhs +) +: + Sampled<Type>(rhs, rhs.patch()) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.H index a92ae7fd7a5c825babf3d0be92a2b925c4f5d5ee..7a64493489a9b91e4c916f88f340b17efc8bbca0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/Sampled/Sampled.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -149,9 +149,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit Sampled(const Sampled<Type>& rhs); - //- Copy construct setting patch explicit Sampled ( @@ -159,22 +156,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit Sampled(const Sampled<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>> - ( - new Sampled<Type>(*this) - ); + return PatchFunction1<Type>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new Sampled<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H index 72cae77cd4a035888151ff1db10e04d8995d2268..ac9e12926097bfc1c5c381046fcf227d4860a48b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H @@ -158,18 +158,6 @@ public: const mappedFieldFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedFieldFvPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference mappedFieldFvPatchField ( @@ -177,20 +165,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedFieldFvPatchField<Type> - ( - *this, - iF - ) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedMixedFieldFvPatchField/mappedMixedFieldFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedMixedFieldFvPatchField/mappedMixedFieldFvPatchField.H index 3b6ec90354608b09fd40a5ece186de5a2d6c6623..401f48c9428871e611b27bdc9276969621fb09c2 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedMixedFieldFvPatchField/mappedMixedFieldFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedMixedFieldFvPatchField/mappedMixedFieldFvPatchField.H @@ -152,18 +152,6 @@ public: const mappedMixedFieldFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedMixedFieldFvPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference mappedMixedFieldFvPatchField ( @@ -171,20 +159,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedMixedFieldFvPatchField<Type> - ( - *this, - iF - ) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.C b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.C index 117913ff8e746a4c2b4b4ba3803212aa68576873..786ab2511b841e255c7eed0c7c2667bfd324a12b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.C @@ -821,8 +821,8 @@ Foam::tmp<Foam::Field<Type>> Foam::mappedPatchFieldBase<Type>::mappedInternalField() const { // Swap to obtain full local values of neighbour internal field - tmp<Field<Type>> tnbrIntFld(new Field<Type>()); - Field<Type>& nbrIntFld = tnbrIntFld.ref(); + auto tnbrIntFld = tmp<Field<Type>>::New(); + auto& nbrIntFld = tnbrIntFld.ref(); if (mapper_.sameWorld()) { @@ -855,8 +855,8 @@ Foam::tmp<Foam::scalarField> Foam::mappedPatchFieldBase<Type>::mappedWeightField() const { // Swap to obtain full local values of neighbour internal field - tmp<scalarField> tnbrKDelta(new scalarField()); - scalarField& nbrKDelta = tnbrKDelta.ref(); + auto tnbrKDelta = tmp<scalarField>::New(); + auto& nbrKDelta = tnbrKDelta.ref(); if (mapper_.sameWorld()) { diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.H index 9ee3d796e2bd4857c38f11cca4266336b74b2ab5..16aa8dc2d1cb8257d7d0af0eb10ab1b93fa1663b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedPatchFieldBase.H @@ -233,7 +233,7 @@ public: //- Destructor - virtual ~mappedPatchFieldBase<Type>() = default; + virtual ~mappedPatchFieldBase() = default; // Member Functions diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H index f303e5631743908bdfcc897b99d164352eee491f..925a4bc1496f4bb88090b97d1c380cdfe40fbf15 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H @@ -127,15 +127,6 @@ public: const mappedFixedInternalValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedFixedInternalValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference mappedFixedInternalValueFvPatchField ( @@ -143,16 +134,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedFixedInternalValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H index 12e2c1f77dcf419cebb6ca3ea7516d388ed7e0cc..397c423905434f9814708781124535d75334cf1b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H @@ -128,18 +128,6 @@ public: const mappedFixedPushedInternalValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedFixedPushedInternalValueFvPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference mappedFixedPushedInternalValueFvPatchField ( @@ -147,20 +135,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedFixedPushedInternalValueFvPatchField<Type> - ( - *this, - iF - ) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H index fdf0ce6f7ba8c3a328b0f7efc65aa729a59900e0..b2ef9bd0734f717eccb32dda484bf5fc5eba9aaf 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H @@ -142,15 +142,6 @@ public: const mappedFixedValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedFixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference mappedFixedValueFvPatchField ( @@ -158,16 +149,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedFixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H index 3a3dad2722ef21c0d0574242185c176d5e4a6255..daf5066f3c885982d07cbed286d550339ff11187 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H @@ -133,15 +133,6 @@ public: const mappedFlowRateFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new mappedFlowRateFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference mappedFlowRateFvPatchVectorField ( @@ -149,22 +140,24 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new mappedFlowRateFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } // Member functions - //- Update the coefficients associated with the patch field virtual void updateCoeffs(); diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedMixed/mappedMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedMixed/mappedMixedFvPatchField.H index 3da0a9e034233d3761c036ad63ff49988fe56886..d3ee964ed15940bc8ab91d0728f4f653d6027afc 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedMixed/mappedMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedMixed/mappedMixedFvPatchField.H @@ -150,18 +150,6 @@ public: const mappedMixedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new mappedMixedFvPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference mappedMixedFvPatchField ( @@ -169,20 +157,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new mappedMixedFvPatchField<Type> - ( - *this, - iF - ) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H index 255dd6cb58f73c11278260e836b720a65a8a364a..867d1032c763ea01ef00cd613776724b4037b96e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H @@ -131,15 +131,6 @@ public: const mappedVelocityFluxFixedValueFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new mappedVelocityFluxFixedValueFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference mappedVelocityFluxFixedValueFvPatchField ( @@ -147,16 +138,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new mappedVelocityFluxFixedValueFvPatchField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.C index 2b895940b7355ee1e074823fbc2731452bcd09e1..e407d0ec07ec440b2e3dd53991f14490302d7435 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.C @@ -72,7 +72,7 @@ matchedFlowRateOutletVelocityFvPatchVectorField // Value field required if mass based if (!this->readValueEntry(dict)) { - evaluate(Pstream::commsTypes::blocking); + evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.H index e1af7fb531f6823643190cbfcafb7b1f2e66c432..20ef53876ecb439003de67feef05f47560cca232 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/matchedFlowRateOutletVelocity/matchedFlowRateOutletVelocityFvPatchVectorField.H @@ -141,15 +141,6 @@ public: const matchedFlowRateOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new matchedFlowRateOutletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference matchedFlowRateOutletVelocityFvPatchVectorField ( @@ -157,16 +148,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new matchedFlowRateOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H index 9b5b05cd7ec3d74e68863b3d8bec9ac96cb5facd..7dca9f95e71a0928c1ec00db4c464b99d1ce84b7 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H @@ -110,15 +110,6 @@ public: const movingWallVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new movingWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference movingWallVelocityFvPatchVectorField ( @@ -126,16 +117,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new movingWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/noSlip/noSlipFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/noSlip/noSlipFvPatchVectorField.H index faa7b11eb816048f4bcf114bd08e5e4a49f71c88..3590a2aeb94d355590930e1b1164ae645410ccf2 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/noSlip/noSlipFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/noSlip/noSlipFvPatchVectorField.H @@ -107,15 +107,6 @@ public: const noSlipFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new noSlipFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference noSlipFvPatchVectorField ( @@ -123,16 +114,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new noSlipFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H index 1f7e51e3c896857b8a03ec9515deb397623c9aa9..0996ffc75f5588a8433a5d3aa4587f0423938f46 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H @@ -135,15 +135,6 @@ public: const outletInletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new outletInletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference outletInletFvPatchField ( @@ -151,16 +142,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new outletInletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H index 53b98b91490165ddbcda12613e63716c0c0bbc01..8a1f3a588b94b6f493ded533e53165860d9d35e9 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H @@ -209,15 +209,6 @@ public: const outletMappedUniformInletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new outletMappedUniformInletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference outletMappedUniformInletFvPatchField ( @@ -225,16 +216,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new outletMappedUniformInletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/outletPhaseMeanVelocity/outletPhaseMeanVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/outletPhaseMeanVelocity/outletPhaseMeanVelocityFvPatchVectorField.H index ddb64980d580bbf508260f954fb48582ab0fceab..ccc47baa746ff70051d9254f9b1256849caf2a1d 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/outletPhaseMeanVelocity/outletPhaseMeanVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/outletPhaseMeanVelocity/outletPhaseMeanVelocityFvPatchVectorField.H @@ -130,15 +130,6 @@ public: const outletPhaseMeanVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new outletPhaseMeanVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference outletPhaseMeanVelocityFvPatchVectorField ( @@ -146,20 +137,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new outletPhaseMeanVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.C index cfb77c5732e19ef6fb0cf2a2fcc1b6b227866607..b11935b557b1114afdebca9fdfe9723c6fffaef1 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.C @@ -39,7 +39,7 @@ Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField ) : parent_bctype(p, iF), - refValue_(p.size(), Zero), + refValue_(p.size(), Foam::zero{}), valueFraction_(p.size(), 1.0), writeValue_(false) {} @@ -70,7 +70,7 @@ Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField ) : parent_bctype(p, iF), - refValue_(p.size(), Zero), + refValue_(p.size(), Foam::zero{}), valueFraction_("valueFraction", dict, p.size()), writeValue_(dict.getOrDefault("writeValue", false)) { @@ -86,10 +86,11 @@ Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField template<class Type> Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField ( - const partialSlipFvPatchField<Type>& ptf + const partialSlipFvPatchField<Type>& ptf, + const DimensionedField<Type, volMesh>& iF ) : - parent_bctype(ptf), + parent_bctype(ptf, iF), refValue_(ptf.refValue_), valueFraction_(ptf.valueFraction_), writeValue_(ptf.writeValue_) @@ -99,14 +100,10 @@ Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField template<class Type> Foam::partialSlipFvPatchField<Type>::partialSlipFvPatchField ( - const partialSlipFvPatchField<Type>& ptf, - const DimensionedField<Type, volMesh>& iF + const partialSlipFvPatchField<Type>& ptf ) : - parent_bctype(ptf, iF), - refValue_(ptf.refValue_), - valueFraction_(ptf.valueFraction_), - writeValue_(ptf.writeValue_) + partialSlipFvPatchField<Type>(ptf, ptf.internalField()) {} @@ -204,12 +201,14 @@ template<class Type> void Foam::partialSlipFvPatchField<Type>::write(Ostream& os) const { this->parent_bctype::write(os); + if (writeValue_) + { + os.writeEntry("writeValue", "true"); + } refValue_.writeEntry("refValue", os); valueFraction_.writeEntry("valueFraction", os); - if (writeValue_) { - os.writeEntry("writeValue", "true"); fvPatchField<Type>::writeValueEntry(os); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H index c9b3f2783469ef3b9a6932e4f0ca9d9c6b1aff25..4858f5ba96ed2c3cb5060498b95ea7cb963f4312 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H @@ -31,8 +31,10 @@ Group grpWallBoundaryConditions grpGenericBoundaryConditions Description - This boundary condition provides a partial slip condition. The amount of - slip is controlled by a user-supplied field. + This boundary condition provides a partial slip condition. + The amount of slip is controlled by a user-supplied field. + + The "value" entry is NO_READ, optional write. Usage \table @@ -50,7 +52,6 @@ Usage type partialSlip; refValue uniform 0.001; valueFraction uniform 0.1; - value uniform 0; } \endverbatim @@ -62,8 +63,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef partialSlipFvPatchField_H -#define partialSlipFvPatchField_H +#ifndef Foam_partialSlipFvPatchField_H +#define Foam_partialSlipFvPatchField_H #include "transformFvPatchField.H" @@ -112,7 +113,8 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. partialSlipFvPatchField ( const fvPatch&, @@ -120,7 +122,8 @@ public: const dictionary& ); - //- Construct by mapping given partialSlipFvPatchField onto a new patch + //- Construct by mapping given partialSlip patch field + //- onto a new patch partialSlipFvPatchField ( const partialSlipFvPatchField<Type>&, @@ -135,15 +138,6 @@ public: const partialSlipFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new partialSlipFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference partialSlipFvPatchField ( @@ -151,16 +145,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new partialSlipFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -169,6 +166,7 @@ public: //- False: this patch field is not altered by assignment virtual bool assignable() const { return false; } + // Access virtual Field<Type>& refValue() @@ -217,7 +215,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Return face-gradient transform diagonal diff --git a/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H index ca1f4c4d2d86f939246bd7aab308b1b6f12412e7..948c0c4c0f74b27ed2149eebd20e0e50f70847bb 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H @@ -155,15 +155,6 @@ public: const phaseHydrostaticPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new phaseHydrostaticPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference phaseHydrostaticPressureFvPatchScalarField ( @@ -171,16 +162,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new phaseHydrostaticPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/plenumPressure/plenumPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/plenumPressure/plenumPressureFvPatchScalarField.H index 0ca0a76e9161533e43921f971b970f0d91b48d00..27a87d229c7f5e461c97dfa4d37ba1ad9cd70165 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/plenumPressure/plenumPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/plenumPressure/plenumPressureFvPatchScalarField.H @@ -219,15 +219,6 @@ public: const plenumPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new plenumPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference plenumPressureFvPatchScalarField ( @@ -235,16 +226,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new plenumPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H index 85bf2b931d23b85f0d352f289285da4293d11e47..00fd8eae9ddaa62545447e89c96ef725e8fbdc0c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H @@ -140,18 +140,6 @@ public: const pressureDirectedInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureDirectedInletOutletVelocityFvPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference pressureDirectedInletOutletVelocityFvPatchVectorField ( @@ -159,20 +147,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureDirectedInletOutletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H index 080c250af7f2c18c3fa5590672840ae9431cc75b..fe3cae1316b572b9d45fea6fbcb255557489608e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H @@ -139,15 +139,6 @@ public: const pressureDirectedInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureDirectedInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference pressureDirectedInletVelocityFvPatchVectorField ( @@ -155,20 +146,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureDirectedInletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H index f4f52f7c225363aa7983ab8ada2410bf19a5ffe5..fff0d47336e3a9e7ce9a75648cb0ec7458a6e951 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H @@ -136,18 +136,6 @@ public: const pressureInletOutletParSlipVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureInletOutletParSlipVelocityFvPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference pressureInletOutletParSlipVelocityFvPatchVectorField ( @@ -155,20 +143,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureInletOutletParSlipVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H index 766c68b0269d835856defbe5c9663df4c8c07262..d4acd6a0d84cfe9f24f2f5bee785517be93a78ef 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H @@ -133,15 +133,6 @@ public: const pressureInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureInletOutletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference pressureInletOutletVelocityFvPatchVectorField ( @@ -149,16 +140,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureInletOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H index e4af130ac248d0a5f8fe995ffc80e8792510a0b9..96b8cd2ecb40c4cc2952c6a18016cf65954623cc 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H @@ -108,15 +108,6 @@ public: const pressureInletUniformVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureInletUniformVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference pressureInletUniformVelocityFvPatchVectorField ( @@ -124,16 +115,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureInletUniformVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H index 3db2a464ebb01ad6bea25e80d9917d38113a536b..4f03a78572c1744a11c9ed77643ccc07a9837560 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H @@ -126,15 +126,6 @@ public: const pressureInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference pressureInletVelocityFvPatchVectorField ( @@ -142,16 +133,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H index 1ea26624f35ad34df75d3aff75a20a464ee77be1..54a0923c474e05b5caf6eea1326b7b8a4d3d0f42 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H @@ -135,18 +135,6 @@ public: const pressureNormalInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressureNormalInletOutletVelocityFvPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference pressureNormalInletOutletVelocityFvPatchVectorField ( @@ -154,20 +142,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressureNormalInletOutletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressurePIDControlInletVelocity/pressurePIDControlInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressurePIDControlInletVelocity/pressurePIDControlInletVelocityFvPatchVectorField.H index c879dfcb14f286a0a651c8e74b4c90fb2145b1e6..bc019c970c008275fc76d3bd6cf8ba9a4313e790 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressurePIDControlInletVelocity/pressurePIDControlInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressurePIDControlInletVelocity/pressurePIDControlInletVelocityFvPatchVectorField.H @@ -225,18 +225,6 @@ public: const pressurePIDControlInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressurePIDControlInletVelocityFvPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference pressurePIDControlInletVelocityFvPatchVectorField ( @@ -244,20 +232,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressurePIDControlInletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressurePermeableAlphaInletOutletVelocity/pressurePermeableAlphaInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressurePermeableAlphaInletOutletVelocity/pressurePermeableAlphaInletOutletVelocityFvPatchVectorField.H index d09ab668d9ee035b141214d4c0e8d6f56c25bb6a..7b99e7752d596dd8b95c39d342b4b26f1cb8d4aa 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressurePermeableAlphaInletOutletVelocity/pressurePermeableAlphaInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressurePermeableAlphaInletOutletVelocity/pressurePermeableAlphaInletOutletVelocityFvPatchVectorField.H @@ -156,18 +156,6 @@ public: const pressurePermeableAlphaInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new pressurePermeableAlphaInletOutletVelocityFvPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference pressurePermeableAlphaInletOutletVelocityFvPatchVectorField ( @@ -175,20 +163,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new pressurePermeableAlphaInletOutletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/prghPermeableAlphaTotalPressure/prghPermeableAlphaTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/prghPermeableAlphaTotalPressure/prghPermeableAlphaTotalPressureFvPatchScalarField.H index ca4f952cebfaef4b7a9d94baa992251faf19bc51..65bc81e11aeea1372dd58bc2c8a07207331f4a68 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/prghPermeableAlphaTotalPressure/prghPermeableAlphaTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/prghPermeableAlphaTotalPressure/prghPermeableAlphaTotalPressureFvPatchScalarField.H @@ -175,16 +175,6 @@ public: const prghPermeableAlphaTotalPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new - prghPermeableAlphaTotalPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference prghPermeableAlphaTotalPressureFvPatchScalarField ( @@ -192,21 +182,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new - prghPermeableAlphaTotalPressureFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/prghPressure/prghPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/prghPressure/prghPressureFvPatchScalarField.H index 257091063ba4188cf832809046cd348e07396090..aff0983a27b310d16c5ba7eecba9912d967a0f7b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/prghPressure/prghPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/prghPressure/prghPressureFvPatchScalarField.H @@ -142,15 +142,6 @@ public: const prghPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new prghPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference prghPressureFvPatchScalarField ( @@ -158,16 +149,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new prghPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/prghTotalHydrostaticPressure/prghTotalHydrostaticPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/prghTotalHydrostaticPressure/prghTotalHydrostaticPressureFvPatchScalarField.H index e46cca0a0d0591df07d1222d13755c70d94e7bfc..f1f468fd6054bc040c0fa76b43f96749dbcf7645 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/prghTotalHydrostaticPressure/prghTotalHydrostaticPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/prghTotalHydrostaticPressure/prghTotalHydrostaticPressureFvPatchScalarField.H @@ -150,15 +150,6 @@ public: const prghTotalHydrostaticPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new prghTotalHydrostaticPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference prghTotalHydrostaticPressureFvPatchScalarField ( @@ -166,16 +157,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new prghTotalHydrostaticPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/prghTotalPressure/prghTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/prghTotalPressure/prghTotalPressureFvPatchScalarField.H index 01d9755d12d5c01b65a4b5c28c8588bf07072b65..e8b1ff1000e9710afa204ff91bd15daf3cf3a543 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/prghTotalPressure/prghTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/prghTotalPressure/prghTotalPressureFvPatchScalarField.H @@ -153,15 +153,6 @@ public: const prghTotalPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new prghTotalPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference prghTotalPressureFvPatchScalarField ( @@ -169,16 +160,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new prghTotalPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H index 1fa82f8fdf66dba2cff10f2a2df7d858c6827a98..89f0183fdf35b7be3ec2a45aaf31455b64905f49 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H @@ -144,15 +144,6 @@ public: const rotatingPressureInletOutletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new rotatingPressureInletOutletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference rotatingPressureInletOutletVelocityFvPatchVectorField ( @@ -160,20 +151,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new rotatingPressureInletOutletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H index 15ca55838f4a8ec682b038376baef7c79706d1e7..c0a0e7a08860a48ab7722fb41376193145d65fff 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H @@ -136,15 +136,6 @@ public: const rotatingTotalPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new rotatingTotalPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference rotatingTotalPressureFvPatchScalarField ( @@ -152,16 +143,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new rotatingTotalPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H index 247dfa882b3afd133a084b7dad3ebd1ecb98dab7..2aa4597254ceaf428db85964ca2d2cb3350d2e43 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H @@ -132,15 +132,6 @@ public: const rotatingWallVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new rotatingWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference rotatingWallVelocityFvPatchVectorField ( @@ -148,20 +139,22 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( - const DimensionedField<vector, volMesh>& iF + const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new rotatingWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } - // Member functions // Access functions diff --git a/src/finiteVolume/fields/fvPatchFields/derived/scaledFixedValue/scaledFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/scaledFixedValue/scaledFixedValueFvPatchField.H index 43c95445d2bd652923b27dd23bd2f33a09f903ca..bc8898d43d794d74b9ce7da1706816f56816c581 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/scaledFixedValue/scaledFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/scaledFixedValue/scaledFixedValueFvPatchField.H @@ -138,15 +138,6 @@ public: //- Construct as copy scaledFixedValueFvPatchField(const scaledFixedValueFvPatchField&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new scaledFixedValueFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference scaledFixedValueFvPatchField ( @@ -154,16 +145,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new scaledFixedValueFvPatchField(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H index 952a0abba0e674f41ba2abf0710c9692dfe17a5e..467dbae41026314c979e4a2ed8c0c42dc02b6f9d 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H @@ -104,15 +104,6 @@ public: const slipFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new slipFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference slipFvPatchField ( @@ -120,16 +111,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new slipFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H index 65725e53fe22852acb3f9b8028769350617614f8..c19e26042648da526b8c9c056b480a0b9d0fb5af 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H @@ -153,15 +153,6 @@ public: const supersonicFreestreamFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new supersonicFreestreamFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference supersonicFreestreamFvPatchVectorField ( @@ -169,16 +160,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new supersonicFreestreamFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H index 66fd1e5d348edc5e946eb2111b635fc9ea9e2001..e3f771190932427f9d0f1ee3a41410a5a31da1c9 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H @@ -130,15 +130,6 @@ public: const surfaceNormalFixedValueFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new surfaceNormalFixedValueFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference surfaceNormalFixedValueFvPatchVectorField ( @@ -146,20 +137,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new surfaceNormalFixedValueFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlFanVelocity/swirlFanVelocityFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/swirlFanVelocity/swirlFanVelocityFvPatchField.H index 5f8ef1e830b36a906b44ea6f7edc13e347f129ec..b3b9c50867a9e45704f609ad2064d00999bec543 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/swirlFanVelocity/swirlFanVelocityFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlFanVelocity/swirlFanVelocityFvPatchField.H @@ -220,15 +220,6 @@ public: const swirlFanVelocityFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<vector>> clone() const - { - return tmp<fvPatchField<vector>> - ( - new swirlFanVelocityFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference swirlFanVelocityFvPatchField ( @@ -236,16 +227,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchField<vector>> - ( - new swirlFanVelocityFvPatchField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H index 6ad4679298cd2c55199e1c41ec5960e6de6eeaf1..bee6cb18228abd213b1e35ac13e274599b5f6fec 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H @@ -154,15 +154,6 @@ public: const swirlFlowRateInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new swirlFlowRateInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference swirlFlowRateInletVelocityFvPatchVectorField ( @@ -170,16 +161,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new swirlFlowRateInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlInletVelocity/swirlInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/swirlInletVelocity/swirlInletVelocityFvPatchVectorField.H index 6d7bec13202a6859901ecf417ddd488e72348e64..b61afa01cc00f4bb8f531a9fa1d3594e7bee5fb3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/swirlInletVelocity/swirlInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlInletVelocity/swirlInletVelocityFvPatchVectorField.H @@ -147,15 +147,6 @@ public: const swirlInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new swirlInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference swirlInletVelocityFvPatchVectorField ( @@ -163,16 +154,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new swirlInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H index fe09ee3903e283f6f83b7a49e5d1e5d7eadf79ce..42ce5e7d03f57fb2a8211493c484a684e4aab618 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H @@ -180,15 +180,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new syringePressureFvPatchScalarField(*this) - ); - } - //- Construct as copy syringePressureFvPatchScalarField ( @@ -202,16 +193,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new syringePressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C index 8491516dab0da72670601cdba7de5f8bc2257f4a..40dc0780ccdd97589fd8c0822d90f94efb0b7928 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C @@ -72,7 +72,7 @@ timeVaryingMappedFixedValueFvPatchField // by re-setting of fvatchfield::updated_ flag. This is // so if first use is in the next time step it retriggers // a new update. - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H index 5924157ad2a4788629283b088b6e2d6a32f5a167..4b74e3dfcec2ad602546add4dd74914d3f4ac781 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H @@ -138,15 +138,6 @@ public: const timeVaryingMappedFixedValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new timeVaryingMappedFixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingMappedFixedValueFvPatchField ( @@ -154,16 +145,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new timeVaryingMappedFixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H index 7803e42942801e88a8f9a14c6cd5c3b1f69e11e8..b62dfc4bb1dec795a9de60f8bd2a984196534496 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H @@ -199,15 +199,6 @@ public: const totalPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new totalPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference totalPressureFvPatchScalarField ( @@ -215,16 +206,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new totalPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/totalTemperature/totalTemperatureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/totalTemperature/totalTemperatureFvPatchScalarField.H index 87fa9cab6a17d0a50012ce00851a8ed7bbd91fcd..a74bba4a97532171a154619148d3200a6337a844 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/totalTemperature/totalTemperatureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/totalTemperature/totalTemperatureFvPatchScalarField.H @@ -135,15 +135,6 @@ public: const totalTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new totalTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference totalTemperatureFvPatchScalarField ( @@ -151,16 +142,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new totalTemperatureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H index 3a481a799dc3228344eb560912ee723962a896ea..0d64f42ee4852222368ba240cf0d1681e23fa214 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H @@ -124,15 +124,6 @@ public: const translatingWallVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new translatingWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference translatingWallVelocityFvPatchVectorField ( @@ -140,16 +131,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( - const DimensionedField<vector, volMesh>& iF + const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new translatingWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.C index f44176b09ec7c3fab8143e0890a9a86651938b4d..f7e7ac5a0b7b0bb83be91bfab5283a2fc9c950a5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -132,58 +132,76 @@ void Foam::turbulentDFSEMInletFvPatchVectorField::initialisePatch() patchNormal_ /= mag(patchNormal_) + ROOTVSMALL; - // Decompose the patch faces into triangles to enable point search - const polyPatch& patch = this->patch().patch(); const pointField& points = patch.points(); // Triangulate the patch faces and create addressing - DynamicList<label> triToFace(2*patch.size()); - DynamicList<scalar> triMagSf(2*patch.size()); - DynamicList<face> triFace(2*patch.size()); - DynamicList<face> tris(5); - - // Set zero value at the start of the tri area list - triMagSf.append(0.0); - - forAll(patch, faceI) { - const face& f = patch[faceI]; + label nTris = 0; + for (const face& f : patch) + { + nTris += f.nTriangles(); + } - tris.clear(); - f.triangles(points, tris); + DynamicList<labelledTri> dynTriFace(nTris); + DynamicList<face> tris(8); // work array - forAll(tris, i) + forAll(patch, facei) { - triToFace.append(faceI); - triFace.append(tris[i]); - triMagSf.append(tris[i].mag(points)); + const face& f = patch[facei]; + + tris.clear(); + f.triangles(points, tris); + + for (const auto& t : tris) + { + dynTriFace.emplace_back(t[0], t[1], t[2], facei); + } } + + // Transfer to persistent storage + triFace_.transfer(dynTriFace); } - sumTriMagSf_ = Zero; - sumTriMagSf_[Pstream::myProcNo() + 1] = sum(triMagSf); - Pstream::listCombineReduce(sumTriMagSf_, maxEqOp<scalar>()); + const label myProci = UPstream::myProcNo(); + const label numProc = UPstream::nProcs(); - for (label i = 1; i < triMagSf.size(); ++i) + // Calculate the cumulative triangle weights { - triMagSf[i] += triMagSf[i-1]; - } + triCumulativeMagSf_.resize_nocopy(triFace_.size()+1); - // Transfer to persistent storage - triFace_.transfer(triFace); - triToFace_.transfer(triToFace); - triCumulativeMagSf_.transfer(triMagSf); + auto iter = triCumulativeMagSf_.begin(); - // Convert sumTriMagSf_ into cumulative sum of areas per proc - for (label i = 1; i < sumTriMagSf_.size(); ++i) - { - sumTriMagSf_[i] += sumTriMagSf_[i-1]; + // Set zero value at the start of the tri area/weight list + scalar patchArea = 0; + *iter++ = patchArea; + + // Calculate cumulative and total area + for (const auto& t : triFace_) + { + patchArea += t.mag(points); + *iter++ = patchArea; + } + + sumTriMagSf_.resize_nocopy(numProc+1); + sumTriMagSf_[0] = 0; + + { + scalarList::subList slice(sumTriMagSf_, numProc, 1); + slice[myProci] = patchArea; + Pstream::allGatherList(slice); + } + + // Convert to cumulative sum of areas per proc + for (label i = 1; i < sumTriMagSf_.size(); ++i) + { + sumTriMagSf_[i] += sumTriMagSf_[i-1]; + } } // Global patch area (over all processors) - patchArea_ = sumTriMagSf_.last(); + patchArea_ = sumTriMagSf_.back(); // Local patch bounds (this processor) patchBounds_ = boundBox(patch.localPoints(), false); @@ -239,33 +257,32 @@ Foam::pointIndexHit Foam::turbulentDFSEMInletFvPatchVectorField::setNewPosition const bool global ) { - // Initialise to miss - pointIndexHit pos(false, vector::max, -1); - const polyPatch& patch = this->patch().patch(); const pointField& points = patch.points(); + label triI = -1; + if (global) { const scalar areaFraction = rndGen_.globalPosition<scalar>(0, patchArea_); // Determine which processor to use - label procI = 0; + label proci = 0; forAllReverse(sumTriMagSf_, i) { if (areaFraction >= sumTriMagSf_[i]) { - procI = i; + proci = i; break; } } - if (Pstream::myProcNo() == procI) + if (UPstream::myProcNo() == proci) { // Find corresponding decomposed face triangle - label triI = 0; - const scalar offset = sumTriMagSf_[procI]; + triI = 0; + const scalar offset = sumTriMagSf_[proci]; forAllReverse(triCumulativeMagSf_, i) { if (areaFraction > triCumulativeMagSf_[i] + offset) @@ -274,20 +291,13 @@ Foam::pointIndexHit Foam::turbulentDFSEMInletFvPatchVectorField::setNewPosition break; } } - - // Find random point in triangle - const face& tf = triFace_[triI]; - const triPointRef tri(points[tf[0]], points[tf[1]], points[tf[2]]); - - pos.hitPoint(tri.randomPoint(rndGen_)); - pos.setIndex(triToFace_[triI]); } } else { // Find corresponding decomposed face triangle on local processor - label triI = 0; - const scalar maxAreaLimit = triCumulativeMagSf_.last(); + triI = 0; + const scalar maxAreaLimit = triCumulativeMagSf_.back(); const scalar areaFraction = rndGen_.position<scalar>(0, maxAreaLimit); forAllReverse(triCumulativeMagSf_, i) @@ -298,16 +308,22 @@ Foam::pointIndexHit Foam::turbulentDFSEMInletFvPatchVectorField::setNewPosition break; } } + } - // Find random point in triangle - const face& tf = triFace_[triI]; - const triPointRef tri(points[tf[0]], points[tf[1]], points[tf[2]]); - pos.hitPoint(tri.randomPoint(rndGen_)); - pos.setIndex(triToFace_[triI]); + if (triI >= 0) + { + return pointIndexHit + ( + true, + // Find random point in triangle + triFace_[triI].tri(points).randomPoint(rndGen_), + triFace_[triI].index() + ); } - return pos; + // No hit + return pointIndexHit(false, vector::max, -1); } @@ -521,7 +537,7 @@ void Foam::turbulentDFSEMInletFvPatchVectorField::calcOverlappingProcEddies } - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; forAll(sendMap, proci) { @@ -573,7 +589,6 @@ turbulentDFSEMInletFvPatchVectorField patchArea_(-1), triFace_(), - triToFace_(), triCumulativeMagSf_(), sumTriMagSf_(Pstream::nProcs() + 1, Zero), patchNormal_(Zero), @@ -615,7 +630,6 @@ turbulentDFSEMInletFvPatchVectorField patchArea_(ptf.patchArea_), triFace_(ptf.triFace_), - triToFace_(ptf.triToFace_), triCumulativeMagSf_(ptf.triCumulativeMagSf_), sumTriMagSf_(ptf.sumTriMagSf_), patchNormal_(ptf.patchNormal_), @@ -656,7 +670,6 @@ turbulentDFSEMInletFvPatchVectorField patchArea_(-1), triFace_(), - triToFace_(), triCumulativeMagSf_(), sumTriMagSf_(Pstream::nProcs() + 1, Zero), patchNormal_(Zero), @@ -684,10 +697,11 @@ turbulentDFSEMInletFvPatchVectorField Foam::turbulentDFSEMInletFvPatchVectorField:: turbulentDFSEMInletFvPatchVectorField ( - const turbulentDFSEMInletFvPatchVectorField& ptf + const turbulentDFSEMInletFvPatchVectorField& ptf, + const DimensionedField<vector, volMesh>& iF ) : - fixedValueFvPatchField<vector>(ptf), + fixedValueFvPatchField<vector>(ptf, iF), U_(ptf.U_.clone(patch().patch())), R_(ptf.R_.clone(patch().patch())), L_(ptf.L_.clone(patch().patch())), @@ -702,7 +716,6 @@ turbulentDFSEMInletFvPatchVectorField patchArea_(ptf.patchArea_), triFace_(ptf.triFace_), - triToFace_(ptf.triToFace_), triCumulativeMagSf_(ptf.triCumulativeMagSf_), sumTriMagSf_(ptf.sumTriMagSf_), patchNormal_(ptf.patchNormal_), @@ -723,40 +736,10 @@ turbulentDFSEMInletFvPatchVectorField Foam::turbulentDFSEMInletFvPatchVectorField:: turbulentDFSEMInletFvPatchVectorField ( - const turbulentDFSEMInletFvPatchVectorField& ptf, - const DimensionedField<vector, volMesh>& iF + const turbulentDFSEMInletFvPatchVectorField& ptf ) : - fixedValueFvPatchField<vector>(ptf, iF), - U_(ptf.U_.clone(patch().patch())), - R_(ptf.R_.clone(patch().patch())), - L_(ptf.L_.clone(patch().patch())), - delta_(ptf.delta_), - d_(ptf.d_), - kappa_(ptf.kappa_), - Uref_(ptf.Uref_), - Lref_(ptf.Lref_), - scale_(ptf.scale_), - m_(ptf.m_), - nCellPerEddy_(ptf.nCellPerEddy_), - - patchArea_(ptf.patchArea_), - triFace_(ptf.triFace_), - triToFace_(ptf.triToFace_), - triCumulativeMagSf_(ptf.triCumulativeMagSf_), - sumTriMagSf_(ptf.sumTriMagSf_), - patchNormal_(ptf.patchNormal_), - patchBounds_(ptf.patchBounds_), - - eddies_(ptf.eddies_), - v0_(ptf.v0_), - rndGen_(ptf.rndGen_), - sigmax_(ptf.sigmax_), - maxSigmaX_(ptf.maxSigmaX_), - nEddy_(ptf.nEddy_), - curTimeIndex_(-1), - singleProc_(ptf.singleProc_), - writeEddies_(ptf.writeEddies_) + turbulentDFSEMInletFvPatchVectorField(ptf, ptf.internalField()) {} diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.H index 25a6c571051eff414f2fd80b9892381bafeb5353..6755c1c5b659b99b09a4480f16c9bcd9d2066ff6 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -146,6 +146,7 @@ SourceFiles #include "eddy.H" #include "pointIndexHit.H" #include "PatchFunction1.H" +#include "labelledTri.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -204,13 +205,11 @@ class turbulentDFSEMInletFvPatchVectorField //- Patch area - total across all processors scalar patchArea_; - //- Decomposed patch faces as a list of triangles - faceList triFace_; + //- The polyPatch faces as triangles, the index of each corresponds + //- to the undecomposed patch face index. + List<labelledTri> triFace_; - //- Addressing from per triangle to patch face - labelList triToFace_; - - //- Cumulative triangle area per triangle face + //- Cumulative triangle area per triangle face (processor-local) scalarList triCumulativeMagSf_; //- Cumulative area fractions per processor @@ -326,15 +325,6 @@ public: const turbulentDFSEMInletFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new turbulentDFSEMInletFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference turbulentDFSEMInletFvPatchVectorField ( @@ -342,16 +332,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new turbulentDFSEMInletFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDigitalFilterInlet/turbulentDigitalFilterInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDigitalFilterInlet/turbulentDigitalFilterInletFvPatchField.H index 683968c2566c6857ea4d7dfed51de4ada3f1f8bc..a45207389a1e0d3ef0bcbd3073b05eef0d0a1f24 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDigitalFilterInlet/turbulentDigitalFilterInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDigitalFilterInlet/turbulentDigitalFilterInletFvPatchField.H @@ -299,15 +299,6 @@ public: const turbulentDigitalFilterInletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new turbulentDigitalFilterInletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference turbulentDigitalFilterInletFvPatchField ( @@ -315,16 +306,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new turbulentDigitalFilterInletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H index 9119b7e2db06525421f37efde99d52b9b98c4a1e..06214fcbf11f3bbdc4721959ad94a99ec812a450 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H @@ -176,15 +176,6 @@ public: const turbulentInletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new turbulentInletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference turbulentInletFvPatchField ( @@ -192,16 +183,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new turbulentInletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H index c9a0c1496783e07af492cc85c7d5ef9521902239..29f4c23c8bd2adfeae01bb59bd55d87f3aa6f5a0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H @@ -141,18 +141,6 @@ public: const turbulentIntensityKineticEnergyInletFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new turbulentIntensityKineticEnergyInletFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference turbulentIntensityKineticEnergyInletFvPatchScalarField ( @@ -160,20 +148,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentIntensityKineticEnergyInletFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H index a4d53e374886f3e855c4fdba0bfae80e62560649..7671f1dbac2e2ceda2c889a923bee2f32af90fbb 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H @@ -140,15 +140,6 @@ public: const uniformDensityHydrostaticPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new uniformDensityHydrostaticPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference uniformDensityHydrostaticPressureFvPatchScalarField ( @@ -156,20 +147,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new uniformDensityHydrostaticPressureFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedGradient/uniformFixedGradientFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedGradient/uniformFixedGradientFvPatchField.H index 8b0cb4129b2e8c2dc6375999edae7294312d96a2..648b421e0bdaeaa8330eac851457f25124bf2cda 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedGradient/uniformFixedGradientFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedGradient/uniformFixedGradientFvPatchField.H @@ -140,15 +140,6 @@ public: const uniformFixedGradientFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformFixedGradientFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformFixedGradientFvPatchField ( @@ -156,16 +147,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformFixedGradientFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H index 68e8e90021b65c494cc75938a77db4a335abb884..fddecf96db5a5528f550a0e3a3578c89cdcbae81 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H @@ -140,15 +140,6 @@ public: const uniformFixedValueFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformFixedValueFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformFixedValueFvPatchField ( @@ -156,16 +147,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformFixedValueFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformInletOutlet/uniformInletOutletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformInletOutlet/uniformInletOutletFvPatchField.H index fc2bca0339df5d999ee1aee6f159e03a9af1b26b..f100fed3b6c0456860443796bf93c3cbd46b9360 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformInletOutlet/uniformInletOutletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformInletOutlet/uniformInletOutletFvPatchField.H @@ -138,15 +138,6 @@ public: const uniformInletOutletFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformInletOutletFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformInletOutletFvPatchField ( @@ -154,16 +145,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformInletOutletFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.C index 1f117d268c6f182078e04761385e1b74d91a8988..a10457eea47a3a8e29e42fcd9206fbf64c669c03 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.C @@ -62,13 +62,13 @@ Foam::uniformJumpFvPatchField<Type>::uniformJumpFvPatchField const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueRequired + const bool needValue ) : - fixedJumpFvPatchField<Type>(p, iF, dict, false), // Pass no valueRequired + fixedJumpFvPatchField<Type>(p, iF, dict, false), // needValue = false jumpTable_() { - if (valueRequired) + if (needValue) { if (this->cyclicPatch().owner()) { @@ -77,7 +77,7 @@ Foam::uniformJumpFvPatchField<Type>::uniformJumpFvPatchField if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.H index f54cc9139c565e6db98b68e7b025f3167aacd7e4..a953274fc93abef3a5eec9f214d06b728df84407 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformJump/uniformJumpFvPatchField.H @@ -118,7 +118,7 @@ public: const fvPatch&, const DimensionedField<Type, volMesh>&, const dictionary&, - const bool valueRequired = true + const bool needValue = true ); //- Construct by mapping given uniformJumpFvPatchField onto a @@ -137,15 +137,6 @@ public: const uniformJumpFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformJumpFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformJumpFvPatchField ( @@ -153,16 +144,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformJumpFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.C index c0bf9569a7accdd5b8bdc57f58a8778957f5077c..07be85db2736e7501a67ef5403b163c1e5925f68 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.C @@ -74,7 +74,7 @@ Foam::uniformJumpAMIFvPatchField<Type>::uniformJumpAMIFvPatchField if (!this->readValueEntry(dict)) { - this->evaluate(Pstream::commsTypes::blocking); + this->evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.H index 13f3cf4c2771f926b77e577c4721a48f32b584d2..f986f2e17f6f4ad4db2fd556872a4ddda1937ca9 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformJumpAMI/uniformJumpAMIFvPatchField.H @@ -136,15 +136,6 @@ public: const uniformJumpAMIFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformJumpAMIFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformJumpAMIFvPatchField ( @@ -152,16 +143,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformJumpAMIFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformMixed/uniformMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformMixed/uniformMixedFvPatchField.H index 9d1bdd895459c430c6555ba9621f744ccb303ff0..f3533c0da7270501b98a065f8aaa7615151a761d 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformMixed/uniformMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformMixed/uniformMixedFvPatchField.H @@ -163,15 +163,6 @@ public: const uniformMixedFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new uniformMixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference uniformMixedFvPatchField ( @@ -179,16 +170,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new uniformMixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformNormalFixedValue/uniformNormalFixedValueFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformNormalFixedValue/uniformNormalFixedValueFvPatchVectorField.H index 2600e37a0cb7cb5553cfd7247338e9c34301636f..2cc2a43b3d485a6b1613d74b1c2e2c04e0c4cb14 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformNormalFixedValue/uniformNormalFixedValueFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformNormalFixedValue/uniformNormalFixedValueFvPatchVectorField.H @@ -133,15 +133,6 @@ public: const uniformNormalFixedValueFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new uniformNormalFixedValueFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference uniformNormalFixedValueFvPatchVectorField ( @@ -149,20 +140,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new uniformNormalFixedValueFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H index ef1fd0578dde897af840c622f055bdcd85c268dd..ed5696a1f31ef784e63219ae58a8fbbe03d7ef79 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H @@ -145,15 +145,6 @@ public: const uniformTotalPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new uniformTotalPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference uniformTotalPressureFvPatchScalarField ( @@ -161,16 +152,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new uniformTotalPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H index b127f9f94e73ac52a17feda70f1d884873a972e5..3e52da8949e16a4d00f55fd56cf31873cfa8fa8b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H @@ -139,15 +139,6 @@ public: const variableHeightFlowRateFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new variableHeightFlowRateFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference variableHeightFlowRateFvPatchScalarField ( @@ -155,16 +146,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new variableHeightFlowRateFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H index ef71bf6ca328d31d257e84cc6960fc9923868795..39f3a95cc42249a1b91300326d26f6dab5404fff 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H @@ -138,15 +138,6 @@ public: const variableHeightFlowRateInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new variableHeightFlowRateInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference variableHeightFlowRateInletVelocityFvPatchVectorField ( @@ -154,20 +145,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new variableHeightFlowRateInletVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H index 4140db8be011d07e56d593601f64b4da0f755307..521cc7dc58658ce2669a1632af13df1be0df5445 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H @@ -165,15 +165,6 @@ public: const waveSurfacePressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new waveSurfacePressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference waveSurfacePressureFvPatchScalarField ( @@ -181,16 +172,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new waveSurfacePressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H index 94862dabe9323c0b35c21994ddfaacf9cd5b0540..37330328c1e076cae6097cf7dfa9cc22870916bc 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H @@ -146,15 +146,6 @@ public: const waveTransmissiveFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new waveTransmissiveFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference waveTransmissiveFvPatchField ( @@ -162,16 +153,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new waveTransmissiveFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H b/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H index 6237d679d883de88edbcba3946bd771d8fea52a0..5acccdf4d0157189239e230c3b681f3d8f0bc8f2 100644 --- a/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -281,11 +281,31 @@ class fvPatchField public fvPatchFieldBase, public Field<Type> { +public: + + // Public Data Types + + //- The patch type for the patch field + typedef fvPatch Patch; + + //- The value_type for the patch field + typedef Type value_type; + + //- The internal field type associated with the patch field + typedef DimensionedField<Type, volMesh> Internal; + + //- Type for a \em calculated patch + typedef calculatedFvPatchField<Type> Calculated; + + +private: + // Private Data //- Reference to internal field const DimensionedField<Type, volMesh>& internalField_; + protected: // Protected Member Functions @@ -311,16 +331,6 @@ protected: public: - //- The internal field type associated with the patch field - typedef DimensionedField<Type, volMesh> Internal; - - //- The patch type for the patch field - typedef fvPatch Patch; - - //- Type for a \em calculated patch - typedef calculatedFvPatchField<Type> Calculated; - - // Declare run-time constructor selection tables declareRunTimeSelectionTable @@ -420,13 +430,13 @@ public: const fvPatch& p, const DimensionedField<Type, volMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : fvPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -449,23 +459,43 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone + //- Clone patch field with its own internal field reference virtual tmp<fvPatchField<Type>> clone() const { - return tmp<fvPatchField<Type>>::New(*this); + return tmp<fvPatchField<Type>> + ( + new fvPatchField<Type>(*this, this->internalField_) + ); } - //- Construct and return a clone setting internal field reference + //- Clone patch field with given internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>>::New(*this, iF); + return tmp<fvPatchField<Type>> + ( + new fvPatchField<Type>(*this, iF) + ); } - // Selectors + // Factory Methods + + //- Clone a patch field, optionally with internal field reference etc. + template<class DerivedPatchField, class... Args> + static tmp<fvPatchField<Type>> Clone + ( + const DerivedPatchField& pf, + Args&&... args + ) + { + return tmp<fvPatchField<Type>> + ( + new DerivedPatchField(pf, std::forward<Args>(args)...) + ); + } //- Return a pointer to a new patchField created on freestore given // patch and internal field @@ -512,15 +542,15 @@ public: // freestore without setting patchField values static tmp<fvPatchField<Type>> NewCalculatedType ( - const fvPatch& + const fvPatch& p ); //- Return a pointer to a new calculatedFvPatchField created on // freestore without setting patchField values - template<class Type2> + template<class AnyType> static tmp<fvPatchField<Type>> NewCalculatedType ( - const fvPatchField<Type2>& + const fvPatchField<AnyType>& pf ); @@ -605,7 +635,7 @@ public: virtual void initEvaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -613,7 +643,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ); //- Initialise the evaluation of the patch field after a local @@ -621,7 +651,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -629,7 +659,7 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.C index 443ab350aadc2d907c272d59636d1ba7c8122559..0cfa7e3ef0fa128dcf249ba534a3b888a527ccac 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -120,15 +120,25 @@ Foam::fvsPatchField<Type>::NewCalculatedType template<class Type> -template<class Type2> +template<class AnyType> Foam::tmp<Foam::fvsPatchField<Type>> Foam::fvsPatchField<Type>::NewCalculatedType ( - const fvsPatchField<Type2>& pf + const fvsPatchField<AnyType>& pf ) { return NewCalculatedType(pf.patch()); } +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::calculatedFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.H index 56982775bed3626ed41f3a28d5dd4b62fc692095..4b629cba9841c7afbc78d520b8416bb7ca7d162f 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/basic/calculated/calculatedFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,7 +28,25 @@ Class Foam::calculatedFvsPatchField Description - Foam::calculatedFvsPatchField + This boundary condition is not designed to be evaluated; it is assumed + that the value is assigned via field assignment. + + The "value" entry is MUST_READ. + +Usage + \table + Property | Description | Required | Default + value | Patch face values | yes | + \endtable + + Example of the boundary condition specification: + \verbatim + <patchName> + { + type calculated; + value uniform (0 0 0); // Required value entry + } + \endverbatim SourceFiles calculatedFvsPatchField.C @@ -69,6 +88,7 @@ public: ); //- Construct from patch, internal field and dictionary + //- The "value" entry is MUST_READ. calculatedFvsPatchField ( const fvPatch&, @@ -91,15 +111,6 @@ public: const calculatedFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new calculatedFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference calculatedFvsPatchField ( @@ -107,16 +118,19 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new calculatedFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } @@ -124,6 +138,9 @@ public: //- True: this patch field fixes a value. virtual bool fixesValue() const { return true; } + + //- Write includes "value" entry + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.C index 5c3d033a66c4ed404b8a8674daf6767ab0b41af2..939aac9d7c0bcfb1e830c2eb171a51a5d16eb81b 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,10 +58,11 @@ Foam::coupledFvsPatchField<Type>::coupledFvsPatchField ( const fvPatch& p, const DimensionedField<Type, surfaceMesh>& iF, - const dictionary& dict + const dictionary& dict, + IOobjectOption::readOption requireValue ) : - fvsPatchField<Type>(p, iF, dict) + fvsPatchField<Type>(p, iF, dict, requireValue) {} @@ -98,4 +100,14 @@ Foam::coupledFvsPatchField<Type>::coupledFvsPatchField {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::coupledFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.H index e1eaf8355fec3f4bbf24b3d05782a821c8111d6a..ddb826956257998a10d75ff49e82daf74aacf64c 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/basic/coupled/coupledFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,17 @@ Class Foam::coupledFvsPatchField Description - Foam::coupledFvsPatchField + Abstract base class for coupled patches. + + The "value" entry is usually MUST_READ and always WRITE. SourceFiles coupledFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef coupledFvsPatchField_H -#define coupledFvsPatchField_H +#ifndef Foam_coupledFvsPatchField_H +#define Foam_coupledFvsPatchField_H #include "fvsPatchField.H" #include "coupledFvPatch.H" @@ -46,7 +49,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class coupledFvsPatch Declaration + Class coupledFvsPatchField Declaration \*---------------------------------------------------------------------------*/ template<class Type> @@ -54,7 +57,6 @@ class coupledFvsPatchField : public fvsPatchField<Type> { - public: //- Runtime type information @@ -83,7 +85,8 @@ public: ( const fvPatch&, const DimensionedField<Type, surfaceMesh>&, - const dictionary& + const dictionary&, + IOobjectOption::readOption requireValue = IOobjectOption::MUST_READ ); //- Construct by mapping the given coupledFvsPatchField onto a new patch @@ -101,9 +104,6 @@ public: const coupledFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const = 0; - //- Construct as copy setting internal field reference coupledFvsPatchField ( @@ -111,6 +111,9 @@ public: const DimensionedField<Type, surfaceMesh>& ); + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const = 0; + //- Construct and return a clone virtual tmp<fvsPatchField<Type>> clone ( @@ -118,16 +121,16 @@ public: ) const = 0; - // Member functions + // Member Functions - // Access + //- True: this patch field is derived from coupledFvsPatchField + virtual bool coupled() const + { + return true; + } - //- Return true if this patch field is derived from - // coupledFvsPatchField<Type>. - virtual bool coupled() const - { - return true; - } + //- Write includes "value" entry + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.C index e6818521035e229e8ac3346cb2c086b9e3308b63..2d061f7ced0167f079ddbcdee4f05b1145592dcb 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,7 +58,8 @@ Foam::fixedValueFvsPatchField<Type>::fixedValueFvsPatchField ( const fvPatch& p, const DimensionedField<Type, surfaceMesh>& iF, - const dictionary& dict + const dictionary& dict, + IOobjectOption::readOption requireValue ) : fvsPatchField<Type>(p, iF, dict, IOobjectOption::MUST_READ) @@ -80,21 +82,21 @@ Foam::fixedValueFvsPatchField<Type>::fixedValueFvsPatchField template<class Type> Foam::fixedValueFvsPatchField<Type>::fixedValueFvsPatchField ( - const fixedValueFvsPatchField<Type>& ptf + const fixedValueFvsPatchField<Type>& ptf, + const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type>(ptf) + fvsPatchField<Type>(ptf, iF) {} template<class Type> Foam::fixedValueFvsPatchField<Type>::fixedValueFvsPatchField ( - const fixedValueFvsPatchField<Type>& ptf, - const DimensionedField<Type, surfaceMesh>& iF + const fixedValueFvsPatchField<Type>& ptf ) : - fvsPatchField<Type>(ptf, iF) + fixedValueFvsPatchField<Type>(ptf, ptf.internalField()) {} @@ -107,10 +109,7 @@ Foam::fixedValueFvsPatchField<Type>::valueInternalCoeffs const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } @@ -141,4 +140,12 @@ Foam::fixedValueFvsPatchField<Type>::gradientBoundaryCoeffs() const } +template<class Type> +void Foam::fixedValueFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.H index 463444a94dc3a1548ce71fc0c0416042cad178cf..600abc3ba6ca726673e8189458e3b8fe48ade93d 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/basic/fixedValue/fixedValueFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,33 @@ Class Foam::fixedValueFvsPatchField Description - Foam::fixedValueFvsPatchField + This boundary condition supplies a fixed value constraint, and is the base + class for a number of other boundary conditions. + + The "value" entry is MUST_READ. + +Usage + \table + Property | Description | Required | Default + value | Patch face values | yes | + \endtable + + Example of the boundary condition specification: + \verbatim + <patchName> + { + type fixedValue; + value uniform 0; // Example for scalar field usage + } + \endverbatim SourceFiles fixedValueFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef fixedValueFvsPatchField_H -#define fixedValueFvsPatchField_H +#ifndef Foam_fixedValueFvsPatchField_H +#define Foam_fixedValueFvsPatchField_H #include "fvsPatchField.H" @@ -45,7 +64,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class fixedValueFvsPatch Declaration + Class fixedValueFvsPatchField Declaration \*---------------------------------------------------------------------------*/ template<class Type> @@ -81,7 +100,8 @@ public: ( const fvPatch&, const DimensionedField<Type, surfaceMesh>&, - const dictionary& + const dictionary&, + IOobjectOption::readOption requireValue = IOobjectOption::MUST_READ ); //- Construct by mapping the given fixedValue patch field @@ -100,32 +120,25 @@ public: const fixedValueFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new fixedValueFvsPatchField<Type>(*this) - ); - } - - //- Construct as copy setting internal field reference fixedValueFvsPatchField ( const fixedValueFvsPatchField<Type>&, const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new fixedValueFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } @@ -134,8 +147,11 @@ public: //- True: this patch field fixes a value. virtual bool fixesValue() const { return true; } + //- Write includes "value" entry + virtual void write(Ostream&) const; + - // Evaluation functions + // Evaluation Functions //- Return the matrix diagonal coefficients corresponding to the // evaluation of the value of this patchField with given weights @@ -160,7 +176,7 @@ public: virtual tmp<Field<Type>> gradientBoundaryCoeffs() const; - // Member operators + // Member Operators virtual void operator=(const UList<Type>&) {} diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.C index 239814c185197397ec9fbceaf2ee765eddce8fc8..de49ba50a5dd0c1e55feee4276337349f95e5dd5 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -111,56 +111,33 @@ Foam::slicedFvsPatchField<Type>::slicedFvsPatchField } -template<class Type> -Foam::tmp<Foam::fvsPatchField<Type>> -Foam::slicedFvsPatchField<Type>::clone() const -{ - return tmp<fvsPatchField<Type>> - ( - new slicedFvsPatchField<Type>(*this) - ); -} - - template<class Type> Foam::slicedFvsPatchField<Type>::slicedFvsPatchField ( const slicedFvsPatchField<Type>& ptf ) : - fvsPatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>() - ) -{ - // Transfer the slice from the argument - UList<Type>::shallowCopy(ptf); -} + slicedFvsPatchField<Type>(ptf, ptf.internalField()) +{} +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + template<class Type> -Foam::tmp<Foam::fvsPatchField<Type>> -Foam::slicedFvsPatchField<Type>::clone -( - const DimensionedField<Type, surfaceMesh>& iF -) const +Foam::slicedFvsPatchField<Type>::~slicedFvsPatchField() { - return tmp<fvsPatchField<Type>> - ( - new slicedFvsPatchField<Type>(*this, iF) - ); + // Set to nullptr to avoid deletion of underlying field + UList<Type>::shallowCopy(nullptr); } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> -Foam::slicedFvsPatchField<Type>::~slicedFvsPatchField() +void Foam::slicedFvsPatchField<Type>::write(Ostream& os) const { - // Set to nullptr to avoid deletion of underlying field - UList<Type>::shallowCopy(UList<Type>()); + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); } diff --git a/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.H index 64aeaeb48698955ea75fde0b0fa5e93ac65267b3..809d4e0db3313cb7e45eab919e2d10e49a937a0f 100644 --- a/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/basic/sliced/slicedFvsPatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -89,7 +89,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + // Not implemented. slicedFvsPatchField ( const fvPatch&, @@ -98,6 +99,7 @@ public: ); //- Construct by mapping the given sliced patch field onto a new patch + // Not implemented. slicedFvsPatchField ( const slicedFvsPatchField<Type>&, @@ -109,9 +111,6 @@ public: //- Construct as copy slicedFvsPatchField(const slicedFvsPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const; - //- Construct as copy setting internal field reference slicedFvsPatchField ( @@ -119,15 +118,24 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF - ) const; + ) const + { + return fvsPatchField<Type>::Clone(*this, iF); + } - //- Destructor - virtual ~slicedFvsPatchField<Type>(); + //- Destructor, resets pointers to avoid deletion of underlying field + virtual ~slicedFvsPatchField(); // Member Functions @@ -135,6 +143,9 @@ public: //- True: this patch field fixes a value. virtual bool fixesValue() const { return true; } + //- Write includes "value" entry + virtual void write(Ostream&) const; + // Member Operators diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclic/cyclicFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclic/cyclicFvsPatchField.H index 7da4cccf0cb8595c5e1fa8d0799845de3134e3a0..8678370201cee58da286f409123a9212aeaf9811 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclic/cyclicFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclic/cyclicFvsPatchField.H @@ -27,15 +27,27 @@ Class Foam::cyclicFvsPatchField Description - Foam::cyclicFvsPatchField + This boundary condition enforces a cyclic condition between a pair of + boundaries. + + The "value" entry is NO_READ, but is written. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + type cyclic; + } + \endverbatim SourceFiles cyclicFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef cyclicFvsPatchField_H -#define cyclicFvsPatchField_H +#ifndef Foam_cyclicFvsPatchField_H +#define Foam_cyclicFvsPatchField_H #include "coupledFvsPatchField.H" #include "cyclicFvPatch.H" @@ -46,7 +58,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class cyclicFvsPatch Declaration + Class cyclicFvsPatchField Declaration \*---------------------------------------------------------------------------*/ template<class Type> @@ -54,7 +66,7 @@ class cyclicFvsPatchField : public coupledFvsPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the cyclic patch const cyclicFvPatch& cyclicPatch_; @@ -75,7 +87,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. cyclicFvsPatchField ( const fvPatch&, @@ -98,15 +111,6 @@ public: const cyclicFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new cyclicFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicFvsPatchField ( @@ -114,16 +118,19 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new cyclicFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.C index 1a63a8b724540d0a2ef79ea04d7debaa43c8d0bc..96fb0a15bc3069648b41fd102a6245cf3333db02 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.C @@ -117,7 +117,7 @@ bool Foam::cyclicACMIFvsPatchField<Type>::coupled() const { if ( - Pstream::parRun() + UPstream::parRun() || ( this->cyclicACMIPatch_.size() && this->cyclicACMIPatch_.cyclicACMIPatch().neighbPatch().size() diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.H index dbb056325b47a453d4d0e2dbac9bcb39de36e383..b16faeb228f0d12a98a76cc741317d8152c0cdfc 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicACMI/cyclicACMIFvsPatchField.H @@ -27,7 +27,9 @@ Class Foam::cyclicACMIFvsPatchField Description - Foam::cyclicACMIFvsPatchField + This boundary condition enforces a cyclic condition between a pair of + boundaries, whereby communication between the patches is performed using + an arbitrarily coupled mesh interface (ACMI) interpolation. SourceFiles cyclicACMIFvsPatchField.C @@ -54,7 +56,7 @@ class cyclicACMIFvsPatchField : public coupledFvsPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the cyclic patch const cyclicACMIFvPatch& cyclicACMIPatch_; @@ -75,7 +77,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. cyclicACMIFvsPatchField ( const fvPatch&, @@ -98,15 +101,6 @@ public: const cyclicACMIFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new cyclicACMIFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicACMIFvsPatchField ( @@ -114,24 +108,26 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new cyclicACMIFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } - // Member functions - // Access + // Member Functions - //- Return true if running parallel - virtual bool coupled() const; + //- Return true if running parallel + virtual bool coupled() const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicAMI/cyclicAMIFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicAMI/cyclicAMIFvsPatchField.H index 4846360f893ce45ddf79d72fd0a3f4ffdf0d71aa..59bdcab69f25af3151c26988595c318db95bbc20 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicAMI/cyclicAMIFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicAMI/cyclicAMIFvsPatchField.H @@ -27,7 +27,11 @@ Class Foam::cyclicAMIFvsPatchField Description - Foam::cyclicAMIFvsPatchField + This boundary condition enforces a cyclic condition between a pair of + boundaries, whereby communication between the patches is performed using + an arbitrary mesh interface (AMI) interpolation. + + The "value" entry is MUST_READ. SourceFiles cyclicAMIFvsPatchField.C @@ -54,7 +58,7 @@ class cyclicAMIFvsPatchField : public coupledFvsPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the cyclic patch const cyclicAMIFvPatch& cyclicAMIPatch_; @@ -75,7 +79,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. cyclicAMIFvsPatchField ( const fvPatch&, @@ -98,15 +103,6 @@ public: const cyclicAMIFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new cyclicAMIFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicAMIFvsPatchField ( @@ -114,25 +110,26 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new cyclicAMIFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } - // Member functions - - // Access - //- Return true if running parallel - virtual bool coupled() const; + // Member Functions + //- Return true if running parallel + virtual bool coupled() const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicSlip/cyclicSlipFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicSlip/cyclicSlipFvsPatchField.H index 45da7b0fd725012f366c70a58f72be2d690d26da..023beff5b41e9e39cdca11bf497b014f5392f4d8 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicSlip/cyclicSlipFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/cyclicSlip/cyclicSlipFvsPatchField.H @@ -54,7 +54,6 @@ class cyclicSlipFvsPatchField : public cyclicFvsPatchField<Type> { - public: //- Runtime type information @@ -93,15 +92,6 @@ public: const cyclicSlipFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new cyclicSlipFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cyclicSlipFvsPatchField ( @@ -109,16 +99,19 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new cyclicSlipFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.C index 489cb7de84d1129a5a4da6a89a84d18c90ebee05..4ad2d350be91a8256e15017934c16c928af25960 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +39,7 @@ Foam::emptyFvsPatchField<Type>::emptyFvsPatchField const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type>(p, iF, Field<Type>(0)) + fvsPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field {} @@ -50,8 +51,11 @@ Foam::emptyFvsPatchField<Type>::emptyFvsPatchField const dictionary& dict ) : - fvsPatchField<Type>(p, iF, Field<Type>(0)) + fvsPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { + // Empty means empty, so no patchType override + // with fvsPatchFieldBase::readDict(dict); + if (!isType<emptyFvPatch>(p)) { FatalIOErrorInFunction(dict) @@ -71,7 +75,7 @@ Foam::emptyFvsPatchField<Type>::emptyFvsPatchField const fvPatchFieldMapper& ) : - fvsPatchField<Type>(p, iF, Field<Type>(0)) + fvsPatchField<Type>(p, iF, Field<Type>()) // zero-sized patch field { if (!isType<emptyFvPatch>(this->patch())) { @@ -88,27 +92,32 @@ Foam::emptyFvsPatchField<Type>::emptyFvsPatchField template<class Type> Foam::emptyFvsPatchField<Type>::emptyFvsPatchField ( - const emptyFvsPatchField<Type>& ptf + const emptyFvsPatchField<Type>& ptf, + const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type> - ( - ptf.patch(), - ptf.internalField(), - Field<Type>(0) - ) + fvsPatchField<Type>(ptf.patch(), iF, Field<Type>()) // zero-sized {} template<class Type> Foam::emptyFvsPatchField<Type>::emptyFvsPatchField ( - const emptyFvsPatchField<Type>& ptf, - const DimensionedField<Type, surfaceMesh>& iF + const emptyFvsPatchField<Type>& ptf ) : - fvsPatchField<Type>(ptf.patch(), iF, Field<Type>(0)) + emptyFvsPatchField<Type>(ptf, ptf.internalField()) {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::emptyFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + // Never write "value" +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.H index 1d96c1c568fd278a9b1998c91153aa9cb2222470..f736e76d2b4ba9d408827f976d0669886beeb67c 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/empty/emptyFvsPatchField.H @@ -27,7 +27,19 @@ Class Foam::emptyFvsPatchField Description - Foam::emptyFvsPatchField + This boundary condition provides an 'empty' condition for reduced + dimensions cases. + + The "value" entry is NO_READ, NO_WRITE. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + type empty; + } + \endverbatim SourceFiles emptyFvsPatchField.C @@ -69,7 +81,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is NO_READ. emptyFvsPatchField ( const fvPatch&, @@ -92,15 +105,6 @@ public: const emptyFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new emptyFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference emptyFvsPatchField ( @@ -108,22 +112,25 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new emptyFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } - // Member functions + // Member Functions - // Mapping functions + // Mapping Functions //- Map (and resize as needed) from self given a mapping object virtual void autoMap @@ -139,6 +146,12 @@ public: const labelList& ) {} + + + // Member Functions + + //- Write without "value" entry! + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvsPatchField.H index dce9f785da9ff595ac8988f6c8089feca4b954fa..8c78a68aa1ac55a3420abc6b7ddf1fba452d214e 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvsPatchField.H @@ -54,7 +54,6 @@ class nonuniformTransformCyclicFvsPatchField : public cyclicFvsPatchField<Type> { - public: //- Runtime type information @@ -94,15 +93,6 @@ public: const nonuniformTransformCyclicFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new nonuniformTransformCyclicFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference nonuniformTransformCyclicFvsPatchField ( @@ -110,16 +100,19 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new nonuniformTransformCyclicFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.C index f5a44ebd4cb39c0015e429312e1b1a174b51124b..4d538caa6b7d1a9144cfbcd0822ae100f2ee6d72 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.C @@ -122,11 +122,4 @@ Foam::processorFvsPatchField<Type>::processorFvsPatchField {} -// * * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * // - -template<class Type> -Foam::processorFvsPatchField<Type>::~processorFvsPatchField() -{} - - // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.H index 481d1aac6ab4af7a4ed60b7519ee58dfb7349033..8a4fb3a093e701556b77930cf9aae9dc1d6aabf2 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/processor/processorFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,26 @@ Class Foam::processorFvsPatchField Description - Foam::processorFvsPatchField + This boundary condition enables processor communication across patches. + + The "value" entry is MUST_READ. + + Example of the boundary condition specification: + \verbatim + <patchName> + { + type processor; + value uniform (0 0 0); // Mandatory + } + \endverbatim SourceFiles processorFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef processorFvsPatchField_H -#define processorFvsPatchField_H +#ifndef Foam_processorFvsPatchField_H +#define Foam_processorFvsPatchField_H #include "coupledFvsPatchField.H" #include "processorFvPatch.H" @@ -54,7 +66,7 @@ class processorFvsPatchField : public coupledFvsPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the processor patch const processorFvPatch& procPatch_; @@ -83,7 +95,8 @@ public: const Field<Type>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. processorFvsPatchField ( const fvPatch&, @@ -103,15 +116,6 @@ public: //- Construct as copy processorFvsPatchField(const processorFvsPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new processorFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorFvsPatchField ( @@ -119,29 +123,32 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new processorFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } //- Destructor - virtual ~processorFvsPatchField(); + virtual ~processorFvsPatchField() = default; // Member Functions - //- Return true if running parallel + //- True if running parallel virtual bool coupled() const { - return Pstream::parRun(); + return UPstream::parRun(); } }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.C index 69dda610a3d8f08904d4d2de1ac01d8b23e4ce62..af904a50fbc97d8391367eb1dd8fa2a22e95e5de 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.C @@ -122,11 +122,4 @@ Foam::processorCyclicFvsPatchField<Type>::processorCyclicFvsPatchField {} -// * * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * // - -template<class Type> -Foam::processorCyclicFvsPatchField<Type>::~processorCyclicFvsPatchField() -{} - - // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.H index 59c762dfb183c6a5209b6dd489116d23cbed8b42..8ebb8fbb215af224d8456a2970d8a1de9179ce9c 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/processorCyclic/processorCyclicFvsPatchField.H @@ -27,15 +27,18 @@ Class Foam::processorCyclicFvsPatchField Description - Foam::processorCyclicFvsPatchField + This boundary condition enables processor communication across cyclic + patches. + + The "value" entry is MUST_READ. SourceFiles processorCyclicFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef processorCyclicFvsPatchField_H -#define processorCyclicFvsPatchField_H +#ifndef Foam_processorCyclicFvsPatchField_H +#define Foam_processorCyclicFvsPatchField_H #include "coupledFvsPatchField.H" #include "processorCyclicFvPatch.H" @@ -54,7 +57,7 @@ class processorCyclicFvsPatchField : public coupledFvsPatchField<Type> { - // Private data + // Private Data //- Local reference cast into the processor patch const processorCyclicFvPatch& procPatch_; @@ -83,7 +86,8 @@ public: const Field<Type>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. processorCyclicFvsPatchField ( const fvPatch&, @@ -91,8 +95,7 @@ public: const dictionary& ); - //- Construct by mapping given processorCyclicFvsPatchField onto a - // new patch + //- Construct by mapping given patch field onto a new patch processorCyclicFvsPatchField ( const processorCyclicFvsPatchField<Type>&, @@ -104,15 +107,6 @@ public: //- Construct as copy processorCyclicFvsPatchField(const processorCyclicFvsPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new processorCyclicFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference processorCyclicFvsPatchField ( @@ -120,29 +114,32 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new processorCyclicFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } //- Destructor - virtual ~processorCyclicFvsPatchField(); + virtual ~processorCyclicFvsPatchField() = default; // Member Functions - //- Return true if running parallel + //- True if running parallel virtual bool coupled() const { - return Pstream::parRun(); + return UPstream::parRun(); } }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.C index 1f65f735ce2a33ce2c5d417e0c5c4856b137c428..fb604eabd4495b793b52064c7de9a88727c4611e 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,7 +49,7 @@ Foam::symmetryFvsPatchField<Type>::symmetryFvsPatchField const dictionary& dict ) : - fvsPatchField<Type>(p, iF, dict) + fvsPatchField<Type>(p, iF, dict, IOobjectOption::MUST_READ) { if (!isType<symmetryFvPatch>(p)) { @@ -86,22 +87,32 @@ Foam::symmetryFvsPatchField<Type>::symmetryFvsPatchField template<class Type> Foam::symmetryFvsPatchField<Type>::symmetryFvsPatchField ( - const symmetryFvsPatchField<Type>& ptf + const symmetryFvsPatchField<Type>& ptf, + const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type>(ptf) + fvsPatchField<Type>(ptf, iF) {} template<class Type> Foam::symmetryFvsPatchField<Type>::symmetryFvsPatchField ( - const symmetryFvsPatchField<Type>& ptf, - const DimensionedField<Type, surfaceMesh>& iF + const symmetryFvsPatchField<Type>& ptf ) : - fvsPatchField<Type>(ptf, iF) + symmetryFvsPatchField<Type>(ptf, ptf.internalField()) {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::symmetryFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.H index 9b97484efe6021b0d209c66b62eaec49a6a068f8..03269966a170cbd08f6c43b71ef68a1da7dc62f9 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetry/symmetryFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,27 @@ Class Foam::symmetryFvsPatchField Description - Foam::symmetryFvsPatchField + This boundary condition enforces a symmetry constraint + + The "value" entry is MUST_READ. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + type symmetry; + value ...; + } + \endverbatim SourceFiles symmetryFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef symmetryFvsPatchField_H -#define symmetryFvsPatchField_H +#ifndef Foam_symmetryFvsPatchField_H +#define Foam_symmetryFvsPatchField_H #include "fvsPatchField.H" #include "symmetryFvPatch.H" @@ -54,7 +67,6 @@ class symmetryFvsPatchField : public fvsPatchField<Type> { - public: //- Runtime type information @@ -71,6 +83,7 @@ public: ); //- Construct from patch, internal field and dictionary + //- The "value" entry is MUST_READ. symmetryFvsPatchField ( const fvPatch&, @@ -93,15 +106,6 @@ public: const symmetryFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new symmetryFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryFvsPatchField ( @@ -109,17 +113,26 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new symmetryFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } + + + // Member Functions + + //- Write includes "value" entry + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.C index 60bf14ab437f6c2e482d321c90ef0ea2716cba98..c12a280cb33f836f557c763a41658981a41a8d19 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,7 +49,7 @@ Foam::symmetryPlaneFvsPatchField<Type>::symmetryPlaneFvsPatchField const dictionary& dict ) : - fvsPatchField<Type>(p, iF, dict) + fvsPatchField<Type>(p, iF, dict, IOobjectOption::MUST_READ) { if (!isType<symmetryPlaneFvPatch>(p)) { @@ -86,22 +87,32 @@ Foam::symmetryPlaneFvsPatchField<Type>::symmetryPlaneFvsPatchField template<class Type> Foam::symmetryPlaneFvsPatchField<Type>::symmetryPlaneFvsPatchField ( - const symmetryPlaneFvsPatchField<Type>& ptf + const symmetryPlaneFvsPatchField<Type>& ptf, + const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type>(ptf) + fvsPatchField<Type>(ptf, iF) {} template<class Type> Foam::symmetryPlaneFvsPatchField<Type>::symmetryPlaneFvsPatchField ( - const symmetryPlaneFvsPatchField<Type>& ptf, - const DimensionedField<Type, surfaceMesh>& iF + const symmetryPlaneFvsPatchField<Type>& ptf ) : - fvsPatchField<Type>(ptf, iF) + symmetryPlaneFvsPatchField<Type>(ptf, ptf.internalField()) {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::symmetryPlaneFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.H index 54abdbfbd294480fba4e4004d49b852f6ca23c42..515f1bdbecfc17b2dbcbe7e7af7e3d82525f3e73 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/symmetryPlane/symmetryPlaneFvsPatchField.H @@ -27,15 +27,27 @@ Class Foam::symmetryPlaneFvsPatchField Description - Foam::symmetryPlaneFvsPatchField + This boundary condition enforces a symmetryPlane constraint + + The "value" entry is MUST_READ. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + type symmetryPlane; + value ...; + } + \endverbatim SourceFiles symmetryPlaneFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef symmetryPlaneFvsPatchField_H -#define symmetryPlaneFvsPatchField_H +#ifndef Foam_symmetryPlaneFvsPatchField_H +#define Foam_symmetryPlaneFvsPatchField_H #include "fvsPatchField.H" #include "symmetryPlaneFvPatch.H" @@ -54,7 +66,6 @@ class symmetryPlaneFvsPatchField : public fvsPatchField<Type> { - public: //- Runtime type information @@ -70,7 +81,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. symmetryPlaneFvsPatchField ( const fvPatch&, @@ -78,8 +90,7 @@ public: const dictionary& ); - //- Construct by mapping given symmetryPlaneFvsPatchField - // onto a new patch + //- Construct by mapping given patch field onto a new patch symmetryPlaneFvsPatchField ( const symmetryPlaneFvsPatchField<Type>&, @@ -94,15 +105,6 @@ public: const symmetryPlaneFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new symmetryPlaneFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference symmetryPlaneFvsPatchField ( @@ -110,17 +112,26 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new symmetryPlaneFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } + + + // Member Functions + + //- Write includes "value" entry + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.C index 9c243442b5ad5538f0ea7e832eecf2fa7643f268..013a628b5339c61d8c3c463b8bb915193d2f2a2b 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,7 +49,7 @@ Foam::wedgeFvsPatchField<Type>::wedgeFvsPatchField const dictionary& dict ) : - fvsPatchField<Type>(p, iF, dict) + fvsPatchField<Type>(p, iF, dict, IOobjectOption::MUST_READ) { if (!isType<wedgeFvPatch>(p)) { @@ -86,22 +87,32 @@ Foam::wedgeFvsPatchField<Type>::wedgeFvsPatchField template<class Type> Foam::wedgeFvsPatchField<Type>::wedgeFvsPatchField ( - const wedgeFvsPatchField<Type>& ptf + const wedgeFvsPatchField<Type>& ptf, + const DimensionedField<Type, surfaceMesh>& iF ) : - fvsPatchField<Type>(ptf) + fvsPatchField<Type>(ptf, iF) {} template<class Type> Foam::wedgeFvsPatchField<Type>::wedgeFvsPatchField ( - const wedgeFvsPatchField<Type>& ptf, - const DimensionedField<Type, surfaceMesh>& iF + const wedgeFvsPatchField<Type>& ptf ) : - fvsPatchField<Type>(ptf, iF) + wedgeFvsPatchField<Type>(ptf, ptf.internalField()) {} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class Type> +void Foam::wedgeFvsPatchField<Type>::write(Ostream& os) const +{ + fvsPatchField<Type>::write(os); + fvsPatchField<Type>::writeValueEntry(os); +} + + // ************************************************************************* // diff --git a/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.H index 861dfc45a171b0c12298ff8e4e6ef4b7e0a09a24..1325dd9a42290aff1bf0525635e7a1951ef30494 100644 --- a/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/constraint/wedge/wedgeFvsPatchField.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,28 @@ Class Foam::wedgeFvsPatchField Description - Foam::wedgeFvsPatchField + This boundary condition is similar to the cyclic condition, except that + it is applied to 2-D geometries. + + The "value" entry is MUST_READ. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + type wedge; + value uniform ...; // Required value entry + } + \endverbatim SourceFiles wedgeFvsPatchField.C \*---------------------------------------------------------------------------*/ -#ifndef wedgeFvsPatchField_H -#define wedgeFvsPatchField_H +#ifndef Foam_wedgeFvsPatchField_H +#define Foam_wedgeFvsPatchField_H #include "fvsPatchField.H" #include "wedgeFvPatch.H" @@ -54,7 +68,6 @@ class wedgeFvsPatchField : public fvsPatchField<Type> { - public: //- Runtime type information @@ -70,7 +83,8 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct from patch, internal field and dictionary + //- Construct from patch, internal field and dictionary. + //- The "value" entry is MUST_READ. wedgeFvsPatchField ( const fvPatch&, @@ -93,15 +107,6 @@ public: const wedgeFvsPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new wedgeFvsPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference wedgeFvsPatchField ( @@ -109,17 +114,26 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new wedgeFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } + + + // Member Functions + + //- Write includes "value" entry + virtual void write(Ostream&) const; }; diff --git a/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.C b/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.C index b197203cb222fdda2ded6a875b342957b9fbdc23..027b488214a9d01d8b78705ac71d2e1c473e47b8 100644 --- a/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.C +++ b/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.C @@ -207,7 +207,6 @@ template<class Type> void Foam::fvsPatchField<Type>::write(Ostream& os) const { os.writeEntry("type", type()); - Field<Type>::writeEntry("value", os); } diff --git a/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.H b/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.H index c6ab5ffc0448ce07bbbf8b3ca2acb11f6385f125..63cc9f794c920fe1d4be8b988355cb9142f6575c 100644 --- a/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.H +++ b/src/finiteVolume/fields/fvsPatchFields/fvsPatchField/fvsPatchField.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -205,11 +205,31 @@ class fvsPatchField public fvsPatchFieldBase, public Field<Type> { +public: + + // Public Data Types + + //- The patch type for the patch field + typedef fvPatch Patch; + + //- The value_type for the patch field + typedef Type value_type; + + //- The internal field type associated with the patch field + typedef DimensionedField<Type, surfaceMesh> Internal; + + //- Type for a \em calculated patch + typedef calculatedFvsPatchField<Type> Calculated; + + +private: + // Private Data //- Reference to internal field const DimensionedField<Type, surfaceMesh>& internalField_; + protected: // Protected Member Functions @@ -232,16 +252,6 @@ protected: public: - //- The internal field type associated with the patch field - typedef DimensionedField<Type, surfaceMesh> Internal; - - //- The patch type for the patch field - typedef fvPatch Patch; - - //- Type for a \em calculated patch - typedef calculatedFvsPatchField<Type> Calculated; - - // Declare run-time constructor selection tables declareRunTimeSelectionTable @@ -333,13 +343,13 @@ public: const fvPatch& p, const DimensionedField<Type, surfaceMesh>& iF, const dictionary& dict, - const bool valueReqd + const bool needValue ) : fvsPatchField ( p, iF, dict, - (valueReqd? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) + (needValue? IOobjectOption::MUST_READ : IOobjectOption::NO_READ) ) {} @@ -362,23 +372,43 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone + //- Clone patch field with its own internal field reference virtual tmp<fvsPatchField<Type>> clone() const { - return tmp<fvsPatchField<Type>>::New(*this); + return tmp<fvsPatchField<Type>> + ( + new fvsPatchField<Type>(*this, this->internalField_) + ); } - //- Construct and return a clone setting internal field reference + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>>::New(*this, iF); + return tmp<fvsPatchField<Type>> + ( + new fvsPatchField<Type>(*this, iF) + ); } - // Selectors + // Factory Methods + + //- Clone a patch field, optionally with internal field reference etc. + template<class DerivedPatchField, class... Args> + static tmp<fvsPatchField<Type>> Clone + ( + const DerivedPatchField& pf, + Args&&... args + ) + { + return tmp<fvsPatchField<Type>> + ( + new DerivedPatchField(pf, std::forward<Args>(args)...) + ); + } //- Return a pointer to a new patchField created on freestore given // patch and internal field @@ -425,15 +455,15 @@ public: // freestore without setting patchField values static tmp<fvsPatchField<Type>> NewCalculatedType ( - const fvPatch& + const fvPatch& p ); //- Return a pointer to a new calculatedFvsPatchField created on // freestore without setting patchField values - template<class Type2> + template<class AnyType> static tmp<fvsPatchField<Type>> NewCalculatedType ( - const fvsPatchField<Type2>& + const fvsPatchField<AnyType>& pf ); @@ -481,7 +511,7 @@ public: virtual void initEvaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -489,7 +519,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -498,7 +528,7 @@ public: virtual void initEvaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} @@ -506,12 +536,12 @@ public: virtual void evaluateLocal ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} - //- Write + //- Write the patch "type" virtual void write(Ostream& os) const; //- Check against given patch field diff --git a/src/finiteVolume/fields/surfaceFields/slicedSurfaceFieldsFwd.H b/src/finiteVolume/fields/surfaceFields/slicedSurfaceFieldsFwd.H index 9434756da85bd07f57aaf8b8e1dd489197828693..dfeb3bf6c37a37efdc9eba8aa164b2635cd0c5fa 100644 --- a/src/finiteVolume/fields/surfaceFields/slicedSurfaceFieldsFwd.H +++ b/src/finiteVolume/fields/surfaceFields/slicedSurfaceFieldsFwd.H @@ -66,35 +66,28 @@ SlicedGeometricField<Type, fvsPatchField, slicedFvsPatchField, surfaceMesh>; // Typedefs typedef -SlicedGeometricField<scalar, fvsPatchField, slicedFvsPatchField, surfaceMesh> + SlicedGeometricField + <scalar, fvsPatchField, slicedFvsPatchField, surfaceMesh> slicedSurfaceScalarField; typedef -SlicedGeometricField<vector, fvsPatchField, slicedFvsPatchField, surfaceMesh> + SlicedGeometricField + <vector, fvsPatchField, slicedFvsPatchField, surfaceMesh> slicedSurfaceVectorField; typedef -SlicedGeometricField -< - sphericalTensor, - fvsPatchField, - slicedFvsPatchField, - surfaceMesh -> + SlicedGeometricField + <sphericalTensor, fvsPatchField, slicedFvsPatchField, surfaceMesh> slicedSurfaceSphericalTensorField; typedef -SlicedGeometricField -< - symmTensor, - fvsPatchField, - slicedFvsPatchField, - surfaceMesh -> + SlicedGeometricField + <symmTensor, fvsPatchField, slicedFvsPatchField, surfaceMesh> slicedSurfaceSymmTensorField; typedef -SlicedGeometricField<tensor, fvsPatchField, slicedFvsPatchField, surfaceMesh> + SlicedGeometricField + <tensor, fvsPatchField, slicedFvsPatchField, surfaceMesh> slicedSurfaceTensorField; diff --git a/src/finiteVolume/fields/surfaceFields/surfaceFieldsFwd.H b/src/finiteVolume/fields/surfaceFields/surfaceFieldsFwd.H index 1a1dd8a35308d92a59d595f34a5b21795fbe6559..d0caef925e34c49007c563b5861b2cbf3f466702 100644 --- a/src/finiteVolume/fields/surfaceFields/surfaceFieldsFwd.H +++ b/src/finiteVolume/fields/surfaceFields/surfaceFieldsFwd.H @@ -38,17 +38,13 @@ SourceFiles #define Foam_surfaceFieldsFwd_H #include "fieldTypes.H" +#include "GeometricFieldFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Geometric field (internal + boundary) -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Forward Declarations @@ -63,13 +59,25 @@ using SurfaceField = GeometricField<Type, fvsPatchField, surfaceMesh>; // Typedefs -typedef GeometricField<scalar, fvsPatchField, surfaceMesh> surfaceScalarField; -typedef GeometricField<vector, fvsPatchField, surfaceMesh> surfaceVectorField; -typedef GeometricField<sphericalTensor, fvsPatchField, surfaceMesh> +typedef + GeometricField<scalar, fvsPatchField, surfaceMesh> + surfaceScalarField; + +typedef + GeometricField<vector, fvsPatchField, surfaceMesh> + surfaceVectorField; + +typedef + GeometricField<sphericalTensor, fvsPatchField, surfaceMesh> surfaceSphericalTensorField; -typedef GeometricField<symmTensor, fvsPatchField, surfaceMesh> + +typedef + GeometricField<symmTensor, fvsPatchField, surfaceMesh> surfaceSymmTensorField; -typedef GeometricField<tensor, fvsPatchField, surfaceMesh> surfaceTensorField; + +typedef + GeometricField<tensor, fvsPatchField, surfaceMesh> + surfaceTensorField; /*---------------------------------------------------------------------------*\ diff --git a/src/finiteVolume/fields/volFields/slicedVolFieldsFwd.H b/src/finiteVolume/fields/volFields/slicedVolFieldsFwd.H index 95e766c0478734cfeb1a6168f48c9577df14d94a..b7f6eb962d5697519510bcc2dfa60e716ce128ce 100644 --- a/src/finiteVolume/fields/volFields/slicedVolFieldsFwd.H +++ b/src/finiteVolume/fields/volFields/slicedVolFieldsFwd.H @@ -65,23 +65,28 @@ SlicedGeometricField<Type, fvPatchField, slicedFvPatchField, volMesh>; // Typedefs typedef -SlicedGeometricField<scalar, fvPatchField, slicedFvPatchField, volMesh> + SlicedGeometricField + <scalar, fvPatchField, slicedFvPatchField, volMesh> slicedVolScalarField; typedef -SlicedGeometricField<vector, fvPatchField, slicedFvPatchField, volMesh> + SlicedGeometricField + <vector, fvPatchField, slicedFvPatchField, volMesh> slicedVolVectorField; typedef -SlicedGeometricField<sphericalTensor, fvPatchField, slicedFvPatchField, volMesh> + SlicedGeometricField + <sphericalTensor, fvPatchField, slicedFvPatchField, volMesh> slicedVolSphericalTensorField; typedef -SlicedGeometricField<symmTensor, fvPatchField, slicedFvPatchField, volMesh> + SlicedGeometricField + <symmTensor, fvPatchField, slicedFvPatchField, volMesh> slicedVolSymmTensorField; typedef -SlicedGeometricField<tensor, fvPatchField, slicedFvPatchField, volMesh> + SlicedGeometricField + <tensor, fvPatchField, slicedFvPatchField, volMesh> slicedVolTensorField; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/finiteVolume/fields/volFields/volFieldsFwd.H b/src/finiteVolume/fields/volFields/volFieldsFwd.H index e4daf9f73b85772783ef207d552685a56bb5d415..32bb8d658ee64163623bff9ad9e2f8a016575afd 100644 --- a/src/finiteVolume/fields/volFields/volFieldsFwd.H +++ b/src/finiteVolume/fields/volFields/volFieldsFwd.H @@ -36,24 +36,13 @@ SourceFiles #define Foam_volFieldsFwd_H #include "fieldTypes.H" +#include "GeometricFieldFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Geometric internal field -template<class Type, class GeoMesh> class DimensionedField; - -// Geometric boundary field -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricBoundaryField; - -// Geometric field (internal + boundary) -template<class Type, template<class> class PatchField, class GeoMesh> -class GeometricField; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Forward Declarations @@ -76,12 +65,25 @@ using VolumeInternalField = DimensionedField<Type, volMesh>; // Typedefs -typedef GeometricField<scalar, fvPatchField, volMesh> volScalarField; -typedef GeometricField<vector, fvPatchField, volMesh> volVectorField; -typedef GeometricField<sphericalTensor, fvPatchField, volMesh> +typedef + GeometricField<scalar, fvPatchField, volMesh> + volScalarField; + +typedef + GeometricField<vector, fvPatchField, volMesh> + volVectorField; + +typedef + GeometricField<sphericalTensor, fvPatchField, volMesh> volSphericalTensorField; -typedef GeometricField<symmTensor, fvPatchField, volMesh> volSymmTensorField; -typedef GeometricField<tensor, fvPatchField, volMesh> volTensorField; + +typedef + GeometricField<symmTensor, fvPatchField, volMesh> + volSymmTensorField; + +typedef + GeometricField<tensor, fvPatchField, volMesh> + volTensorField; /*---------------------------------------------------------------------------*\ diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.C b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.C index 3c395b5ae0fc97985f2df6c408270cfb0901a165..8cf8c12438e5090f473be48afdffb1c75b503aae 100644 --- a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.C +++ b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2018 OpenFOAM Foundation - Copyright (C) 2020-2021,2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -68,22 +68,15 @@ CrankNicolsonDdtScheme<Type>::DDt0Field<GeoField>::DDt0Field ( const IOobject& io, const fvMesh& mesh, - const dimensioned<typename GeoField::value_type>& dimType + const typename GeoField::value_type& value, + const dimensionSet& dims ) : - GeoField(io, mesh, dimType), + GeoField(io, mesh, value, dims), startTimeIndex_(mesh.time().timeIndex()) {} -template<class Type> -template<class GeoField> -label CrankNicolsonDdtScheme<Type>::DDt0Field<GeoField>::startTimeIndex() const -{ - return startTimeIndex_; -} - - template<class Type> template<class GeoField> GeoField& CrankNicolsonDdtScheme<Type>::DDt0Field<GeoField>::operator()() @@ -127,7 +120,7 @@ CrankNicolsonDdtScheme<Type>::ddt0_ ( name, startTimeName, - mesh() + mesh().thisDb() ).template typeHeaderOk<DDt0Field<GeoField>>(true) ) { @@ -139,9 +132,10 @@ CrankNicolsonDdtScheme<Type>::ddt0_ ( name, startTimeName, - mesh(), + mesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh() ) @@ -159,25 +153,21 @@ CrankNicolsonDdtScheme<Type>::ddt0_ mesh().time().timeName(), mesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh(), - dimensioned<typename GeoField::value_type> - ( - dims/dimTime, - Zero - ) + Foam::zero{}, // value + dims/dimTime ) ); } } - DDt0Field<GeoField>& ddt0 = static_cast<DDt0Field<GeoField>&> + return static_cast<DDt0Field<GeoField>&> ( mesh().objectRegistry::template lookupObjectRef<GeoField>(name) ); - - return ddt0; } @@ -369,7 +359,8 @@ CrankNicolsonDdtScheme<Type>::fvcDdt ( ddtIOobject, mesh(), - dimensioned<Type>(dt.dimensions()/dimTime, Zero) + Foam::zero{}, // value + (dt.dimensions()/dimTime) ) ); diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.H b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.H index 55ac242e560412ba0925b7c3e6c17145398890c7..6f6f79550c3f2d9edae1eb24b8f682d3411296a8 100644 --- a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.H +++ b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtScheme.H @@ -53,10 +53,10 @@ Description default CrankNicolson ocCoeff { - type scale; - scale linearRamp; - duration 0.01; - value 0.9; + type scale; + scale linearRamp; + duration 0.01; + value 0.9; }; } \endverbatim @@ -93,8 +93,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef CrankNicolsonDdtScheme_H -#define CrankNicolsonDdtScheme_H +#ifndef Foam_CrankNicolsonDdtScheme_H +#define Foam_CrankNicolsonDdtScheme_H #include "ddtScheme.H" #include "Function1.H" @@ -120,9 +120,9 @@ class CrankNicolsonDdtScheme { // Private Data - //- Class to store the ddt0 fields on the objectRegistry for use in the - // next time-step. The start-time index of the CN scheme is also - // stored to help handle the transition from Euler to CN + //- Store ddt0 fields on the registry for use in the next time-step. + // The start-time index of the CN scheme is also stored + // to help handle the transition from Euler to CrankNicolson template<class GeoField> class DDt0Field : @@ -132,24 +132,24 @@ class CrankNicolsonDdtScheme public: - //- Constructor from file for restart. + //- Read construct from file (for restart) DDt0Field ( const IOobject& io, const fvMesh& mesh ); - //- Constructor from components, initisalised to zero with given - // dimensions. + //- Construct value-initialised with given dimensions DDt0Field ( const IOobject& io, const fvMesh& mesh, - const dimensioned<typename GeoField::value_type>& dimType + const typename GeoField::value_type& value, + const dimensionSet& dims ); //- Return the start-time index - label startTimeIndex() const; + label startTimeIndex() const noexcept { return startTimeIndex_; } //- Cast to the underlying GeoField GeoField& operator()(); diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.C b/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.C index 94a00c2a68355ac6d24bc0f6e21e7ec73a8c7641..06209c1334c261a8921232779d336470c525d514 100644 --- a/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.C +++ b/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.C @@ -96,11 +96,7 @@ tmp<GeometricField<Type, fvPatchField, volMesh>> ddtScheme<Type>::fvcDdt ) { NotImplemented; - - return tmp<GeometricField<Type, fvPatchField, volMesh>> - ( - GeometricField<Type, fvPatchField, volMesh>::null() - ); + return nullptr; } @@ -113,13 +109,7 @@ tmp<fvMatrix<Type>> ddtScheme<Type>::fvmDdt ) { NotImplemented; - - return tmp<fvMatrix<Type>>::New - ( - vf, - alpha.dimensions()*rho.dimensions() - *vf.dimensions()*dimVol/dimTime - ); + return nullptr; } @@ -130,15 +120,10 @@ tmp<GeometricField<Type, fvsPatchField, surfaceMesh>> ddtScheme<Type>::fvcDdt ) { NotImplemented; - - return tmp<GeometricField<Type, fvsPatchField, surfaceMesh>> - ( - GeometricField<Type, fvsPatchField, surfaceMesh>::null() - ); + return nullptr; } - template<class Type> tmp<surfaceScalarField> ddtScheme<Type>::fvcDdtPhiCoeff ( diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtScheme.C b/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtScheme.C index 849852f75440c5853beae341917ecd30cc1a0026..0712b59fd0c1339a7b527f041e80ee24e40cbbb4 100644 --- a/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtScheme.C +++ b/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtScheme.C @@ -254,10 +254,8 @@ steadyStateDdtScheme<Type>::fvcDdtUfCorr mesh().thisDb() ), mesh(), - dimensioned<typename flux<Type>::type> - ( - Uf.dimensions()*dimArea/dimTime, Zero - ) + Foam::zero{}, // value + Uf.dimensions()*dimArea/dimTime ) ); @@ -286,10 +284,8 @@ steadyStateDdtScheme<Type>::fvcDdtPhiCorr mesh().thisDb() ), mesh(), - dimensioned<typename flux<Type>::type> - ( - phi.dimensions()/dimTime, Zero - ) + Foam::zero{}, // value + phi.dimensions()/dimTime ) ); @@ -321,10 +317,8 @@ steadyStateDdtScheme<Type>::fvcDdtUfCorr mesh().thisDb() ), mesh(), - dimensioned<typename flux<Type>::type> - ( - Uf.dimensions()*dimArea/dimTime, Zero - ) + Foam::zero{}, // value + Uf.dimensions()*dimArea/dimTime ) ); @@ -356,10 +350,8 @@ steadyStateDdtScheme<Type>::fvcDdtPhiCorr mesh().thisDb() ), mesh(), - dimensioned<typename flux<Type>::type> - ( - phi.dimensions()/dimTime, Zero - ) + Foam::zero{}, // value + phi.dimensions()/dimTime ) ); diff --git a/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H b/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H index 3cf30c8e4d5078e64bb34a6ebbcdbac12073aa40..61b4707f0778e246d44c956b582c529263e2833d 100644 --- a/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H +++ b/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef divScheme_H -#define divScheme_H +#ifndef Foam_divScheme_H +#define Foam_divScheme_H #include "tmp.H" #include "volFieldsFwd.H" @@ -71,12 +71,12 @@ class divScheme : public refCount { - protected: // Protected data const fvMesh& mesh_; + tmp<surfaceInterpolationScheme<Type>> tinterpScheme_; @@ -120,8 +120,23 @@ public: divScheme(const fvMesh& mesh, Istream& is) : mesh_(mesh), - tinterpScheme_(surfaceInterpolationScheme<Type>::New(mesh, is)) - {} + tinterpScheme_(nullptr) + { + if (is.eof()) + { + tinterpScheme_.reset + ( + new linear<Type>(mesh) + ); + } + else + { + tinterpScheme_.reset + ( + surfaceInterpolationScheme<Type>::New(mesh, is) + ); + } + } // Selectors diff --git a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.C b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.C index f050487a2ceb69bb1c595e29382308b1e8c07cdb..ca6edf267e5744362a1e84c77f2f7f4131649cfa 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.C +++ b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.C @@ -36,7 +36,7 @@ Foam::fv::LeastSquaresVectors<Stencil>::LeastSquaresVectors const fvMesh& mesh ) : - MeshObject<fvMesh, Foam::MoveableMeshObject, LeastSquaresVectors>(mesh), + MeshObject_type(mesh), vectors_(mesh.nCells()) { calcLeastSquaresVectors(); diff --git a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.H b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.H index 50127f2919a9f05324d7e09c235f8688644187ae..c6d9309c0a4cbf2368fd56ef67d0114e5270339a 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.H +++ b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresVectors.H @@ -63,6 +63,16 @@ class LeastSquaresVectors : public MeshObject<fvMesh, MoveableMeshObject, LeastSquaresVectors<Stencil>> { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + MoveableMeshObject, + LeastSquaresVectors<Stencil> + > MeshObject_type; + + // Private Data //- Least-squares gradient vectors @@ -84,17 +94,14 @@ public: // Constructors //- Construct given an fvMesh and the minimum determinant criterion - LeastSquaresVectors - ( - const fvMesh& - ); + explicit LeastSquaresVectors(const fvMesh& mesh); //- Destructor virtual ~LeastSquaresVectors(); - // Member functions + // Member Functions //- Return const reference to the stencil const extendedCentredCellToCellStencil& stencil() const diff --git a/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.H b/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.H index a5ceacf97a63e2205f1ba77ddf80aa0416eff4b6..3b4b306f61880eb749bac72a6bdebc16179161f2 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.H +++ b/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.H @@ -39,8 +39,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef gaussGrad_H -#define gaussGrad_H +#ifndef Foam_gaussGrad_H +#define Foam_gaussGrad_H #include "gradScheme.H" #include "surfaceInterpolationScheme.H" @@ -103,19 +103,17 @@ public: { if (is.eof()) { - tinterpScheme_ = - tmp<surfaceInterpolationScheme<Type>> - ( - new linear<Type>(mesh) - ); + tinterpScheme_.reset + ( + new linear<Type>(mesh) + ); } else { - tinterpScheme_ = - tmp<surfaceInterpolationScheme<Type>> - ( - surfaceInterpolationScheme<Type>::New(mesh, is) - ); + tinterpScheme_.reset + ( + surfaceInterpolationScheme<Type>::New(mesh, is) + ); } } diff --git a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/invDistLeastSquaresVectors.C b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/invDistLeastSquaresVectors.C index 584968db7d3fcbda94907c84a69e3f2a384eb850..a86dfe7d728c77188aaa4e1ad57acabc8818eb18 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/invDistLeastSquaresVectors.C +++ b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/invDistLeastSquaresVectors.C @@ -41,7 +41,7 @@ namespace Foam Foam::leastSquaresVectors::leastSquaresVectors(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::MoveableMeshObject, leastSquaresVectors>(mesh), + MeshObject_type(mesh), pVectors_ ( IOobject diff --git a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.C b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.C index c8f5b010511ed8372bc579ace2b020645988d932..5085e0c54313ca814fafe58351ef3900d38a9cb1 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.C +++ b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.C @@ -41,7 +41,7 @@ namespace Foam Foam::leastSquaresVectors::leastSquaresVectors(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::MoveableMeshObject, leastSquaresVectors>(mesh), + MeshObject_type(mesh), pVectors_ ( IOobject diff --git a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.H b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.H index 858d6f337e37304a355eca61fef90cd8fcea03c5..bc394099c59b84c01b46438430e1ae9e9ecfefb3 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.H +++ b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresVectors.H @@ -55,6 +55,16 @@ class leastSquaresVectors : public MeshObject<fvMesh, MoveableMeshObject, leastSquaresVectors> { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + MoveableMeshObject, + leastSquaresVectors + > MeshObject_type; + + // Private Data //- Owner least-squares gradient vectors diff --git a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/unweightedLeastSquaresVectors.C b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/unweightedLeastSquaresVectors.C index c19c1ba86b29734578404c0cbe4e4bd0336acbc8..3ff39ce10c83d75cc5e3ae7a85df34c6cd37303a 100644 --- a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/unweightedLeastSquaresVectors.C +++ b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/unweightedLeastSquaresVectors.C @@ -41,7 +41,7 @@ namespace Foam Foam::leastSquaresVectors::leastSquaresVectors(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::MoveableMeshObject, leastSquaresVectors>(mesh), + MeshObject_type(mesh), pVectors_ ( IOobject diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianScheme.C b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianScheme.C index 20f20e80e1b4df8b11b79b96804819de65f402b7..27f420f72eeba9c31b0b1c91e72ca8afb0c16ca0 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianScheme.C +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianScheme.C @@ -194,7 +194,7 @@ gaussLaplacianScheme<Type, GType>::fvmLaplacian if (mesh.fluxRequired(vf.name())) { - fvm.faceFluxCorrectionPtr() = tfaceFluxCorrection.ptr(); + fvm.faceFluxCorrectionPtr(tfaceFluxCorrection.ptr()); } return tfvm; diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C index 1201bad1fe2f66ae24587653e2da1b8d49d94a6b..7d19f5b2656c2fb8c48e39e67aa6cb57466516f6 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C @@ -61,8 +61,10 @@ Foam::fv::gaussLaplacianScheme<Foam::Type, Foam::scalar>::fvmLaplacian \ { \ if (mesh.fluxRequired(vf.name())) \ { \ - fvm.faceFluxCorrectionPtr() = new \ - GeometricField<Type, fvsPatchField, surfaceMesh> \ + fvm.faceFluxCorrectionPtr() = std::make_unique \ + < \ + GeometricField<Type, fvsPatchField, surfaceMesh> \ + > \ ( \ gammaMagSf*this->tsnGradScheme_().correction(vf) \ ); \ diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.C b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.C index 8e032da8cc479c0795b1cbb7c5fbd95bb612e576..8de5e717cf8ae13d4733c4eb511b8f3d5e6fa99f 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.C +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.C @@ -35,9 +35,6 @@ License namespace Foam { - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - namespace fv { @@ -112,9 +109,6 @@ laplacianScheme<Type, GType>::fvcLaplacian // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace fv - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - } // End namespace Foam // ************************************************************************* // diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H index fe1eba20771e588b7d0f346f07c3f2ba2a6a4eba..ab8b82a211ae4b128c9466f5c900ee82239ee667 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H @@ -53,9 +53,8 @@ SourceFiles namespace Foam { -template<class Type> -class fvMatrix; - +// Forward Declarations +template<class Type> class fvMatrix; class fvMesh; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -72,19 +71,16 @@ class laplacianScheme : public refCount { - protected: - // Protected data + // Protected Data const fvMesh& mesh_; tmp<surfaceInterpolationScheme<GType>> tinterpGammaScheme_; tmp<snGradScheme<Type>> tsnGradScheme_; -private: - - // Private Member Functions + // Protected Member Functions //- No copy construct laplacianScheme(const laplacianScheme&) = delete; @@ -124,19 +120,25 @@ public: //- Construct from mesh and Istream laplacianScheme(const fvMesh& mesh, Istream& is) : - mesh_(mesh), - tinterpGammaScheme_(nullptr), - tsnGradScheme_(nullptr) + mesh_(mesh) { - tinterpGammaScheme_ = tmp<surfaceInterpolationScheme<GType>> - ( - surfaceInterpolationScheme<GType>::New(mesh, is) - ); - - tsnGradScheme_ = tmp<snGradScheme<Type>> - ( - snGradScheme<Type>::New(mesh, is) - ); + if (is.eof()) + { + tinterpGammaScheme_.reset(new linear<GType>(mesh)); + tsnGradScheme_.reset(new correctedSnGrad<Type>(mesh)); + } + else + { + tinterpGammaScheme_.reset + ( + surfaceInterpolationScheme<GType>::New(mesh, is) + ); + + tsnGradScheme_.reset + ( + snGradScheme<Type>::New(mesh, is) + ); + } } //- Construct from mesh, interpolation and snGradScheme schemes diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianScheme.C b/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianScheme.C index d0732bf12414e737e983563f026fb960ac864b67..44e554ad400a705d89ec7e3409296bbc805de612 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianScheme.C +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianScheme.C @@ -192,7 +192,7 @@ relaxedNonOrthoGaussLaplacianScheme<Type, GType>::fvmLaplacian const word corrName(tfaceFluxCorrection().name()); - tmp<SType> trelaxedCorrection(new SType(tfaceFluxCorrection())); + auto trelaxedCorrection = tmp<SType>::New(tfaceFluxCorrection()); const word oldName(corrName + "_0"); const scalar relax(vf.mesh().equationRelaxationFactor(oldName)); @@ -222,7 +222,7 @@ relaxedNonOrthoGaussLaplacianScheme<Type, GType>::fvmLaplacian if (mesh.fluxRequired(vf.name())) { - fvm.faceFluxCorrectionPtr() = trelaxedCorrection.ptr(); + fvm.faceFluxCorrectionPtr(trelaxedCorrection.ptr()); } return tfvm; diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianSchemes.C b/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianSchemes.C index 7aa0027ec98c39be9dd6a7e249fda1636e5644ec..662e909dd5095c1b86164aa9966a11b07e7b8c31 100644 --- a/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianSchemes.C +++ b/src/finiteVolume/finiteVolume/laplacianSchemes/relaxedNonOrthoGaussLaplacianScheme/relaxedNonOrthoGaussLaplacianSchemes.C @@ -66,7 +66,7 @@ fvmLaplacian \ const word corrName(tCorr().name()); \ tmp<SType> tfaceFluxCorrection(gammaMagSf*tCorr); \ \ - tmp<SType> trelaxedCorrection(new SType(tfaceFluxCorrection())); \ + auto trelaxedCorrection = tmp<SType>::New(tfaceFluxCorrection()); \ \ const word oldName(corrName + "_0"); \ const scalar relax(vf.mesh().equationRelaxationFactor(corrName)); \ @@ -98,7 +98,7 @@ fvmLaplacian \ \ if (mesh.fluxRequired(vf.name())) \ { \ - fvm.faceFluxCorrectionPtr() = trelaxedCorrection.ptr(); \ + fvm.faceFluxCorrectionPtr(trelaxedCorrection.ptr()); \ } \ } \ \ diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/relaxedSnGrad/relaxedSnGrad.C b/src/finiteVolume/finiteVolume/snGradSchemes/relaxedSnGrad/relaxedSnGrad.C index 0b018126770a811d634eab17d209b5e9491627e5..0506e7dc1a7b1b38e7c6d571643dfd26c2577c3c 100644 --- a/src/finiteVolume/finiteVolume/snGradSchemes/relaxedSnGrad/relaxedSnGrad.C +++ b/src/finiteVolume/finiteVolume/snGradSchemes/relaxedSnGrad/relaxedSnGrad.C @@ -61,7 +61,7 @@ Foam::fv::relaxedSnGrad<Type>::correction } // Return under/over-relaxed explicit correction field - tmp<SurfFieldType> trelaxedCorrection(new SurfFieldType(tcorrection())); + auto trelaxedCorrection = tmp<SurfFieldType>::New(tcorrection()); SurfFieldType& oldCorrection = obr.lookupObjectRef<SurfFieldType>(oldFieldName); diff --git a/src/finiteVolume/functionObjects/fieldSelections/fieldSelection/fieldSelection.C b/src/finiteVolume/functionObjects/fieldSelections/fieldSelection/fieldSelection.C index a570ebdebd061f0df161e1b1a3a7c750ca4cc4f4..f07e1afc6d096d4b1bd00fb3e02d95709bc7c9f3 100644 --- a/src/finiteVolume/functionObjects/fieldSelections/fieldSelection/fieldSelection.C +++ b/src/finiteVolume/functionObjects/fieldSelections/fieldSelection/fieldSelection.C @@ -136,7 +136,7 @@ bool Foam::functionObjects::fieldSelection::resetFieldFilters bool Foam::functionObjects::fieldSelection::read(const dictionary& dict) { - HashSet<wordRe> fields(0); + HashSet<wordRe> fields; dict.readEntry("fields", fields); return resetFieldFilters(fields); diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C index 6b15f83645ad712ad3820fe17e074193b5a0d217..254436784f3e1c4e492f68a249b335a9b81dc0f1 100644 --- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C +++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -369,8 +369,7 @@ Foam::fvMatrix<Type>::fvMatrix dimensions_(ds), source_(psi.size(), Zero), internalCoeffs_(psi.mesh().boundary().size()), - boundaryCoeffs_(psi.mesh().boundary().size()), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(psi.mesh().boundary().size()) { DebugInFunction << "Constructing fvMatrix<Type> for field " << psi_.name() << endl; @@ -410,19 +409,17 @@ Foam::fvMatrix<Type>::fvMatrix(const fvMatrix<Type>& fvm) dimensions_(fvm.dimensions_), source_(fvm.source_), internalCoeffs_(fvm.internalCoeffs_), - boundaryCoeffs_(fvm.boundaryCoeffs_), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(fvm.boundaryCoeffs_) { DebugInFunction << "Copying fvMatrix<Type> for field " << psi_.name() << endl; if (fvm.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, fvsPatchField, surfaceMesh> - ( - *(fvm.faceFluxCorrectionPtr_) - ); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *(fvm.faceFluxCorrectionPtr_) + ); } } @@ -438,8 +435,7 @@ Foam::fvMatrix<Type>::fvMatrix(const tmp<fvMatrix<Type>>& tmat) dimensions_(tmat().dimensions_), source_(tmat.constCast().source_, tmat.movable()), internalCoeffs_(tmat.constCast().internalCoeffs_, tmat.movable()), - boundaryCoeffs_(tmat.constCast().boundaryCoeffs_, tmat.movable()), - faceFluxCorrectionPtr_(nullptr) + boundaryCoeffs_(tmat.constCast().boundaryCoeffs_, tmat.movable()) { DebugInFunction << "Copy/move fvMatrix<Type> for field " << psi_.name() << endl; @@ -448,16 +444,15 @@ Foam::fvMatrix<Type>::fvMatrix(const tmp<fvMatrix<Type>>& tmat) { if (tmat.movable()) { - faceFluxCorrectionPtr_ = tmat().faceFluxCorrectionPtr_; - tmat().faceFluxCorrectionPtr_ = nullptr; + faceFluxCorrectionPtr_ = + std::move(tmat.constCast().faceFluxCorrectionPtr_); } - else + else if (tmat().faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, fvsPatchField, surfaceMesh> - ( - *(tmat().faceFluxCorrectionPtr_) - ); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *(tmat().faceFluxCorrectionPtr_) + ); } } @@ -473,7 +468,6 @@ Foam::fvMatrix<Type>::~fvMatrix() DebugInFunction << "Destroying fvMatrix<Type> for field " << psi_.name() << endl; - deleteDemandDrivenData(faceFluxCorrectionPtr_); subMatrices_.clear(); } @@ -894,13 +888,13 @@ void Foam::fvMatrix<Type>::transferFvMatrixCoeffs() template<class Type> Foam::lduPrimitiveMeshAssembly* Foam::fvMatrix<Type>::lduMeshPtr() { - const lduPrimitiveMeshAssembly* lduAssemMeshPtr = - psi_.mesh().thisDb().objectRegistry::template findObject + return + ( + psi_.mesh().thisDb().objectRegistry::template getObjectPtr < lduPrimitiveMeshAssembly - > (lduAssemblyName_); - - return const_cast<lduPrimitiveMeshAssembly*>(lduAssemMeshPtr); + > (lduAssemblyName_) + ); } @@ -1577,9 +1571,10 @@ void Foam::fvMatrix<Type>::operator=(const fvMatrix<Type>& fvmv) } else if (fvmv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, fvsPatchField, surfaceMesh> - (*fvmv.faceFluxCorrectionPtr_); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + *fvmv.faceFluxCorrectionPtr_ + ); } useImplicit_ = fvmv.useImplicit_; @@ -1631,8 +1626,7 @@ void Foam::fvMatrix<Type>::operator+=(const fvMatrix<Type>& fvmv) } else if (fvmv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = new - GeometricField<Type, fvsPatchField, surfaceMesh> + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> ( *fvmv.faceFluxCorrectionPtr_ ); @@ -1669,9 +1663,10 @@ void Foam::fvMatrix<Type>::operator-=(const fvMatrix<Type>& fvmv) } else if (fvmv.faceFluxCorrectionPtr_) { - faceFluxCorrectionPtr_ = - new GeometricField<Type, fvsPatchField, surfaceMesh> - (-*fvmv.faceFluxCorrectionPtr_); + faceFluxCorrectionPtr_ = std::make_unique<faceFluxFieldType> + ( + -*fvmv.faceFluxCorrectionPtr_ + ); } } @@ -2002,7 +1997,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::correction // Delete the faceFluxCorrection from the correction matrix // as it does not have a clear meaning or purpose - deleteDemandDrivenData(tAcorr.ref().faceFluxCorrectionPtr()); + tAcorr.ref().faceFluxCorrectionPtr(nullptr); return tAcorr; } @@ -2018,7 +2013,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::correction // Delete the faceFluxCorrection from the correction matrix // as it does not have a clear meaning or purpose - deleteDemandDrivenData(tAcorr.ref().faceFluxCorrectionPtr()); + tAcorr.ref().faceFluxCorrectionPtr(nullptr); return tAcorr; } @@ -2078,7 +2073,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator== ) { checkMethod(A, su, "=="); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += su.mesh().V()*su.field(); return tC; } @@ -2091,7 +2086,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator== ) { checkMethod(A, tsu(), "=="); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += tsu().mesh().V()*tsu().field(); tsu.clear(); return tC; @@ -2105,7 +2100,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator== ) { checkMethod(A, tsu(), "=="); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += tsu().mesh().V()*tsu().primitiveField(); tsu.clear(); return tC; @@ -2160,7 +2155,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator== ) { checkMethod(A, su, "=="); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += A.psi().mesh().V()*su.value(); return tC; } @@ -2206,7 +2201,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- const fvMatrix<Type>& A ) { - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().negate(); return tC; } @@ -2231,7 +2226,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, B, "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() += B; return tC; } @@ -2284,7 +2279,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, su, "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= su.mesh().V()*su.field(); return tC; } @@ -2297,7 +2292,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, tsu(), "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= tsu().mesh().V()*tsu().field(); tsu.clear(); return tC; @@ -2311,7 +2306,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, tsu(), "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= tsu().mesh().V()*tsu().primitiveField(); tsu.clear(); return tC; @@ -2366,7 +2361,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, su, "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= su.mesh().V()*su.field(); return tC; } @@ -2379,7 +2374,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, tsu(), "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= tsu().mesh().V()*tsu().field(); tsu.clear(); return tC; @@ -2393,7 +2388,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, tsu(), "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= tsu().mesh().V()*tsu().primitiveField(); tsu.clear(); return tC; @@ -2449,7 +2444,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, B, "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() -= B; return tC; } @@ -2503,7 +2498,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, su, "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += su.mesh().V()*su.field(); return tC; } @@ -2516,7 +2511,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, tsu(), "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += tsu().mesh().V()*tsu().field(); tsu.clear(); return tC; @@ -2530,7 +2525,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, tsu(), "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += tsu().mesh().V()*tsu().primitiveField(); tsu.clear(); return tC; @@ -2585,7 +2580,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, su, "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().negate(); tC.ref().source() -= su.mesh().V()*su.field(); return tC; @@ -2599,7 +2594,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, tsu(), "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().negate(); tC.ref().source() -= tsu().mesh().V()*tsu().field(); tsu.clear(); @@ -2614,7 +2609,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, tsu(), "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().negate(); tC.ref().source() -= tsu().mesh().V()*tsu().primitiveField(); tsu.clear(); @@ -2673,7 +2668,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, su, "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= su.value()*A.psi().mesh().V(); return tC; } @@ -2699,7 +2694,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator+ ) { checkMethod(A, su, "+"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() -= su.value()*A.psi().mesh().V(); return tC; } @@ -2725,7 +2720,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, su, "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().source() += su.value()*tC().psi().mesh().V(); return tC; } @@ -2751,7 +2746,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator- ) { checkMethod(A, su, "-"); - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref().negate(); tC.ref().source() -= su.value()*A.psi().mesh().V(); return tC; @@ -2779,7 +2774,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator* const fvMatrix<Type>& A ) { - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() *= dsf; return tC; } @@ -2791,7 +2786,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator* const fvMatrix<Type>& A ) { - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() *= tdsf; return tC; } @@ -2803,7 +2798,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator* const fvMatrix<Type>& A ) { - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() *= tvsf; return tC; } @@ -2851,7 +2846,7 @@ Foam::tmp<Foam::fvMatrix<Type>> Foam::operator* const fvMatrix<Type>& A ) { - tmp<fvMatrix<Type>> tC(new fvMatrix<Type>(A)); + auto tC = tmp<fvMatrix<Type>>::New(A); tC.ref() *= ds; return tC; } diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.H b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.H index c00236f7c9f8a5da6539e4fefb304872df54a5f9..78f18d22c3e97b8dc76dc7efc3928b50320a7f70 100644 --- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.H +++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.H @@ -172,7 +172,7 @@ private: FieldField<Field, Type> boundaryCoeffs_; //- Face flux field for non-orthogonal correction - mutable faceFluxFieldType* faceFluxCorrectionPtr_; + mutable std::unique_ptr<faceFluxFieldType> faceFluxCorrectionPtr_; protected: @@ -494,8 +494,7 @@ public: } //- Declare return type of the faceFluxCorrectionPtr() function - typedef GeometricField<Type, fvsPatchField, surfaceMesh> - *faceFluxFieldPtrType; + typedef std::unique_ptr<faceFluxFieldType> faceFluxFieldPtrType; //- Return pointer to face-flux non-orthogonal correction field faceFluxFieldPtrType& faceFluxCorrectionPtr() @@ -503,6 +502,12 @@ public: return faceFluxCorrectionPtr_; } + //- Set pointer to face-flux non-orthogonal correction field + void faceFluxCorrectionPtr(faceFluxFieldType* flux) + { + faceFluxCorrectionPtr_.reset(flux); + } + //- True if face-flux non-orthogonal correction field exists bool hasFaceFluxCorrection() const noexcept { diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C index 8fbd1150031b1d231bb0fdb1743087646e9cdce2..0a232e35b1ad501af43b83e939a70c528392f290 100644 --- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C +++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C @@ -68,7 +68,7 @@ Foam::SolverPerformance<Type> Foam::fvMatrix<Type>::solveSegregatedOrCoupled { regionName = psi_.mesh().name() + "::"; } - addProfiling(solve, "fvMatrix::solve." + regionName + psi_.name()); + addProfiling(solve, "fvMatrix::solve.", regionName, psi_.name()); if (debug) { @@ -363,8 +363,8 @@ Foam::SolverPerformance<Type> Foam::fvMatrix<Type>::solve() template<class Type> Foam::tmp<Foam::Field<Type>> Foam::fvMatrix<Type>::residual() const { - tmp<Field<Type>> tres(new Field<Type>(source_)); - Field<Type>& res = tres.ref(); + auto tres = tmp<Field<Type>>::New(source_); + auto& res = tres.ref(); addBoundarySource(res); diff --git a/src/finiteVolume/fvMatrices/fvScalarMatrix/fvScalarMatrix.C b/src/finiteVolume/fvMatrices/fvScalarMatrix/fvScalarMatrix.C index a8d87158f8f5ebe0bbf994dfa2b3008bc06f4221..c23bd6a6dd7a6d187c38a5bd9f0eecfe0dda67dc 100644 --- a/src/finiteVolume/fvMatrices/fvScalarMatrix/fvScalarMatrix.C +++ b/src/finiteVolume/fvMatrices/fvScalarMatrix/fvScalarMatrix.C @@ -72,7 +72,7 @@ Foam::fvMatrix<Foam::scalar>::solver { regionName = psi_.mesh().name() + "::"; } - addProfiling(solve, "fvMatrix::solve." + regionName + psi_.name()); + addProfiling(solve, "fvMatrix::solve.", regionName, psi_.name()); if (debug) { diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCECCellToCellStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCECCellToCellStencilObject.H index fa7ca9300aca8f89e5fc3e670c04efc8391b712e..a2d3e95c364852d9cd678c48360510241e641c4a 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCECCellToCellStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCECCellToCellStencilObject.H @@ -59,6 +59,14 @@ class centredCECCellToCellStencilObject >, public extendedCentredCellToCellStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCECCellToCellStencilObject + > MeshObject_type; public: @@ -72,12 +80,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCECCellToCellStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToCellStencil(CECCellToCellStencil(mesh)) {} diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCFCCellToCellStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCFCCellToCellStencilObject.H index 2f40ed966c27d7fc34d3faa674bfb3c919f70958..714aa57ad1bf7d09dc899c21ac51fe7295ce4809 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCFCCellToCellStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCFCCellToCellStencilObject.H @@ -59,6 +59,14 @@ class centredCFCCellToCellStencilObject >, public extendedCentredCellToCellStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCFCCellToCellStencilObject + > MeshObject_type; public: @@ -72,12 +80,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCFCCellToCellStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToCellStencil(CFCCellToCellStencil(mesh)) {} diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCPCCellToCellStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCPCCellToCellStencilObject.H index 4ce941cd889715646bd603ff0f928eace88aaff3..3bb38e4b5665eda632180ad8fcfd4445954e10ce 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCPCCellToCellStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToCell/MeshObjects/centredCPCCellToCellStencilObject.H @@ -59,11 +59,20 @@ class centredCPCCellToCellStencilObject >, public extendedCentredCellToCellStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCPCCellToCellStencilObject + > MeshObject_type; public: TypeName("centredCPCCellToCellStencil"); + // Constructors //- Construct from uncompacted cell stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCPCCellToCellStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToCellStencil(CPCCellToCellStencil(mesh)) {} diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCECCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCECCellToFaceStencilObject.H index ab7190817d2c4d215a9bcdcfeaed475bfc5f8851..b3d89d29d930fb630d5107e29bb7853b565f67a0 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCECCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCECCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class centredCECCellToFaceStencilObject >, public extendedCentredCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCECCellToFaceStencilObject + > MeshObject_type; public: TypeName("centredCECCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCECCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToFaceStencil(CECCellToFaceStencil(mesh)) { if (extendedCellToFaceStencil::debug) diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCFCCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCFCCellToFaceStencilObject.H index d370746fb174c94eb457a381ee57556084730189..121f618aaf84b2fa227bd74fc18d236ff4e5a5f1 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCFCCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCFCCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class centredCFCCellToFaceStencilObject >, public extendedCentredCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCFCCellToFaceStencilObject + > MeshObject_type; public: TypeName("centredCFCCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCFCCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToFaceStencil(CFCCellToFaceStencil(mesh)) { if (extendedCellToFaceStencil::debug) diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCPCCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCPCCellToFaceStencilObject.H index 97dc251d17bbc899e8168ba1325ce67aaa35c4e3..2c5b869bedc3fd91513942f1f0c19c1705b21b9c 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCPCCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredCPCCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class centredCPCCellToFaceStencilObject >, public extendedCentredCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCPCCellToFaceStencilObject + > MeshObject_type; public: TypeName("centredCPCCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCPCCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToFaceStencil(CPCCellToFaceStencil(mesh)) { if (extendedCellToFaceStencil::debug) diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredFECCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredFECCellToFaceStencilObject.H index 417c38026caae071cef9cc428fb3f5ff1355fbb8..05e68c6b3e2a50d1ad297bfbe59a9d9279284c9d 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredFECCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/centredFECCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class centredFECCellToFaceStencilObject >, public extendedCentredCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredFECCellToFaceStencilObject + > MeshObject_type; public: TypeName("centredFECCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredFECCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredCellToFaceStencil(FECCellToFaceStencil(mesh)) { if (extendedCellToFaceStencil::debug) diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/pureUpwindCFCCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/pureUpwindCFCCellToFaceStencilObject.H index 878c77b476b6ab95c280007de7c16a07246eea05..0cc9542fb58219f81958fffb6ff305e05c49d396 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/pureUpwindCFCCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/pureUpwindCFCCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class pureUpwindCFCCellToFaceStencilObject >, public extendedUpwindCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + pureUpwindCFCCellToFaceStencilObject + > MeshObject_type; public: TypeName("pureUpwindCFCCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - pureUpwindCFCCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedUpwindCellToFaceStencil(CFCCellToFaceStencil(mesh)) { if (extendedCellToFaceStencil::debug) diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCECCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCECCellToFaceStencilObject.H index 0eb9db494ba10fd25bd6e58b459bc232081b737c..701d1698f69daf413cbb2f0f4bcfa44794758c7a 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCECCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCECCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class upwindCECCellToFaceStencilObject >, public extendedUpwindCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + upwindCECCellToFaceStencilObject + > MeshObject_type; public: TypeName("upwindCECCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -74,12 +83,7 @@ public: const scalar minOpposedness ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - upwindCECCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedUpwindCellToFaceStencil ( CECCellToFaceStencil(mesh), diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCFCCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCFCCellToFaceStencilObject.H index c3505df95ae28f0dec2eda84b9896283beb0041d..a3cea19277cce346e50abeb3e855f36a18298ddb 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCFCCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCFCCellToFaceStencilObject.H @@ -59,11 +59,21 @@ class upwindCFCCellToFaceStencilObject >, public extendedUpwindCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + upwindCFCCellToFaceStencilObject + > MeshObject_type; + public: TypeName("upwindCFCCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -74,12 +84,7 @@ public: const scalar minOpposedness ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - upwindCFCCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedUpwindCellToFaceStencil ( CFCCellToFaceStencil(mesh), diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCPCCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCPCCellToFaceStencilObject.H index f2757a76627f24664a8d4bd4d5e1aec197422075..985ae89956145fa8512bec10c2695ed254d1f257 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCPCCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindCPCCellToFaceStencilObject.H @@ -59,11 +59,20 @@ class upwindCPCCellToFaceStencilObject >, public extendedUpwindCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + upwindCPCCellToFaceStencilObject + > MeshObject_type; public: TypeName("upwindCPCCellToFaceStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -74,12 +83,7 @@ public: const scalar minOpposedness ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - upwindCPCCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedUpwindCellToFaceStencil ( CPCCellToFaceStencil(mesh), diff --git a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindFECCellToFaceStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindFECCellToFaceStencilObject.H index 8468e763080623e6b314173e5b65f88ee6908014..97f69a1812601250ff1df45f1446f959d013d285 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindFECCellToFaceStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/cellToFace/MeshObjects/upwindFECCellToFaceStencilObject.H @@ -59,6 +59,14 @@ class upwindFECCellToFaceStencilObject >, public extendedUpwindCellToFaceStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + upwindFECCellToFaceStencilObject + > MeshObject_type; public: @@ -74,12 +82,7 @@ public: const scalar minOpposedness ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - upwindFECCellToFaceStencilObject - >(mesh), + MeshObject_type(mesh), extendedUpwindCellToFaceStencil ( FECCellToFaceStencil(mesh), diff --git a/src/finiteVolume/fvMesh/extendedStencil/faceToCell/MeshObjects/centredCFCFaceToCellStencilObject.H b/src/finiteVolume/fvMesh/extendedStencil/faceToCell/MeshObjects/centredCFCFaceToCellStencilObject.H index 4250e2e73e293951933863bf45ebf8d89f1c584c..8b04035ed1141ae66d76bd58db0b32a9ff57b08c 100644 --- a/src/finiteVolume/fvMesh/extendedStencil/faceToCell/MeshObjects/centredCFCFaceToCellStencilObject.H +++ b/src/finiteVolume/fvMesh/extendedStencil/faceToCell/MeshObjects/centredCFCFaceToCellStencilObject.H @@ -59,11 +59,20 @@ class centredCFCFaceToCellStencilObject >, public extendedCentredFaceToCellStencil { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + centredCFCFaceToCellStencilObject + > MeshObject_type; public: TypeName("centredCFCFaceToCellStencil"); + // Constructors //- Construct from uncompacted face stencil @@ -72,12 +81,7 @@ public: const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::TopologicalMeshObject, - centredCFCFaceToCellStencilObject - >(mesh), + MeshObject_type(mesh), extendedCentredFaceToCellStencil(CFCFaceToCellStencil(mesh)) {} diff --git a/src/finiteVolume/fvMesh/fvGeometryScheme/averageNeighbour/averageNeighbourFvGeometryScheme.C b/src/finiteVolume/fvMesh/fvGeometryScheme/averageNeighbour/averageNeighbourFvGeometryScheme.C index 8476a24df4498d03d34de992203a403f98eef31e..6cfef0e9448818082d09814b2e889d6e2311d877 100644 --- a/src/finiteVolume/fvMesh/fvGeometryScheme/averageNeighbour/averageNeighbourFvGeometryScheme.C +++ b/src/finiteVolume/fvMesh/fvGeometryScheme/averageNeighbour/averageNeighbourFvGeometryScheme.C @@ -272,8 +272,8 @@ Foam::averageNeighbourFvGeometryScheme::averageNeighbourCentres const labelList& nei = mesh_.faceNeighbour(); - tmp<pointField> tcc(new pointField(mesh_.nCells(), Zero)); - pointField& cc = tcc.ref(); + auto tcc = tmp<pointField>::New(mesh_.nCells(), Zero); + auto& cc = tcc.ref(); Field<solveScalar> cellWeights(mesh_.nCells(), Zero); @@ -382,8 +382,8 @@ Foam::averageNeighbourFvGeometryScheme::averageCentres const labelList& nei = mesh_.faceNeighbour(); - tmp<pointField> tnewFc(new pointField(faceCentres)); - pointField& newFc = tnewFc.ref(); + auto tnewFc = tmp<pointField>::New(faceCentres); + auto& newFc = tnewFc.ref(); // Internal faces for (label facei = 0; facei < mesh_.nInternalFaces(); facei++) diff --git a/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.C b/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.C index bfb3ebe215db8d565b2b03aaf51d451d181a81ec..efa5a01fd9e89b68d8fd6ff6bf206445476cf7aa 100644 --- a/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.C +++ b/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.C @@ -39,7 +39,7 @@ namespace Foam Foam::cellAspectRatio::cellAspectRatio(const polyMesh& mesh) : - MeshObject<polyMesh, Foam::MoveableMeshObject, cellAspectRatio>(mesh) + MeshObject_type(mesh) { calcAspectRatio(); } diff --git a/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.H b/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.H index ed0dd9ab3e5737b064970991027424c76d7750fc..071ac186cf8621804e32500534a6272b67291621 100644 --- a/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.H +++ b/src/finiteVolume/fvMesh/fvGeometryScheme/highAspectRatio/cellAspectRatio.H @@ -54,6 +54,16 @@ class cellAspectRatio public MeshObject<polyMesh, MoveableMeshObject, cellAspectRatio>, public scalarField { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + MoveableMeshObject, + cellAspectRatio + > MeshObject_type; + + // Private Member Functions //- Construct aspect ratio diff --git a/src/finiteVolume/fvMesh/fvMesh.C b/src/finiteVolume/fvMesh/fvMesh.C index 3b8de62d6a705ccc9f3af48db1d6717667368b22..b55557f6be0dd236e04aae09da87794cc6c30753 100644 --- a/src/finiteVolume/fvMesh/fvMesh.C +++ b/src/finiteVolume/fvMesh/fvMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017,2022 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -219,22 +219,30 @@ void Foam::fvMesh::storeOldVol(const scalarField& V) } -void Foam::fvMesh::clearOutLocal() +void Foam::fvMesh::clearOutLocal(const bool isMeshUpdate) { clearGeom(); surfaceInterpolation::clearOut(); - clearAddressing(); + clearAddressing(isMeshUpdate); // Clear mesh motion flux - deleteDemandDrivenData(phiPtr_); + phiPtr_.reset(nullptr); } -void Foam::fvMesh::clearOut() +void Foam::fvMesh::clearOut(const bool isMeshUpdate) { - clearOutLocal(); - polyMesh::clearOut(); + clearOutLocal(isMeshUpdate); + + polyMesh::clearOut(isMeshUpdate); +} + + +void Foam::fvMesh::clearMeshPhi() +{ + // Clear mesh motion flux + phiPtr_.reset(nullptr); } @@ -306,7 +314,7 @@ bool Foam::fvMesh::init(const bool doInit) ( rio, *this, - dimensionedScalar(dimVol, Zero) + dimensionedScalar(dimVol, Foam::zero{}) ); // Set the moving flag early in case demand-driven geometry @@ -324,11 +332,14 @@ bool Foam::fvMesh::init(const bool doInit) DebugInFunction << "Detected meshPhi: " << rio.objectRelPath() << nl; - phiPtr_ = new surfaceScalarField + // Clear mesh motion flux + phiPtr_.reset(nullptr); + + phiPtr_ = std::make_unique<surfaceScalarField> ( rio, *this, - dimensionedScalar(dimVol/dimTime, Zero) + dimensionedScalar(dimVol/dimTime, Foam::zero{}) ); // Set the moving flag early in case demand-driven geometry @@ -942,7 +953,7 @@ void Foam::fvMesh::movePoints(const pointField& p) DebugInFunction<< "Creating initial meshPhi field" << endl; // Create mesh motion flux - phiPtr_ = new surfaceScalarField + phiPtr_ = std::make_unique<surfaceScalarField> ( IOobject ( @@ -954,7 +965,7 @@ void Foam::fvMesh::movePoints(const pointField& p) IOobject::NO_REGISTER ), *this, - dimensionedScalar(dimVolume/dimTime, Zero) + dimensionedScalar(dimVolume/dimTime, Foam::zero{}) ); } else @@ -1046,10 +1057,10 @@ void Foam::fvMesh::updateMesh(const mapPolyMesh& mpm) if (phiPtr_) { // Mesh moving and topology change. Recreate meshPhi - deleteDemandDrivenData(phiPtr_); + phiPtr_.reset(nullptr); // Create mesh motion flux - phiPtr_ = new surfaceScalarField + phiPtr_ = std::make_unique<surfaceScalarField> ( IOobject ( @@ -1061,7 +1072,7 @@ void Foam::fvMesh::updateMesh(const mapPolyMesh& mpm) IOobject::NO_REGISTER ), *this, - dimensionedScalar(dimVolume/dimTime, Zero) + dimensionedScalar(dimVolume/dimTime, Foam::zero{}) ); } diff --git a/src/finiteVolume/fvMesh/fvMesh.H b/src/finiteVolume/fvMesh/fvMesh.H index 869016e6a5db18d2e64731353b361d9ae0a8576b..a53d90899bc74529851508537499e6a1bd467e0c 100644 --- a/src/finiteVolume/fvMesh/fvMesh.H +++ b/src/finiteVolume/fvMesh/fvMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017,2022 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -90,13 +90,13 @@ class fvMesh { protected: - // Private data + // Private Data //- Boundary mesh fvBoundaryMesh boundary_; - // Demand-driven data + // Demand-Driven Data mutable fvMeshLduAddressing* lduPtr_; @@ -128,7 +128,7 @@ protected: mutable slicedSurfaceVectorField* CfPtr_; //- Face motion fluxes - mutable surfaceScalarField* phiPtr_; + mutable std::unique_ptr<surfaceScalarField> phiPtr_; // Private Member Functions @@ -149,7 +149,7 @@ protected: void clearAddressing(const bool isMeshUpdate = false); //- Clear local-only storage (geometry, addressing etc) - void clearOutLocal(); + void clearOutLocal(const bool isMeshUpdate = false); //- Preserve old volume(s) void storeOldVol(const scalarField&); @@ -495,7 +495,7 @@ public: // Edit //- Clear all geometry and addressing - void clearOut(); + void clearOut(const bool isMeshUpdate = false); //- Update mesh corresponding to the given map virtual void updateMesh(const mapPolyMesh& mpm); @@ -517,7 +517,10 @@ public: //- these fvPatches. void removeFvBoundary(); - //- Return cell face motion fluxes (or null) + //- Clear cell face motion fluxes + void clearMeshPhi(); + + //- Return cell face motion fluxes, if any (can be nullptr) refPtr<surfaceScalarField> setPhi(); //- Return old-time cell volumes diff --git a/src/finiteVolume/fvMesh/fvMeshGeometry.C b/src/finiteVolume/fvMesh/fvMeshGeometry.C index e7afa733b174673484c3c668121b95b92214dcad..57e83225127746c8e7144467e849584363360d16 100644 --- a/src/finiteVolume/fvMesh/fvMeshGeometry.C +++ b/src/finiteVolume/fvMesh/fvMeshGeometry.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017,2022 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -376,25 +376,22 @@ Foam::tmp<Foam::surfaceVectorField> Foam::fvMesh::delta() const { DebugInFunction << "Calculating face deltas" << endl; - tmp<surfaceVectorField> tdelta + auto tdelta = tmp<surfaceVectorField>::New ( - new surfaceVectorField + IOobject ( - IOobject - ( - "delta", - pointsInstance(), - meshSubDir, - *this, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "delta", + pointsInstance(), + meshSubDir, *this, - dimLength - ) + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + *this, + dimLength ); - surfaceVectorField& delta = tdelta.ref(); + auto& delta = tdelta.ref(); delta.setOriented(); const volVectorField& C = this->C(); @@ -406,7 +403,7 @@ Foam::tmp<Foam::surfaceVectorField> Foam::fvMesh::delta() const delta[facei] = C[neighbour[facei]] - C[owner[facei]]; } - surfaceVectorField::Boundary& deltabf = delta.boundaryFieldRef(); + auto& deltabf = delta.boundaryFieldRef(); forAll(deltabf, patchi) { @@ -430,7 +427,7 @@ const Foam::surfaceScalarField& Foam::fvMesh::phi() const // mesh motion fluxes if the time has been incremented if (!time().subCycling() && phiPtr_->timeIndex() != time().timeIndex()) { - (*phiPtr_) = dimensionedScalar(dimVolume/dimTime, Zero); + (*phiPtr_) = dimensionedScalar(dimVolume/dimTime, Foam::zero{}); } phiPtr_->setOriented(); @@ -441,17 +438,12 @@ const Foam::surfaceScalarField& Foam::fvMesh::phi() const Foam::refPtr<Foam::surfaceScalarField> Foam::fvMesh::setPhi() { - if (!phiPtr_) - { - return nullptr; - } - else - { - // Return non-const reference - refPtr<surfaceScalarField> p; - p.ref(*phiPtr_); - return p; - } + refPtr<surfaceScalarField> phiref; + + // Return non-const reference, or nullptr if not available + phiref.ref(phiPtr_.get()); + + return phiref; } diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvBoundaryMeshMapper.H b/src/finiteVolume/fvMesh/fvMeshMapper/fvBoundaryMeshMapper.H index e533354e4d137fe772eeaa91a12cd817b9fc0149..266d104958f39879aba6526f90a081c56891d6d4 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvBoundaryMeshMapper.H +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvBoundaryMeshMapper.H @@ -31,8 +31,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef fvBoundaryMeshMapper_H -#define fvBoundaryMeshMapper_H +#ifndef Foam_fvBoundaryMeshMapper_H +#define Foam_fvBoundaryMeshMapper_H #include "PtrList.H" #include "fvPatchMapper.H" diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvMeshMapper.H b/src/finiteVolume/fvMesh/fvMeshMapper/fvMeshMapper.H index 671a8cb59db3335aa4beb2146c0737eb955c4cfe..6e9deeefbfd96ebe8d8b29d2dfb4d0db7ac30cca 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvMeshMapper.H +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvMeshMapper.H @@ -34,8 +34,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef fvMeshMapper_H -#define fvMeshMapper_H +#ifndef Foam_fvMeshMapper_H +#define Foam_fvMeshMapper_H #include "faceMapper.H" #include "cellMapper.H" @@ -47,7 +47,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes +// Forward Declarations class fvMesh; class mapPolyMesh; @@ -57,7 +57,7 @@ class mapPolyMesh; class fvMeshMapper { - // Private data + // Private Data //- Reference to mesh const fvMesh& mesh_; diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.C b/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.C index 071c3890ad04f3ba8a2d770532d947474e161626..ce16d5ce4ed7bb3be80cfc864950aa8b4ab4194c 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.C +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,7 +32,6 @@ License #include "fvMesh.H" #include "mapPolyMesh.H" #include "faceMapper.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -41,7 +40,7 @@ void Foam::fvPatchMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ ) { @@ -63,14 +62,14 @@ void Foam::fvPatchMapper::calcAddressing() const if (direct()) { // Direct mapping - slice to size - directAddrPtr_ = new labelList + directAddrPtr_ = std::make_unique<labelList> ( patch_.patchSlice ( static_cast<const labelList&>(faceMap_.directAddressing()) ) ); - labelList& addr = *directAddrPtr_; + auto& addr = *directAddrPtr_; // Adjust mapping to manage hits into other patches and into // internal @@ -106,26 +105,25 @@ void Foam::fvPatchMapper::calcAddressing() const else { // Interpolative mapping - interpolationAddrPtr_ = - new labelListList - ( - patch_.patchSlice(faceMap_.addressing()) - ); - labelListList& addr = *interpolationAddrPtr_; + interpAddrPtr_ = std::make_unique<labelListList> + ( + patch_.patchSlice(faceMap_.addressing()) + ); + auto& addr = *interpAddrPtr_; - weightsPtr_ = - new scalarListList - ( - patch_.patchSlice(faceMap_.weights()) - ); - scalarListList& w = *weightsPtr_; + weightsPtr_ = std::make_unique<scalarListList> + ( + patch_.patchSlice(faceMap_.weights()) + ); + auto& wght = *weightsPtr_; // Adjust mapping to manage hits into other patches and into // internal + forAll(addr, facei) { - labelList& curAddr = addr[facei]; - scalarList& curW = w[facei]; + auto& curAddr = addr[facei]; + auto& curWght = wght[facei]; if ( @@ -142,44 +140,42 @@ void Foam::fvPatchMapper::calcAddressing() const else { // Need to recalculate weights to exclude hits into internal - labelList newAddr(curAddr.size()); - scalarField newWeights(curAddr.size()); label nActive = 0; scalar sumWeight = 0; - forAll(curAddr, lfI) + forAll(curAddr, i) { if ( - curAddr[lfI] >= oldPatchStart - && curAddr[lfI] < oldPatchEnd + curAddr[i] >= oldPatchStart + && curAddr[i] < oldPatchEnd ) { - newAddr[nActive] = curAddr[lfI] - oldPatchStart; - newWeights[nActive] = curW[lfI]; + curAddr[nActive] = curAddr[i] - oldPatchStart; + curWght[nActive] = curWght[i]; - sumWeight += curW[lfI]; + sumWeight += curWght[i]; ++nActive; } } - newAddr.resize(nActive); - newWeights.resize(nActive); + // Reset addressing and weights + curAddr.resize(nActive); + curWght.resize(nActive); // Re-scale the weights - if (nActive > 0) + if (nActive) { - newWeights /= sumWeight; + for (auto& w : curWght) + { + w /= sumWeight; + } } else { hasUnmapped_ = true; } - - // Reset addressing and weights - curAddr = newAddr; - curW = newWeights; } } @@ -200,13 +196,13 @@ void Foam::fvPatchMapper::calcAddressing() const } -void Foam::fvPatchMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - hasUnmapped_ = false; -} +// void Foam::fvPatchMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// hasUnmapped_ = false; +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -220,19 +216,14 @@ Foam::fvPatchMapper::fvPatchMapper patch_(patch), faceMap_(faceMap), sizeBeforeMapping_(faceMap.oldPatchSizes()[patch_.index()]), - hasUnmapped_(false), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr) + hasUnmapped_(false) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::fvPatchMapper::~fvPatchMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -264,12 +255,12 @@ const Foam::labelListList& Foam::fvPatchMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.H b/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.H index 511cae83fe4b513ed04625f9cd6461d17e93d955..babc8d2ac73940f7b59a20ed868c9b637ce6817f 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.H +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvPatchMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef fvPatchMapper_H -#define fvPatchMapper_H +#ifndef Foam_fvPatchMapper_H +#define Foam_fvPatchMapper_H #include "fvPatchFieldMapper.H" #include "faceMapper.H" @@ -47,7 +48,7 @@ SourceFiles namespace Foam { -// Forward declaration of classes +// Forward Declarations class fvPatch; class mapPolyMesh; @@ -71,18 +72,18 @@ class fvPatchMapper const label sizeBeforeMapping_; - // Demand-driven private data + // Demand-Driven Data mutable bool hasUnmapped_; //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; // Private Member Functions @@ -97,14 +98,9 @@ class fvPatchMapper //- Calculate addressing for mapping with inserted cells void calcAddressing() const; - //- Clear out local storage - void clearOut(); - public: - // Static data members - // Constructors //- Construct from mappers @@ -152,7 +148,6 @@ public: //- Return interpolation weights virtual const scalarListList& weights() const; - }; diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.C b/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.C index a03873f01a63a9ece8aa92ea8dfb06da42f2aefc..6767d10fa1844864eca40fc698d780e010fa2870 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.C +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,7 +30,6 @@ License #include "fvMesh.H" #include "mapPolyMesh.H" #include "faceMapper.H" -#include "demandDrivenData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -39,9 +38,9 @@ void Foam::fvSurfaceMapper::calcAddressing() const if ( directAddrPtr_ - || interpolationAddrPtr_ + || interpAddrPtr_ || weightsPtr_ - || insertedObjectLabelsPtr_ + || insertedObjectsPtr_ ) { FatalErrorInFunction @@ -57,12 +56,11 @@ void Foam::fvSurfaceMapper::calcAddressing() const if (direct()) { // Direct mapping - slice to size - directAddrPtr_ = - new labelList - ( - labelList::subList(faceMap_.directAddressing(), size()) - ); - labelList& addr = *directAddrPtr_; + directAddrPtr_ = std::make_unique<labelList> + ( + labelList::subList(faceMap_.directAddressing(), size()) + ); + auto& addr = *directAddrPtr_; // Adjust for creation of an internal face from a boundary face forAll(addr, facei) @@ -76,71 +74,64 @@ void Foam::fvSurfaceMapper::calcAddressing() const else { // Interpolative mapping - slice to size - interpolationAddrPtr_ = - new labelListList - ( - labelListList::subList(faceMap_.addressing(), size()) - ); - labelListList& addr = *interpolationAddrPtr_; - - weightsPtr_ = - new scalarListList - ( - scalarListList::subList(faceMap_.weights(), size()) - ); - scalarListList& w = *weightsPtr_; + interpAddrPtr_ = std::make_unique<labelListList> + ( + labelListList::subList(faceMap_.addressing(), size()) + ); + auto& addr = *interpAddrPtr_; + + weightsPtr_ = std::make_unique<scalarListList> + ( + scalarListList::subList(faceMap_.weights(), size()) + ); + auto& wght = *weightsPtr_; // Adjust for creation of an internal face from a boundary face forAll(addr, facei) { if (max(addr[facei]) >= oldNInternal) { - addr[facei] = labelList(1, Zero); - w[facei] = scalarList(1, scalar(1)); + addr[facei] = labelList(1, Foam::zero{}); + wght[facei] = scalarList(1, scalar(1)); } } } // Inserted objects + insertedObjectsPtr_ = std::make_unique<labelList>(); + auto& inserted = *insertedObjectsPtr_; + // If there are, assemble the labels - if (insertedObjects()) + if (faceMap_.insertedObjects()) { const labelList& insFaces = faceMap_.insertedObjectLabels(); - insertedObjectLabelsPtr_ = new labelList(insFaces.size()); - labelList& ins = *insertedObjectLabelsPtr_; - - label nIns = 0; + inserted.resize(insFaces.size()); - forAll(insFaces, facei) + label count = 0; + for (const label facei : insFaces) { // If the face is internal, keep it here - if (insFaces[facei] < size()) + if (facei < size()) { - ins[nIns] = insFaces[facei]; - nIns++; + inserted[count] = facei; + ++count; } } - ins.setSize(nIns); - } - else - { - // No inserted objects - insertedObjectLabelsPtr_ = new labelList(0); + inserted.resize(count); } } -void Foam::fvSurfaceMapper::clearOut() -{ - deleteDemandDrivenData(directAddrPtr_); - deleteDemandDrivenData(interpolationAddrPtr_); - deleteDemandDrivenData(weightsPtr_); - - deleteDemandDrivenData(insertedObjectLabelsPtr_); -} +// void Foam::fvSurfaceMapper::clearOut() +// { +// directAddrPtr_.reset(nullptr); +// interpAddrPtr_.reset(nullptr); +// weightsPtr_.reset(nullptr); +// insertedObjectsPtr_.reset(nullptr); +// } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -148,24 +139,18 @@ void Foam::fvSurfaceMapper::clearOut() Foam::fvSurfaceMapper::fvSurfaceMapper ( const fvMesh& mesh, - const faceMapper& fMapper + const faceMapper& mapper ) : mesh_(mesh), - faceMap_(fMapper), - directAddrPtr_(nullptr), - interpolationAddrPtr_(nullptr), - weightsPtr_(nullptr), - insertedObjectLabelsPtr_(nullptr) + faceMap_(mapper) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::fvSurfaceMapper::~fvSurfaceMapper() -{ - clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -197,12 +182,12 @@ const Foam::labelListList& Foam::fvSurfaceMapper::addressing() const << abort(FatalError); } - if (!interpolationAddrPtr_) + if (!interpAddrPtr_) { calcAddressing(); } - return *interpolationAddrPtr_; + return *interpAddrPtr_; } @@ -226,22 +211,13 @@ const Foam::scalarListList& Foam::fvSurfaceMapper::weights() const const Foam::labelList& Foam::fvSurfaceMapper::insertedObjectLabels() const { - if (!insertedObjectLabelsPtr_) + if (!insertedObjectsPtr_) { calcAddressing(); } - return *insertedObjectLabelsPtr_; + return *insertedObjectsPtr_; } -// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * // - - -// * * * * * * * * * * * * * * * Friend Functions * * * * * * * * * * * * * // - - -// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * // - - // ************************************************************************* // diff --git a/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.H b/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.H index f2f1a0381ce0903f5d824130d5bc530d1461f464..56b88cfabb0b2b2d1936b8a8014cb9d598bb7ec7 100644 --- a/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.H +++ b/src/finiteVolume/fvMesh/fvMeshMapper/fvSurfaceMapper.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,15 +28,15 @@ Class Foam::fvSurfaceMapper Description - FV surface mapper. + A finiteVolume surface mapper. SourceFiles fvSurfaceMapper.C \*---------------------------------------------------------------------------*/ -#ifndef fvSurfaceMapper_H -#define fvSurfaceMapper_H +#ifndef Foam_fvSurfaceMapper_H +#define Foam_fvSurfaceMapper_H #include "morphFieldMapper.H" #include "fvMesh.H" @@ -48,8 +49,6 @@ SourceFiles namespace Foam { -// Forward declaration of classes - /*---------------------------------------------------------------------------*\ Class fvSurfaceMapper Declaration \*---------------------------------------------------------------------------*/ @@ -58,7 +57,7 @@ class fvSurfaceMapper : public morphFieldMapper { - // Private data + // Private Data //- Reference to mesh const fvMesh& mesh_; @@ -67,19 +66,19 @@ class fvSurfaceMapper const faceMapper& faceMap_; - // Demand-driven private data + // Demand-Driven Data //- Direct addressing (only one for of addressing is used) - mutable labelList* directAddrPtr_; + mutable std::unique_ptr<labelList> directAddrPtr_; //- Interpolated addressing (only one for of addressing is used) - mutable labelListList* interpolationAddrPtr_; + mutable std::unique_ptr<labelListList> interpAddrPtr_; //- Interpolation weights - mutable scalarListList* weightsPtr_; + mutable std::unique_ptr<scalarListList> weightsPtr_; //- Inserted faces - mutable labelList* insertedObjectLabelsPtr_; + mutable std::unique_ptr<labelList> insertedObjectsPtr_; @@ -95,9 +94,6 @@ class fvSurfaceMapper //- Calculate addressing void calcAddressing() const; - //- Clear out local storage - void clearOut(); - public: @@ -107,7 +103,7 @@ public: fvSurfaceMapper ( const fvMesh& mesh, - const faceMapper& fMapper + const faceMapper& mapper ); diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C index de5d2dfed045681f8dc81026a5bc6c788a066976..2f10400289bc4aacfc5c0910c4de4b4dae6e65aa 100644 --- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C +++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -174,7 +174,7 @@ void Foam::fvMeshSubset::doCoupledPatches if (syncPar && UPstream::parRun()) { - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send face usage across processor patches if (!nCellsUsingFace.empty()) @@ -569,7 +569,8 @@ void Foam::fvMeshSubset::reset(const Foam::zero) ); } - newSubMesh.addFvPatches(newPatches); + // Add patches - make sure we don't trigger any parallel side effects + newSubMesh.addFvPatches(newPatches, false); } diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetProxy.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetProxy.C index 302357e8ba85092f5e24812f4fe41f37a7620ccc..1e6f080cd997585e546a69dd877217750cae06cb 100644 --- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetProxy.C +++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetProxy.C @@ -160,7 +160,7 @@ bool Foam::fvMeshSubsetProxy::correct(bool verbose) Info<< "Subsetting mesh based on cellSet " << name_ << endl; } - cellSet cset(baseMesh_, name_); + cellSet cset(baseMesh_, name_, IOobject::NO_REGISTER); selectedCells.resize(nCells); for (const label idx : cset) diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetTemplates.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetTemplates.C index 8d5da86172a61ad7f7a20309100f987b6885a8ea..7936eaeb1a40962874d890a1d06bc02ad0ca9bdc 100644 --- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetTemplates.C +++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubsetTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -67,7 +67,7 @@ Foam::fvMeshSubset::interpolate new emptyFvPatchField<Type> ( sMesh.boundary()[patchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -80,7 +80,7 @@ Foam::fvMeshSubset::interpolate ( fvPatchFieldBase::calculatedType(), sMesh.boundary()[patchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -159,7 +159,7 @@ Foam::fvMeshSubset::interpolate ( vf.boundaryField()[basePatchId], subPatch, - result(), + result.internalField(), mapper ) ); @@ -248,7 +248,7 @@ Foam::fvMeshSubset::interpolate new emptyFvsPatchField<Type> ( sMesh.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null() + fvsPatchField<Type>::Internal::null() ) ); } @@ -261,7 +261,7 @@ Foam::fvMeshSubset::interpolate ( fvsPatchFieldBase::calculatedType(), sMesh.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null() + fvsPatchField<Type>::Internal::null() ) ); } @@ -435,7 +435,7 @@ Foam::fvMeshSubset::interpolate new emptyPointPatchField<Type> ( sMesh.boundary()[patchi], - DimensionedField<Type, pointMesh>::null() + pointPatchField<Type>::Internal::null() ) ); } @@ -448,7 +448,7 @@ Foam::fvMeshSubset::interpolate ( pointPatchFieldBase::calculatedType(), sMesh.boundary()[patchi], - DimensionedField<Type, pointMesh>::null() + pointPatchField<Type>::Internal::null() ) ); } @@ -493,11 +493,8 @@ Foam::fvMeshSubset::interpolate const labelList& meshPoints = basePatch.meshPoints(); // Make addressing from mesh to patch point - Map<label> meshPointMap(2*meshPoints.size()); - forAll(meshPoints, localI) - { - meshPointMap.insert(meshPoints[localI], localI); - } + Map<label> meshPointMap(invertToMap(meshPoints)); + // Find which subpatch points originate from which patch point const pointPatch& subPatch = sMesh.boundary()[patchi]; @@ -515,7 +512,7 @@ Foam::fvMeshSubset::interpolate if (iter.good()) { - directAddressing[localI] = *iter; + directAddressing[localI] = iter.val(); } } @@ -526,7 +523,7 @@ Foam::fvMeshSubset::interpolate ( vf.boundaryField()[patchMap[patchi]], subPatch, - result(), + result.internalField(), directPointPatchFieldMapper(directAddressing) ) ); diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C index a8eccd2c9fc1336bd5f445a1d18670939ae8f000..af2cb8a4ed0281f9a2b9516c6a5c73393b07241a 100644 --- a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C @@ -64,8 +64,8 @@ Foam::tmp<Foam::vectorField> Foam::cyclicFvPatch::delta() const const vectorField patchD(coupledFvPatch::delta()); const vectorField nbrPatchD(neighbFvPatch().coupledFvPatch::delta()); - tmp<vectorField> tpdv(new vectorField(patchD.size())); - vectorField& pdv = tpdv.ref(); + auto tpdv = tmp<vectorField>::New(patchD.size()); + auto& pdv = tpdv.ref(); // To the transformation if necessary if (parallel()) diff --git a/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMesh.H b/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMesh.H index cdde0dc1870ab00dc4415a117f20964780df66e3..7e7e9aa1b9dca84b4ba237f9cfda6b9863a67ad4 100644 --- a/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMesh.H +++ b/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMesh.H @@ -29,7 +29,7 @@ Class Description fvMesh as subset of other mesh. Consists of one cell and all original - bounday faces. Useful when manipulating boundary data. Single internal + boundary faces. Useful when manipulating boundary data. Single internal cell only needed to be able to manipulate in a standard way. SourceFiles @@ -38,8 +38,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef singleCellFvMesh_H -#define singleCellFvMesh_H +#ifndef Foam_singleCellFvMesh_H +#define Foam_singleCellFvMesh_H #include "fvPatchFieldMapper.H" #include "fvMesh.H" @@ -58,8 +58,9 @@ class singleCellFvMesh : public fvMesh { - // Private data + // Private Data + //- Fine patch face to agglomeration index addressing const labelListIOList patchFaceAgglomeration_; //- From patch faces back to agglomeration or fine mesh @@ -179,36 +180,45 @@ public: // Member Functions - bool agglomerate() const + bool agglomerate() const noexcept { - return patchFaceAgglomeration_.size() > 0; + return !patchFaceAgglomeration_.empty(); + } + + //- Fine patch face to agglomeration index addressing + const labelListList& patchFaceAgglomeration() const noexcept + { + return patchFaceAgglomeration_; } //- From patchFace on this back to original mesh or agglomeration - const labelListList& patchFaceMap() const + const labelListList& patchFaceMap() const noexcept { return patchFaceMap_; } //- From point on this back to original mesh - const labelList& pointMap() const + const labelList& pointMap() const noexcept { return pointMap_; } //- From face on original mesh to face on this - const labelList& reverseFaceMap() const + const labelList& reverseFaceMap() const noexcept { return reverseFaceMap_; } //- From point on original mesh to point on this (or -1 for removed //- points) - const labelList& reversePointMap() const + const labelList& reversePointMap() const noexcept { return reversePointMap_; } + //- Interpolate for overset (unused) + using fvMesh::interpolate; + //- Map volField. Internal field set to average, patch fields straight //- copies. template<class Type> @@ -217,7 +227,6 @@ public: ( const GeometricField<Type, fvPatchField, volMesh>& ) const; - }; diff --git a/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMeshInterpolate.C b/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMeshInterpolate.C index 767a08ff88ba1d858ade866d249217cfa65bc447..eb9e66b4fc46bd8f9a93b9edd6c5e029597f2e49 100644 --- a/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMeshInterpolate.C +++ b/src/finiteVolume/fvMesh/singleCellFvMesh/singleCellFvMeshInterpolate.C @@ -30,38 +30,18 @@ License #include "directFvPatchFieldMapper.H" #include "Time.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> -tmp<GeometricField<Type, fvPatchField, volMesh>> singleCellFvMesh::interpolate +Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>> +Foam::singleCellFvMesh::interpolate ( const GeometricField<Type, fvPatchField, volMesh>& vf ) const { // 1. Create the complete field with dummy patch fields - PtrList<fvPatchField<Type>> patchFields(vf.boundaryField().size()); - - forAll(patchFields, patchi) - { - patchFields.set - ( - patchi, - fvPatchField<Type>::New - ( - fvPatchFieldBase::calculatedType(), - boundary()[patchi], - DimensionedField<Type, volMesh>::null() - ) - ); - } - // Create the complete field from the pieces - tmp<GeometricField<Type, fvPatchField, volMesh>> tresF + tmp<GeometricField<Type, fvPatchField, volMesh>> tresult ( new GeometricField<Type, fvPatchField, volMesh> ( @@ -74,19 +54,18 @@ tmp<GeometricField<Type, fvPatchField, volMesh>> singleCellFvMesh::interpolate IOobject::NO_WRITE ), *this, + Type(gAverage(vf.primitiveField())), vf.dimensions(), - Field<Type>(1, gAverage(vf)), - patchFields + fvPatchFieldBase::calculatedType() ) ); - GeometricField<Type, fvPatchField, volMesh>& resF = tresF.ref(); + auto& result = tresult.ref(); // 2. Change the fvPatchFields to the correct type using a mapper // constructor (with reference to the now correct internal field) - typename GeometricField<Type, fvPatchField, volMesh>:: - Boundary& bf = resF.boundaryFieldRef(); + auto& bf = result.boundaryFieldRef(); if (agglomerate()) { @@ -117,7 +96,7 @@ tmp<GeometricField<Type, fvPatchField, volMesh>> singleCellFvMesh::interpolate ( vf.boundaryField()[patchi], boundary()[patchi], - resF(), + result.internalField(), agglomPatchFieldMapper(coarseToFine, coarseWeights) ) ); @@ -136,19 +115,15 @@ tmp<GeometricField<Type, fvPatchField, volMesh>> singleCellFvMesh::interpolate ( vf.boundaryField()[patchi], boundary()[patchi], - resF(), + result.internalField(), directFvPatchFieldMapper(map) ) ); } } - return tresF; + return tresult; } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - // ************************************************************************* // diff --git a/src/finiteVolume/fvMesh/wallDist/patchDistMethods/Poisson/PoissonPatchDistMethod.C b/src/finiteVolume/fvMesh/wallDist/patchDistMethods/Poisson/PoissonPatchDistMethod.C index 5984f960c7cdfeebbda4fb1f956989dc3cd88ed8..7141a428d3d82a12a748f12335026db4baf9c4a1 100644 --- a/src/finiteVolume/fvMesh/wallDist/patchDistMethods/Poisson/PoissonPatchDistMethod.C +++ b/src/finiteVolume/fvMesh/wallDist/patchDistMethods/Poisson/PoissonPatchDistMethod.C @@ -81,23 +81,16 @@ bool Foam::patchDistMethods::Poisson::correct { if (!tyPsi_) { - tyPsi_ = tmp<volScalarField> + tyPsi_ = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "yPsi", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(sqr(dimLength), Zero), - y.boundaryFieldRef().types() - ) + "yPsi", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(sqr(dimLength), Zero), + y.boundaryFieldRef().types() ); } - volScalarField& yPsi = tyPsi_.ref(); + auto& yPsi = tyPsi_.ref(); solve(fvm::laplacian(yPsi) == dimensionedScalar("1", dimless, -1.0)); diff --git a/src/finiteVolume/fvMesh/wallDist/patchDistMethods/advectionDiffusion/advectionDiffusionPatchDistMethod.C b/src/finiteVolume/fvMesh/wallDist/patchDistMethods/advectionDiffusion/advectionDiffusionPatchDistMethod.C index 915b62d003f50e83784fee252653de439913159e..dece6229b772ebaba4ccc4e0e3e3b7d57d7a8607 100644 --- a/src/finiteVolume/fvMesh/wallDist/patchDistMethods/advectionDiffusion/advectionDiffusionPatchDistMethod.C +++ b/src/finiteVolume/fvMesh/wallDist/patchDistMethods/advectionDiffusion/advectionDiffusionPatchDistMethod.C @@ -79,8 +79,7 @@ Foam::patchDistMethods::advectionDiffusion::advectionDiffusion tolerance_(coeffs_.getOrDefault<scalar>("tolerance", 1e-3)), maxIter_(coeffs_.getOrDefault<int>("maxIter", 10)), predicted_(false), - checkAndWriteMesh_ - (coeffs_.lookupOrDefault<bool>("checkAndWriteMesh", true)) + checkAndWriteMesh_(coeffs_.getOrDefault("checkAndWriteMesh", true)) {} @@ -119,11 +118,11 @@ bool Foam::patchDistMethods::advectionDiffusion::correct ( "points", mesh_.pointsInstance(), - mesh_.meshSubDir, + polyMesh::meshSubDir, mesh_, IOobject::NO_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ), mesh_.points() ); diff --git a/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.C b/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.C index 458efc2e2dfb175d19825cb8848a5521a2a2871c..5e960a8489f118b06186d5a0a95af3435401ce8a 100644 --- a/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.C +++ b/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.C @@ -90,7 +90,7 @@ Foam::wallDist::wallDist const word& patchTypeName ) : - MeshObject<fvMesh, Foam::UpdateableMeshObject, wallDist>(mesh), + MeshObject_type(mesh), patchIDs_(patchIDs), patchTypeName_(patchTypeName), dict_ @@ -154,6 +154,22 @@ Foam::wallDist::~wallDist() {} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +bool Foam::wallDist::try_movePoints(const fvMesh& mesh) +{ + auto* ptr = + mesh.getObjectPtr<UpdateableMeshObject<fvMesh>>("wallDist"); + + if (ptr) + { + return ptr->movePoints(); + } + + return false; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // const Foam::volVectorField& Foam::wallDist::n() const diff --git a/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.H b/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.H index d2dfa391b60d3fd967c728cac163e378ef9abb26..b1938be2bcf3600f7e77ea9e6e30d8836910dcc1 100644 --- a/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.H +++ b/src/finiteVolume/fvMesh/wallDist/wallDist/wallDist.H @@ -77,7 +77,17 @@ class wallDist : public MeshObject<fvMesh, UpdateableMeshObject, wallDist> { - // Private data + // Private Typedefs + + typedef MeshObject + < + fvMesh, + UpdateableMeshObject, + wallDist + > MeshObject_type; + + + // Private Data //- Set of patch IDs const labelHashSet patchIDs_; @@ -157,6 +167,13 @@ public: virtual ~wallDist(); + // Static Member Functions + + //- Trigger update of y-field for the "wallDist" MeshObject on the + //- given mesh. A no-op if the wallDist is not found. + static bool try_movePoints(const fvMesh& mesh); + + // Member Functions //- Return the patchIDs diff --git a/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.C b/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.C index e7f21e66b2cefb03937037f2fbb4d0551474f860..dad43a7d9fb11ec9f56a3fb37eccdfaf53e536a4 100644 --- a/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.C +++ b/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -146,29 +146,40 @@ void Foam::wallDistAddressing::correct(volScalarField& y) globalWallsPtr_.reset(new globalIndex(nWalls)); const globalIndex& globalWalls = globalWallsPtr_(); - labelList seedFaces(nWalls); - List<wallPointAddressing> seedInfo(nWalls); + DynamicList<label> seedFaces(nWalls); + DynamicList<wallPointAddressing> seedInfo(nWalls); nWalls = 0; for (const label patchi : patchIDs_) { const auto& fc = C.boundaryField()[patchi]; + const auto areaFraction(fc.patch().patch().areaFraction()); forAll(fc, patchFacei) { - seedFaces[nWalls] = fc.patch().start()+patchFacei; - seedInfo[nWalls] = wallPointAddressing + if ( - fc[patchFacei], - gt.encode + !areaFraction + || (areaFraction()[patchFacei] > 0.5) // mostly wall + ) + { + seedFaces.append(fc.patch().start()+patchFacei); + seedInfo.append ( - Pstream::myProcNo(), - nWalls, - gt.nullTransformIndex() - ), - scalar(0.0) - ); + wallPointAddressing + ( + fc[patchFacei], + gt.encode + ( + Pstream::myProcNo(), + nWalls, + gt.nullTransformIndex() + ), + scalar(0.0) + ) + ); + } nWalls++; } } @@ -387,7 +398,7 @@ Foam::wallDistAddressing::wallDistAddressing ) : // Register as "wallDistAddressing" - MeshObject<fvMesh, Foam::UpdateableMeshObject, wallDistAddressing>(mesh), + MeshObject_type(mesh), cellDistFuncs(mesh), patchIDs_(mesh.boundaryMesh().findPatchIDs<wallPolyPatch>().sortedToc()), patchTypeName_("wall"), @@ -420,11 +431,7 @@ Foam::wallDistAddressing::wallDistAddressing const label updateInterval ) : - MeshObject<fvMesh, Foam::UpdateableMeshObject, wallDistAddressing> - ( - patchTypeName, - mesh - ), + MeshObject_type(patchTypeName, mesh), cellDistFuncs(mesh), patchIDs_(patchIDs), patchTypeName_(patchTypeName), diff --git a/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.H b/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.H index 4bc5855b19b9b6a73244188329aab5939185149a..a1e2034297131e22d2547e8330bf672530252a29 100644 --- a/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.H +++ b/src/finiteVolume/fvMesh/wallDist/wallDistAddressing/wallDistAddressing.H @@ -114,8 +114,19 @@ class wallDistAddressing public MeshObject<fvMesh, UpdateableMeshObject, wallDistAddressing>, public cellDistFuncs { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + UpdateableMeshObject, + wallDistAddressing + > MeshObject_type; + + //- Use fvMesh& instead of cellDistFuncs polyMesh& - using MeshObject<fvMesh, UpdateableMeshObject, wallDistAddressing>::mesh_; + using MeshObject_type::mesh_; + protected: diff --git a/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.C b/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.C index aae092a6d0d9411541756a9e7388dffe452527c3..0aa301237de437bcec7adde3cda676ce13bedaa9 100644 --- a/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.C +++ b/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.C @@ -40,7 +40,7 @@ namespace Foam Foam::zoneDistribute::zoneDistribute(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::TopologicalMeshObject, zoneDistribute>(mesh), + MeshObject_type(mesh), stencil_(zoneCPCStencil::New(mesh)), globalNumbering_(stencil_.globalNumbering()), send_(UPstream::nProcs()), diff --git a/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.H b/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.H index 3b0e182a582260ef1b3d114ecd74e7736aad8490..dce29d9f868ae380206abfaf205793d43ec8fd49 100644 --- a/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.H +++ b/src/finiteVolume/fvMesh/zoneDistribute/zoneDistribute.H @@ -82,6 +82,16 @@ class zoneDistribute : public MeshObject<fvMesh, TopologicalMeshObject, zoneDistribute> { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + zoneDistribute + > MeshObject_type; + + // Private Data //- Reference to the zone stencil diff --git a/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.C b/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.C index 8f6ae13f09801fc4ee4f6bec286fe1d2be6764fc..1fb210d0b32ff2d3f4515ced421114abf0bf5eac 100644 --- a/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.C +++ b/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.C @@ -123,7 +123,7 @@ void Foam::zoneCPCStencil::calcPointBoundaryData Foam::zoneCPCStencil::zoneCPCStencil(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::TopologicalMeshObject, zoneCPCStencil>(mesh), + MeshObject_type(mesh), zoneCellStencils(mesh), nonEmptyBoundaryPoints_(nonEmptyFacesPatch()().meshPoints()), uptodate_(mesh.nCells(), false) diff --git a/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.H b/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.H index 23fcb624c4aa45b537573eb522e5f5d38a833d9b..37437a00694f891f3e8f602ccf324f263a71cd11 100644 --- a/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.H +++ b/src/finiteVolume/fvMesh/zoneDistribute/zoneStencils/zoneCPCStencil.H @@ -66,6 +66,16 @@ class zoneCPCStencil >, public zoneCellStencils { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + TopologicalMeshObject, + zoneCPCStencil + > MeshObject_type; + + // Private Data labelList nonEmptyBoundaryPoints_; @@ -120,6 +130,7 @@ public: //- Construct from all cells and boundary faces explicit zoneCPCStencil(const fvMesh&); + // Selectors static zoneCPCStencil& New(const fvMesh&); diff --git a/src/finiteVolume/interpolation/interpolation/interpolationPointMVC/pointMVCWeight.C b/src/finiteVolume/interpolation/interpolation/interpolationPointMVC/pointMVCWeight.C index 28559e3ded2b212c612a81a15f04edb35d06e413..e26f61466b7feb2c1761c8839923126e8f43149f 100644 --- a/src/finiteVolume/interpolation/interpolation/interpolationPointMVC/pointMVCWeight.C +++ b/src/finiteVolume/interpolation/interpolation/interpolationPointMVC/pointMVCWeight.C @@ -254,11 +254,7 @@ Foam::pointMVCWeight::pointMVCWeight { // Addressing - face vertices to local points and vice versa const labelList& toGlobal = mesh.cellPoints()[cellIndex_]; - Map<label> toLocal(2*toGlobal.size()); - forAll(toGlobal, i) - { - toLocal.insert(toGlobal[i], i); - } + Map<label> toLocal(invertToMap(toGlobal)); // Initialise weights diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/LimitedScheme/LimitedScheme.C b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/LimitedScheme/LimitedScheme.C index aed48475eb88e3d4b0def1c0659c56a8e0ef5ba9..a6beca477aa49d53bbc728608ea6dfefe61a8560 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/LimitedScheme/LimitedScheme.C +++ b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/LimitedScheme/LimitedScheme.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -161,7 +161,7 @@ Foam::LimitedScheme<Type, Limiter, LimitFunc>::limiter ( limiterFieldName, mesh.time().timeName(), - mesh, + mesh.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -170,7 +170,7 @@ Foam::LimitedScheme<Type, Limiter, LimitFunc>::limiter dimless ); - mesh.objectRegistry::store(fldptr); + regIOobject::store(fldptr); } auto& limiterField = *fldptr; @@ -184,19 +184,11 @@ Foam::LimitedScheme<Type, Limiter, LimitFunc>::limiter } else { - tmp<surfaceScalarField> tlimiterField + auto tlimiterField = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - limiterFieldName, - mesh.time().timeName(), - mesh - ), - mesh, - dimless - ) + limiterFieldName, + mesh, + dimless ); calcLimiter(phi, tlimiterField.ref()); diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C index 5c7b100d839a85cc7133bf24e802a7314b192c1a..ac471eddce0500f8c54fa8e53d9da99577571272 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C @@ -42,7 +42,7 @@ Foam::FitData<Form, ExtendedStencil, Polynomial>::FitData const scalar centralWeight ) : - MeshObject<fvMesh, Foam::MoveableMeshObject, Form>(mesh), + MeshObject_type(mesh), stencil_(stencil), linearCorrection_(linearCorrection), linearLimitFactor_(linearLimitFactor), diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.H b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.H index d30ff69179ce7aa44a66d912c8d9bfae258a2928..05bfed4f6e1930b2b2223cc1992ea30c43c91615 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.H +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.H @@ -59,7 +59,17 @@ class FitData : public MeshObject<fvMesh, MoveableMeshObject, FitDataType> { - // Private data + // Private Typedefs + + typedef MeshObject + < + fvMesh, + MoveableMeshObject, + FitDataType + > MeshObject_type; + + + // Private Data //- The stencil the fit is based on const ExtendedStencil& stencil_; diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/midPoint/midPoint.H b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/midPoint/midPoint.H index 8bfb0360dc222ebf3849235081cda8ebbf1e4456..5ad8ee370c90093a9e70a45e5ded5b91d3aa9ad8 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/midPoint/midPoint.H +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/midPoint/midPoint.H @@ -103,26 +103,15 @@ public: const GeometricField<Type, fvPatchField, volMesh>& ) const { - tmp<surfaceScalarField> taw + auto taw = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - "midPointWeights", - this->mesh().time().timeName(), - this->mesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar("0.5", dimless, 0.5) - ) + "midPointWeights", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar("0.5", dimless, 0.5) ); - surfaceScalarField::Boundary& awBf = - taw.ref().boundaryFieldRef(); + auto& awBf = taw.ref().boundaryFieldRef(); forAll(awBf, patchi) { diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/reverseLinear/reverseLinear.H b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/reverseLinear/reverseLinear.H index 6ce1aa91e8f7c21d8dc3a50cda110e56991d4d44..f6964af2b43c573c6b8f10c035e6b0650057497f 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/reverseLinear/reverseLinear.H +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/reverseLinear/reverseLinear.H @@ -113,28 +113,19 @@ public: ); const surfaceScalarField& cdWeights = tcdWeights(); - tmp<surfaceScalarField> treverseLinearWeights + auto treverseLinearWeights = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - "reverseLinearWeights", - mesh.time().timeName(), - mesh - ), - mesh, - dimless - ) + "reverseLinearWeights", + IOobject::NO_REGISTER, + mesh, + dimless ); - surfaceScalarField& reverseLinearWeights = - treverseLinearWeights.ref(); + auto& reverseLinearWeights = treverseLinearWeights.ref(); reverseLinearWeights.primitiveFieldRef() = 1.0 - cdWeights.primitiveField(); - surfaceScalarField::Boundary& rlwbf = - reverseLinearWeights.boundaryFieldRef(); + auto& rlwbf = reverseLinearWeights.boundaryFieldRef(); forAll(mesh.boundary(), patchi) diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.C index 673f7d9e9727d9bc725cac394442472edfdbcad9..83719a793151b8d2e28ba598cf05e6f3f3c95711 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.C +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.C @@ -41,7 +41,7 @@ namespace Foam Foam::skewCorrectionVectors::skewCorrectionVectors(const fvMesh& mesh) : - MeshObject<fvMesh, Foam::MoveableMeshObject, skewCorrectionVectors>(mesh), + MeshObject_type(mesh), skew_(false), skewCorrectionVectors_ ( diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.H b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.H index 0c621b10dcff6ca21cd77ea0cf37e2895ee43c93..aebf0ddfd484fab4736855d64141aff2410cb87d 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.H +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/skewCorrected/skewCorrectionVectors.H @@ -46,6 +46,7 @@ SourceFiles namespace Foam { +// Forward Declarations class fvMesh; /*---------------------------------------------------------------------------*\ @@ -56,7 +57,17 @@ class skewCorrectionVectors : public MeshObject<fvMesh, MoveableMeshObject, skewCorrectionVectors> { - // Private data + // Private Typedefs + + typedef MeshObject + < + fvMesh, + MoveableMeshObject, + skewCorrectionVectors + > MeshObject_type; + + + // Private Data //- Is mesh skew bool skew_; @@ -75,6 +86,7 @@ public: // Constructors + //- Construct given fvMesh explicit skewCorrectionVectors(const fvMesh& mesh); @@ -82,7 +94,7 @@ public: virtual ~skewCorrectionVectors(); - // Member functions + // Member Functions //- Return whether mesh is skew or not bool skew() const diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/surfaceInterpolation/surfaceInterpolate.C b/src/finiteVolume/interpolation/surfaceInterpolation/surfaceInterpolation/surfaceInterpolate.C index edfdf8a9921eeb3b1e72908a475d0e13f1f4381f..15d99ffe65428e2ab394e5761763360f2bb24102 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/surfaceInterpolation/surfaceInterpolate.C +++ b/src/finiteVolume/interpolation/surfaceInterpolation/surfaceInterpolation/surfaceInterpolate.C @@ -278,22 +278,20 @@ Foam::fvc::interpolate const FieldField<fvPatchField, Type>& fvpff ) { - FieldField<fvsPatchField, Type>* fvspffPtr - ( - new FieldField<fvsPatchField, Type>(fvpff.size()) - ); + auto tresult = tmp<FieldField<fvsPatchField, Type>>::New(fvpff.size()); + auto& result = tresult.ref(); - forAll(*fvspffPtr, patchi) + forAll(result, patchi) { - fvspffPtr->set + result.set ( patchi, fvsPatchField<Type>::NewCalculatedType(fvpff[patchi].patch()).ptr() ); - (*fvspffPtr)[patchi] = fvpff[patchi]; + result[patchi] = fvpff[patchi]; } - return tmp<FieldField<fvsPatchField, Type>>(fvspffPtr); + return tresult; } diff --git a/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.C b/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.C index 0aba8151470a62c15c1e79ec8b9149d3952ad031..f5bcdc8abdc1176a46f192e2efa41e6ca682f3cc 100644 --- a/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.C +++ b/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.C @@ -56,8 +56,6 @@ void Foam::pointConstraints::makePatchPatchAddressing() const polyMesh& mesh = pMesh(); const pointBoundaryMesh& pbm = pMesh.boundary(); - const polyBoundaryMesh& bm = mesh.boundaryMesh(); - // first count the total number of patch-patch points @@ -65,9 +63,15 @@ void Foam::pointConstraints::makePatchPatchAddressing() forAll(pbm, patchi) { - if (!isA<emptyPointPatch>(pbm[patchi]) && !pbm[patchi].coupled()) + const auto* fpp = isA<facePointPatch>(pbm[patchi]); + if + ( + fpp + && !isA<emptyPointPatch>(pbm[patchi]) + && !pbm[patchi].coupled() + ) { - const labelList& bp = bm[patchi].boundaryPoints(); + const labelList& bp = fpp->patch().boundaryPoints(); nPatchPatchPoints += bp.size(); @@ -103,9 +107,15 @@ void Foam::pointConstraints::makePatchPatchAddressing() forAll(pbm, patchi) { - if (!isA<emptyPointPatch>(pbm[patchi]) && !pbm[patchi].coupled()) + const auto* fpp = isA<facePointPatch>(pbm[patchi]); + if + ( + fpp + && !isA<emptyPointPatch>(pbm[patchi]) + && !pbm[patchi].coupled() + ) { - const labelList& bp = bm[patchi].boundaryPoints(); + const labelList& bp = fpp->patch().boundaryPoints(); const labelList& meshPoints = pbm[patchi].meshPoints(); forAll(bp, pointi) @@ -163,9 +173,15 @@ void Foam::pointConstraints::makePatchPatchAddressing() // Copy from patchPatch constraints into coupledConstraints. forAll(pbm, patchi) { - if (!isA<emptyPointPatch>(pbm[patchi]) && !pbm[patchi].coupled()) + const auto* fpp = isA<facePointPatch>(pbm[patchi]); + if + ( + fpp + && !isA<emptyPointPatch>(pbm[patchi]) + && !pbm[patchi].coupled() + ) { - const labelList& bp = bm[patchi].boundaryPoints(); + const labelList& bp = fpp->patch().boundaryPoints(); const labelList& meshPoints = pbm[patchi].meshPoints(); forAll(bp, pointi) @@ -338,7 +354,7 @@ void Foam::pointConstraints::makePatchPatchAddressing() Foam::pointConstraints::pointConstraints(const pointMesh& pm) : - MeshObject<pointMesh, Foam::UpdateableMeshObject, pointConstraints>(pm) + MeshObject_type(pm) { if (debug) { diff --git a/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.H b/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.H index 1bf5005fac375bc70f51c127494f4faadcf527e7..bcd904598e9a736e78ce83692a1b9c561a179eae 100644 --- a/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.H +++ b/src/finiteVolume/interpolation/volPointInterpolation/pointConstraints.H @@ -55,6 +55,7 @@ SourceFiles namespace Foam { +// Forward Declarations class pointMesh; class polyMesh; @@ -66,7 +67,17 @@ class pointConstraints : public MeshObject<pointMesh, UpdateableMeshObject, pointConstraints> { - // Private data + // Private Typedefs + + typedef MeshObject + < + pointMesh, + UpdateableMeshObject, + pointConstraints + > MeshObject_type; + + + // Private Data // Patch-patch constraints diff --git a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolate.C b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolate.C index ed1476717c7067edf9dce1e13a8d0aa0bd1d0d9a..f1b7fd0ff0a27eb1a8f29f314649a29d2926cbd3 100644 --- a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolate.C +++ b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolate.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -107,8 +107,7 @@ void Foam::volPointInterpolation::addSeparated } } - // Wait for outstanding requests - // (commsType == UPstream::commsTypes::nonBlocking) + // Wait for outstanding requests (non-blocking) UPstream::waitRequests(startOfRequests); forAll(pfbf, patchi) @@ -224,45 +223,34 @@ void Foam::volPointInterpolation::interpolateDimensionedInternalField template<class Type> -Foam::tmp<Foam::Field<Type>> Foam::volPointInterpolation::flatBoundaryField +Foam::tmp<Foam::Field<Type>> +Foam::volPointInterpolation::flatBoundaryField ( const GeometricField<Type, fvPatchField, volMesh>& vf ) const { - const fvMesh& mesh = vf.mesh(); - const fvBoundaryMesh& bm = mesh.boundary(); + const polyBoundaryMesh& pbm = vf.mesh().boundaryMesh(); - tmp<Field<Type>> tboundaryVals - ( - new Field<Type>(mesh.nBoundaryFaces()) - ); - Field<Type>& boundaryVals = tboundaryVals.ref(); + auto tboundaryVals = tmp<Field<Type>>::New(pbm.nFaces(), Foam::zero{}); + auto& values = tboundaryVals.ref(); forAll(vf.boundaryField(), patchi) { - label bFacei = bm[patchi].patch().start() - mesh.nInternalFaces(); + const auto& pp = pbm[patchi]; + const auto& pfld = vf.boundaryField()[patchi]; + + // Note: restrict transcribing to actual size of the patch field + // - handles "empty" patch type etc. + + SubList<Type> slice(values, pfld.size(), pp.offset()); if ( - !isA<emptyFvPatch>(bm[patchi]) - && !vf.boundaryField()[patchi].coupled() + !isA<emptyPolyPatch>(pp) + && !pfld.coupled() ) { - SubList<Type> - ( - boundaryVals, - vf.boundaryField()[patchi].size(), - bFacei - ) = vf.boundaryField()[patchi]; - } - else - { - const polyPatch& pp = bm[patchi].patch(); - - forAll(pp, i) - { - boundaryVals[bFacei++] = Zero; - } + slice = pfld; } } @@ -570,8 +558,8 @@ Foam::volPointInterpolation::interpolate if (!pfPtr) { solution::cachePrintMessage("Calculating and caching", name, vf); - pfPtr = interpolate(vf, name, false).ptr(); + pfPtr = interpolate(vf, name, false).ptr(); regIOobject::store(pfPtr); } else diff --git a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.C b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.C index 9b2dd90aadf7d0c1b59031585916ebc4ce6d00fe..31f4f9f0a47f839a3111953a55ec5b96d93221e4 100644 --- a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.C +++ b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.C @@ -473,7 +473,7 @@ void Foam::volPointInterpolation::makeWeights() Foam::volPointInterpolation::volPointInterpolation(const fvMesh& vm) : - MeshObject<fvMesh, Foam::UpdateableMeshObject, volPointInterpolation>(vm), + MeshObject_type(vm), hasSeparated_(hasSeparated(pointMesh::New(vm))) { makeWeights(); diff --git a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H index 724a838673eb9994973c64513192976ea44af9ab..a51725b38299ba6d6587cd6f330793c6bb80c328 100644 --- a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H +++ b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H @@ -50,6 +50,7 @@ SourceFiles namespace Foam { +// Forward Declarations class fvMesh; class pointMesh; @@ -61,7 +62,17 @@ class volPointInterpolation : public MeshObject<fvMesh, UpdateableMeshObject, volPointInterpolation> { - // Private data + // Private Typedefs + + typedef MeshObject + < + fvMesh, + UpdateableMeshObject, + volPointInterpolation + > MeshObject_type; + + + // Private Data //- Interpolation scheme weighting factor array. scalarListList pointWeights_; @@ -150,7 +161,7 @@ public: // Constructors - //- Constructor given fvMesh and pointMesh. + //- Construct given fvMesh explicit volPointInterpolation(const fvMesh&); diff --git a/src/functionObjects/field/CourantNo/CourantNo.C b/src/functionObjects/field/CourantNo/CourantNo.C index 98aeb51a9c16577245d4bbf5d427daf6053b8df5..198fbfaa24ef8706737f84380b67b34a47d6d1c9 100644 --- a/src/functionObjects/field/CourantNo/CourantNo.C +++ b/src/functionObjects/field/CourantNo/CourantNo.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -88,7 +88,7 @@ bool Foam::functionObjects::CourantNo::calc() ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -97,7 +97,7 @@ bool Foam::functionObjects::CourantNo::calc() dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() ); - mesh_.objectRegistry::store(resultPtr); + regIOobject::store(resultPtr); } auto& Co = *resultPtr; diff --git a/src/functionObjects/field/DMD/DMDModels/derived/STDMD/STDMD.C b/src/functionObjects/field/DMD/DMDModels/derived/STDMD/STDMD.C index 3678b341e58783c05404f813df88caf41f832d57..5f503d8646f6f87bfc5d58c6e9cdd566e340c818 100644 --- a/src/functionObjects/field/DMD/DMDModels/derived/STDMD/STDMD.C +++ b/src/functionObjects/field/DMD/DMDModels/derived/STDMD/STDMD.C @@ -227,7 +227,7 @@ reducedKoopmanOperator() // the final outcome of TSQR decomposition up to sign // Don't clear storage on persistent buffer - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; pBufs.allowClearRecv(false); const label myProcNo = Pstream::myProcNo(); diff --git a/src/functionObjects/field/Make/files b/src/functionObjects/field/Make/files index f94c5218315c5e296a8d749551507ef1ba5214bf..fe9eec3283098231a6b96b32edaa5ea8c257020c 100644 --- a/src/functionObjects/field/Make/files +++ b/src/functionObjects/field/Make/files @@ -120,6 +120,7 @@ fluxSummary/fluxSummary.C mapFields/mapFields.C reactionSensitivityAnalysis/reactionsSensitivityAnalysisObjects.C DESModelRegions/DESModelRegions.C +cellDecomposer/cellDecomposer.C externalCoupled/externalCoupled.C externalCoupled/externalCoupledMixed/externalCoupledMixedFvPatchFields.C diff --git a/src/functionObjects/field/Make/options b/src/functionObjects/field/Make/options index c5df9e3b470c354f2a0b5359b213e2d3b503b175..f4eb6523ddb5f0a9105617654cf1a824910f659b 100644 --- a/src/functionObjects/field/Make/options +++ b/src/functionObjects/field/Make/options @@ -6,6 +6,7 @@ EXE_INC = \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/dynamicMesh/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \ + -I$(LIB_SRC)/fvOptions/lnInclude \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ @@ -33,6 +34,7 @@ LIB_LIBS = \ -lmeshTools \ -ldynamicMesh \ -lsampling \ + -lfvOptions \ -llagrangian \ -ldistributionModels \ -lfluidThermophysicalModels \ diff --git a/src/functionObjects/field/PecletNo/PecletNo.C b/src/functionObjects/field/PecletNo/PecletNo.C index 45509542075a5c2f89b7b8cb9eac3cf4bba98354..8ef656db1da266a8c28aa1712e6dd749e3734775 100644 --- a/src/functionObjects/field/PecletNo/PecletNo.C +++ b/src/functionObjects/field/PecletNo/PecletNo.C @@ -79,16 +79,10 @@ bool Foam::functionObjects::PecletNo::calc() const dictionary& model = mesh_.lookupObject<dictionary>("transportProperties"); - nuEff = tmp<volScalarField>::New + nuEff = volScalarField::New ( - IOobject - ( - "nuEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "nuEff", + IOobject::NO_REGISTER, mesh_, dimensionedScalar("nu", dimViscosity, model) ); diff --git a/src/functionObjects/field/age/age.C b/src/functionObjects/field/age/age.C index 72cf677d2ff68696d19291f4de140b92c0de578b..d63e452b9c13d141a20ee777f7e8ee674fbbf86a 100644 --- a/src/functionObjects/field/age/age.C +++ b/src/functionObjects/field/age/age.C @@ -90,31 +90,6 @@ bool Foam::functionObjects::age::converged } -template<class GeoField> -Foam::autoPtr<GeoField> -Foam::functionObjects::age::newField -( - const word& baseName, - const wordList patches -) const -{ - return autoPtr<GeoField>::New - ( - IOobject - ( - scopedName(baseName), - time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensioned<typename GeoField::value_type>(dimTime, Zero), - patches - ); -} - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::functionObjects::age::age diff --git a/src/functionObjects/field/age/age.H b/src/functionObjects/field/age/age.H index 1abb2ae77765ae4fd1e4fc4bb1453ecf805bf467..daba0c401d9b6d02c4bee158e2a81b404ee2300f 100644 --- a/src/functionObjects/field/age/age.H +++ b/src/functionObjects/field/age/age.H @@ -141,14 +141,6 @@ class age //- Return true if convergence is reached bool converged(const int nCorr, const scalar initialResidual) const; - //- Create and allocate a new zero geometric field - template<class GeoField> - autoPtr<GeoField> newField - ( - const word& baseName, - const wordList - ) const; - public: diff --git a/src/functionObjects/field/binField/binModels/binModel/binModelNew.C b/src/functionObjects/field/binField/binModels/binModel/binModelNew.C index 9d09a4ebf8dcaeddb0cf08df7e75f975ccfa8b19..6839389730cdb1903e802b4ab25380842d6f017a 100644 --- a/src/functionObjects/field/binField/binModels/binModel/binModelNew.C +++ b/src/functionObjects/field/binField/binModels/binModel/binModelNew.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,11 +37,11 @@ Foam::autoPtr<Foam::binModel> Foam::binModel::New const word& outputPrefix ) { - word modelType(dict.get<word>("binModel")); + const word modelType(dict.get<word>("binModel")); - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); - if (!cstrIter.good()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -52,7 +52,7 @@ Foam::autoPtr<Foam::binModel> Foam::binModel::New ) << exit(FatalIOError); } - return autoPtr<binModel>(cstrIter()(dict, mesh, outputPrefix)); + return autoPtr<binModel>(ctorPtr(dict, mesh, outputPrefix)); } diff --git a/src/functionObjects/field/cellDecomposer/cellDecomposer.C b/src/functionObjects/field/cellDecomposer/cellDecomposer.C new file mode 100644 index 0000000000000000000000000000000000000000..446c3d88813f13fbd4f888194aaa7d4686b7d29c --- /dev/null +++ b/src/functionObjects/field/cellDecomposer/cellDecomposer.C @@ -0,0 +1,415 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "cellDecomposer.H" +#include "addToRunTimeSelectionTable.H" +#include "polyTopoChange.H" +#include "mapPolyMesh.H" +#include "tetDecomposer.H" +#include "syncTools.H" +#include "dummyTransform.H" +#include "ReadFields.H" +#include "surfaceFields.H" +#include "PackedBoolList.H" +#include "fvMeshTools.H" +#include "cellSetOption.H" +#include "cellBitSet.H" +#include "cellSet.H" +#include "hexMatcher.H" +#include "prismMatcher.H" +#include "pyrMatcher.H" +#include "tetMatcher.H" + +#include "OBJstream.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace functionObjects +{ + defineTypeNameAndDebug(cellDecomposer, 0); + addToRunTimeSelectionTable(functionObject, cellDecomposer, dictionary); +} +} + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +void Foam::functionObjects::cellDecomposer::makeMesh +( + const dictionary& dict, + const word& regionName +) +{ + Info<< name() << ':' << nl + << " Decomposing cells to region " << regionName << endl; + + Info<< incrIndent; + + const fv::cellSetOption::selectionModeType selectionMode + ( + fv::cellSetOption::selectionModeTypeNames_.get + ( + "selectionMode", + dict + ) + ); + + + // Start off from existing mesh + polyTopoChange meshMod(mesh_); + + tetDecompPtr_.reset(new Foam::tetDecomposer(mesh_)); + + // Default values + bitSet decomposeCell(mesh_.nCells()); + autoPtr<bitSet> decomposeFacePtr; + tetDecomposer::decompositionType decompType + ( + tetDecomposer::FACE_CENTRE_TRIS + ); + + + switch (selectionMode) + { + case fv::cellSetOption::smAll: + { + Info<< indent << "- selecting all cells" << endl; + + decomposeCell = true; + break; + } + case fv::cellSetOption::smGeometric: + { + Info<< indent << "- selecting cells geometrically" << endl; + + decomposeCell = + cellBitSet::select(mesh_, dict.subDict("selection"), true); + break; + } + case fv::cellSetOption::smCellSet: + { + const word selectionName(dict.get<word>("cellSet")); + + Info<< indent + << "- selecting cells using cellSet " + << selectionName << endl; + + decomposeCell.set + ( + cellSet(mesh_, selectionName, IOobject::MUST_READ).toc() + ); + break; + } + case fv::cellSetOption::smCellZone: + { + wordRes selectionNames; + if + ( + !dict.readIfPresent("cellZones", selectionNames) + || selectionNames.empty() + ) + { + selectionNames.resize(1); + dict.readEntry("cellZone", selectionNames.first()); + } + + Info<< indent + << "- selecting cells using cellZones " + << flatOutput(selectionNames) << nl; + + const auto& zones = mesh_.cellZones(); + + // Also handles groups, multiple zones etc ... + labelList zoneIDs = zones.indices(selectionNames); + + if (zoneIDs.empty()) + { + FatalErrorInFunction + << "No matching cellZones: " + << flatOutput(selectionNames) << nl + << "Valid zones : " + << flatOutput(zones.names()) << nl + << "Valid groups: " + << flatOutput(zones.groupNames()) + << nl + << exit(FatalError); + } + + if (zoneIDs.size() == 1) + { + decomposeCell.set(zones[zoneIDs.first()]); + // TBD: Foam::sort(cells_); + } + else + { + decomposeCell.set(zones.selection(zoneIDs).sortedToc()); + } + break; + } + default: + { + FatalErrorInFunction + << "Unsupported selectionMode " + << fv::cellSetOption::selectionModeTypeNames_[selectionMode] + << ". Valid selectionMode types are " + << fv::cellSetOption::selectionModeTypeNames_ + << exit(FatalError); + } + } + + word decompTypeName; + if (dict.readIfPresent("decomposeType", decompTypeName)) + { + if (decompTypeName == "polyhedral") + { + // Automatic selection to generate hex/prism/tet only + // - subset decomposeCell to exclude hex/prism/tet + // - set faces to FACE_DIAG_QUADS + // Usually start with cellSetOption::smAll + decomposeFacePtr.reset(new bitSet(mesh_.nFaces())); + auto& decomposeFace = decomposeFacePtr(); + + decompType = tetDecomposer::FACE_DIAG_QUADS; + bitSet oldDecomposeCell(decomposeCell); + decomposeCell = false; + + // Construct shape recognizers + prismMatcher prism; + + for (const label celli : oldDecomposeCell) + { + if + ( + !hexMatcher::test(mesh_, celli) + && !tetMatcher::test(mesh_, celli) + && !pyrMatcher::test(mesh_, celli) + && !prism.isA(mesh_, celli) + ) + { + decomposeCell.set(celli); + decomposeFace.set(mesh_.cells()[celli]); + } + } + + // Sync boundary info + syncTools::syncFaceList + ( + mesh_, + decomposeFace, + orEqOp<unsigned int>() + ); + } + else + { + decompType = tetDecomposer::decompositionTypeNames[decompTypeName]; + } + } + + + // Insert all changes to create tets + if (decomposeFacePtr) + { + if (debug) + { + OBJstream os(mesh_.time().path()/"orig_faces.obj"); + os.write + ( + UIndirectList<face> + ( + mesh_.faces(), + decomposeFacePtr().sortedToc() + )(), + mesh_.points(), + false + ); + Pout<< "Written " << meshMod.faces().size() + << " faces to " << os.name() << endl; + } + + tetDecompPtr_().setRefinement + ( + decompType, //Foam::tetDecomposer::FACE_CENTRE_TRIS, + decomposeCell, + decomposeFacePtr(), + meshMod + ); + } + else + { + tetDecompPtr_().setRefinement + ( + decompType, //Foam::tetDecomposer::FACE_CENTRE_TRIS, + decomposeCell, + meshMod + ); + } + + + if (debug) + { + OBJstream os(mesh_.time().path()/"faces.obj"); + os.write(meshMod.faces(), pointField(meshMod.points()), false); + Pout<< "Written " << meshMod.faces().size() + << " faces to " << os.name() << endl; + } + + + autoPtr<fvMesh> tetMeshPtr; + + mapPtr_ = meshMod.makeMesh + ( + tetMeshPtr, + IOobject + ( + regionName, + mesh_.facesInstance(), // same instance as original mesh + mesh_.time(), //? why same database? TBD. + IOobject::READ_IF_PRESENT, // Read fv* if present + IOobject::AUTO_WRITE, + IOobject::REGISTER + ), + mesh_ + ); + + + //- Update numbering on tet-decomposition engine + tetDecompPtr_().updateMesh(mapPtr_()); + + Info<< indent << "Writing decomposed mesh to " + << tetMeshPtr().objectRegistry::objectRelPath() + << endl; + tetMeshPtr().write(); + + fvMeshTools::createDummyFvMeshFiles(mesh_.time(), regionName, true); + + // Store new mesh on object registry + tetMeshPtr.ptr()->polyMesh::store(); + + Info<< decrIndent; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::functionObjects::cellDecomposer::cellDecomposer +( + const word& name, + const Time& runTime, + const dictionary& dict +) +: + fvMeshFunctionObject(name, runTime, dict) +{ + read(dict); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::functionObjects::cellDecomposer::read(const dictionary& dict) +{ + if (fvMeshFunctionObject::read(dict)) + { + // Generate new tet equivalent mesh. TBD: why meshObject? + //meshObjects::tetDecomposition::New(mesh, dict); + + dict_ = dict.optionalSubDict(typeName + "Coeffs"); + dict_.readEntry("mapRegion", mapRegion_); + dict_.readEntry("fields", fieldNames_); + makeMesh(dict_, mapRegion_); + } + + return true; +} + + +bool Foam::functionObjects::cellDecomposer::execute() +{ + Log << type() << " " << name() << " execute:" << nl; + + bool ok = false; + + if (mesh_.changing()) + { + // Re-do mesh. Currently rebuilds whole mesh. Could move points only + // for mesh motion. + tetDecompPtr_.clear(); + mapPtr_.clear(); + const_cast<Time&>(this->mesh_.time()).erase(mapRegion_); + makeMesh(dict_, mapRegion_); + } + + + // Look up + ok = mapFieldType<scalar>() || ok; + ok = mapFieldType<vector>() || ok; + ok = mapFieldType<sphericalTensor>() || ok; + ok = mapFieldType<symmTensor>() || ok; + ok = mapFieldType<tensor>() || ok; + + if (log) + { + if (!ok) + { + Info<< " none" << nl; + } + + Info<< endl; + } + return true; +} + + +bool Foam::functionObjects::cellDecomposer::write() +{ + Log << type() << " " << name() << " write:" << nl; + + bool ok = false; + + ok = writeFieldType<scalar>() || ok; + ok = writeFieldType<vector>() || ok; + ok = writeFieldType<sphericalTensor>() || ok; + ok = writeFieldType<symmTensor>() || ok; + ok = writeFieldType<tensor>() || ok; + + if (log) + { + if (!ok) + { + Info<< " none" << nl; + } + + Info<< endl; + } + + return true; +} + + +// ************************************************************************* // diff --git a/src/functionObjects/field/cellDecomposer/cellDecomposer.H b/src/functionObjects/field/cellDecomposer/cellDecomposer.H new file mode 100644 index 0000000000000000000000000000000000000000..0e3363bfc0f8e1485a363b4c29b9c8ccece772b8 --- /dev/null +++ b/src/functionObjects/field/cellDecomposer/cellDecomposer.H @@ -0,0 +1,226 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::functionObjects::cellDecomposer + +Group + grpFieldFunctionObjects + +Description + Maps input fields from local mesh to a secondary mesh at runtime. + + The secondary mesh gets created on-the-fly by decomposing the current mesh. + + + Operands: + \table + Operand | Type | Location + input | {vol,surface}\<Type\>Field <!-- + --> | $FOAM_CASE/\<time\>/\<inpField\> + output file | - | - + output field | {vol,surface}\<Type\>Field <!-- + --> | $FOAM_CASE/\<time\>/\<outField\> + \endtable + + where \c \<Type\>=Scalar/Vector/SphericalTensor/SymmTensor/Tensor. + +Usage + Minimal example by using \c system/controlDict.functions: + \verbatim + cellDecomposer1 + { + // Mandatory entries (unmodifiable) + type cellDecomposer; + libs (fieldFunctionObjects); + + // Mandatory (inherited) entries (runtime modifiable) + fields (<field1> <field2> ... <fieldN>); + mapRegion myTetMesh; + ... + // Mandatory entries + // Decompose type: + decomposeType polyhedral; + // Cell set to decompose + selectionMode all; + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Req'd | Dflt + type | Type name: cellDecomposer | word | yes | - + libs | Library name: fieldFunctionObjects | word | yes | - + fields | Names of operand fields | wordList | yes | - + mapRegion | Name of region to map to | word | yes | - + decomposeType | How to decompose cells | word | yes | - + selectionMode | How to select cells (see fvOption)| word | yes | - + \endtable + + decomposeType: + - faceCentre : decompose cells into tets using face centre and cell centre. + (hex becomes 6*4 tets) + - faceDiagonal : decompose cells into tets using face diagonal, similar + to implicit decomposition inside lagrangian tracking. + (hex becomes 6*2 tets) + - pyramid : keep faces intact but create (polygonal-base) pyramids using + cell centre (hex becomes 6 pyramids) + - faceDiagonalQuads : like faceDiagonal but split faces into quads and + triangles instead of just triangles + - polyhedral : like faceDiagonalQuads but only decompose non-hex/prism/tet + cells in selected set. Used to convert polyhedral mesh into + 'simple' mesh. + + The inherited entries are elaborated in: + - \link functionObject.H \endlink + +See also + - Foam::functionObjects::mapFields + +SourceFiles + cellDecomposer.C + +\*---------------------------------------------------------------------------*/ + +#ifndef functionObjects_cellDecomposer_H +#define functionObjects_cellDecomposer_H + +#include "fvMeshFunctionObject.H" +#include "volFieldsFwd.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +class tetDecomposer; +class mapPolyMesh; + +namespace functionObjects +{ + +/*---------------------------------------------------------------------------*\ + Class cellDecomposer Declaration +\*---------------------------------------------------------------------------*/ + +class cellDecomposer +: + public fvMeshFunctionObject +{ + // Private Data + + //- Parameter dictionary + dictionary dict_; + + //- Name of new mesh + word mapRegion_; + + //- List of field names to interpolate + wordRes fieldNames_; + + //- Tet decomposer + autoPtr<tetDecomposer> tetDecompPtr_; + + //- Map from polyMesh to tet-mesh + autoPtr<mapPolyMesh> mapPtr_; + + + // Private Member Functions + + //- Generate mesh + void makeMesh(const dictionary& dict, const word& name); + + //- Helper function to map the \<Type\> fields + template<class Type> + bool mapFieldType() const; + + //- Helper function to write the \<Type\> fields + template<class Type> + bool writeFieldType() const; + + template<class Type> + tmp<GeometricField<Type, fvPatchField, volMesh>> + interpolate + ( + const GeometricField<Type, fvPatchField, volMesh>& vf, + const fvMesh& sMesh, + const labelUList& patchMap, + const labelUList& cellMap, + const labelUList& faceMap, + const bool allowUnmapped + ) const; + + +public: + + + //- Runtime type information + TypeName("cellDecomposer"); + + + // Constructors + + //- Construct from Time and dictionary + cellDecomposer + ( + const word& name, + const Time& runTime, + const dictionary& dict + ); + + + //- Destructor + virtual ~cellDecomposer() = default; + + + // Member Functions + + //- Read the cellDecomposer data + virtual bool read(const dictionary& dict); + + //- Execute + virtual bool execute(); + + //- Write + virtual bool write(); +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace functionObjects +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "cellDecomposerTemplates.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/functionObjects/field/cellDecomposer/cellDecomposerTemplates.C b/src/functionObjects/field/cellDecomposer/cellDecomposerTemplates.C new file mode 100644 index 0000000000000000000000000000000000000000..e982aeff5b58f6bf317f24bca54fb8fe1d0d3018 --- /dev/null +++ b/src/functionObjects/field/cellDecomposer/cellDecomposerTemplates.C @@ -0,0 +1,364 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "fvMesh.H" +#include "emptyFvPatchFields.H" +#include "directFvPatchFieldMapper.H" +#include "mapPolyMesh.H" +//#include "polyPatch.H" +//#include "lduSchedule.H" +//#include "meshToMesh.H" + +//template<class Type> +//void Foam::functionObjects::cellDecomposer::evaluateConstraintTypes +//( +// GeometricField<Type, fvPatchField, volMesh>& fld +//) const +//{ +// auto& fldBf = fld.boundaryFieldRef(); +// +// const UPstream::commsTypes commsType = UPstream::defaultCommsType; +// const label startOfRequests = UPstream::nRequests(); +// +// if +// ( +// commsType == UPstream::commsTypes::blocking +// || commsType == UPstream::commsTypes::nonBlocking +// ) +// { +// forAll(fldBf, patchi) +// { +// fvPatchField<Type>& tgtField = fldBf[patchi]; +// +// if +// ( +// tgtField.type() == tgtField.patch().patch().type() +// && polyPatch::constraintType(tgtField.patch().patch().type()) +// ) +// { +// tgtField.initEvaluate(commsType); +// } +// } +// +// // Wait for outstanding requests +// if (commsType == UPstream::commsTypes::nonBlocking) +// { +// UPstream::waitRequests(startOfRequests); +// } +// +// forAll(fldBf, patchi) +// { +// fvPatchField<Type>& tgtField = fldBf[patchi]; +// +// if +// ( +// tgtField.type() == tgtField.patch().patch().type() +// && polyPatch::constraintType(tgtField.patch().patch().type()) +// ) +// { +// tgtField.evaluate(commsType); +// } +// } +// } +// else if (commsType == UPstream::commsTypes::scheduled) +// { +// const lduSchedule& patchSchedule = +// fld.mesh().globalData().patchSchedule(); +// +// for (const auto& schedEval : patchSchedule) +// { +// const label patchi = schedEval.patch; +// +// fvPatchField<Type>& tgtField = fldBf[patchi]; +// +// if +// ( +// tgtField.type() == tgtField.patch().patch().type() +// && polyPatch::constraintType(tgtField.patch().patch().type()) +// ) +// { +// if (schedEval.init) +// { +// tgtField.initEvaluate(commsType); +// } +// else +// { +// tgtField.evaluate(commsType); +// } +// } +// } +// } +//} + +template<class Type> +Foam::tmp +< + Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> +> +Foam::functionObjects::cellDecomposer::interpolate +( + const GeometricField<Type, fvPatchField, volMesh>& vf, + const fvMesh& sMesh, + const labelUList& patchMap, + const labelUList& cellMap, + const labelUList& faceMap, + const bool allowUnmapped +) const +{ + // 1. Create the complete field with dummy patch fields + PtrList<fvPatchField<Type>> patchFields(patchMap.size()); + + forAll(patchFields, patchi) + { + // Set the first one by hand as it corresponds to the + // exposed internal faces. Additional interpolation can be put here + // as necessary. + if (patchMap[patchi] == -1) + { + patchFields.set + ( + patchi, + new emptyFvPatchField<Type> + ( + sMesh.boundary()[patchi], + fvPatchField<Type>::Internal::null() + ) + ); + } + else + { + patchFields.set + ( + patchi, + fvPatchField<Type>::New + ( + fvPatchFieldBase::calculatedType(), + sMesh.boundary()[patchi], + fvPatchField<Type>::Internal::null() + ) + ); + } + } + + auto tresult = tmp<GeometricField<Type, fvPatchField, volMesh>>::New + ( + IOobject + ( + "subset"+vf.name(), + sMesh.time().timeName(), + sMesh, + IOobject::NO_READ, + IOobject::NO_WRITE + ), + sMesh, + vf.dimensions(), + Field<Type>(vf.primitiveField(), cellMap), + patchFields + ); + auto& result = tresult.ref(); + result.oriented() = vf.oriented(); + + + // 2. Change the fvPatchFields to the correct type using a mapper + // constructor (with reference to the now correct internal field) + + auto& bf = result.boundaryFieldRef(); + + forAll(bf, patchi) + { + const label basePatchId = patchMap[patchi]; + + if (basePatchId != -1) + { + // Construct addressing + const fvPatch& subPatch = sMesh.boundary()[patchi]; + const fvPatch& basePatch = vf.mesh().boundary()[basePatchId]; + const label baseStart = basePatch.start(); + const label baseSize = basePatch.size(); + + labelList directAddressing(subPatch.size()); + + forAll(directAddressing, i) + { + const label baseFacei = faceMap[subPatch.start()+i]; + + if (baseFacei >= baseStart && baseFacei < baseStart+baseSize) + { + directAddressing[i] = baseFacei-baseStart; + } + else + { + // Mapped from internal face. Do what? Leave up to + // fvPatchField + directAddressing[i] = -1; + } + } + + + directFvPatchFieldMapper mapper(directAddressing); + + // allowUnmapped : special mode for if we do not want to be + // warned for unmapped faces (e.g. from fvMeshDistribute). + + const bool hasUnmapped = mapper.hasUnmapped(); + if (allowUnmapped) + { + mapper.hasUnmapped() = false; + } + + bf.set + ( + patchi, + fvPatchField<Type>::New + ( + vf.boundaryField()[basePatchId], + subPatch, + result.internalField(), + mapper + ) + ); + + if (allowUnmapped && hasUnmapped) + { + // Set unmapped values to zeroGradient. This is the default + // action for unmapped fvPatchFields. Note that this bypasses + // any special logic for handling unmapped fvPatchFields but + // since this is only used inside fvMeshDistribute ... + + tmp<Field<Type>> tfld(bf[patchi].patchInternalField()); + const Field<Type>& fld = tfld(); + + Field<Type> value(bf[patchi]); + forAll(directAddressing, i) + { + if (directAddressing[i] == -1) + { + value[i] = fld[i]; + } + } + bf[patchi].fvPatchField<Type>::operator=(value); + } + } + } + + return tresult; +} + + +template<class Type> +bool Foam::functionObjects::cellDecomposer::mapFieldType() const +{ + typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType; + + const fvMesh& mapRegion = + this->mesh_.time().lookupObject<fvMesh>(mapRegion_); + + const labelList patchMap(identity(mapRegion.boundaryMesh().size())); + + const wordList fieldNames + ( + this->mesh_.sortedNames<VolFieldType>(fieldNames_) + ); + + const bool processed = !fieldNames.empty(); + + for (const word& fieldName : fieldNames) + { + const VolFieldType& field = lookupObject<VolFieldType>(fieldName); + + auto* mapFieldPtr = mapRegion.getObjectPtr<VolFieldType>(fieldName); + + if (!mapFieldPtr) + { + mapFieldPtr = new VolFieldType + ( + IOobject + ( + fieldName, + time_.timeName(), + mapRegion, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::REGISTER + ), + mapRegion, + dimensioned<Type>(field.dimensions(), Zero) + ); + + mapFieldPtr->store(); + } + + auto& mappedField = *mapFieldPtr; + + mappedField = interpolate + ( + field, + mapRegion, + patchMap, + mapPtr_().cellMap(), + mapPtr_().faceMap(), + false //allowUnmapped + ); + Log << " " << fieldName << ": interpolated"; + + //evaluateConstraintTypes(mappedField); + } + + return processed; +} + + +template<class Type> +bool Foam::functionObjects::cellDecomposer::writeFieldType() const +{ + typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType; + + const fvMesh& mapRegion = + this->mesh_.time().lookupObject<fvMesh>(mapRegion_); + + const wordList fieldNames + ( + this->mesh_.sortedNames<VolFieldType>(fieldNames_) + ); + + const bool processed = !fieldNames.empty(); + + for (const word& fieldName : fieldNames) + { + const VolFieldType& mappedField = + mapRegion.template lookupObject<VolFieldType>(fieldName); + + mappedField.write(); + + Log << " " << fieldName << ": written"; + } + + return processed; +} + + +// ************************************************************************* // diff --git a/src/functionObjects/field/columnAverage/columnAverageTemplates.C b/src/functionObjects/field/columnAverage/columnAverageTemplates.C index 6a6b537500adeb5975b99e3cbd7b2f2404d1f2ec..2bba02a3dc32112295fbe26ae61e47ce7bf29dae 100644 --- a/src/functionObjects/field/columnAverage/columnAverageTemplates.C +++ b/src/functionObjects/field/columnAverage/columnAverageTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,14 +57,14 @@ bool Foam::functionObjects::columnAverage::columnAverageField ( resultName, fld.mesh().time().timeName(), - fld.mesh(), + fld.db(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER ), fld ); - obr_.objectRegistry::store(resPtr); + regIOobject::store(resPtr); } fieldType& res = *resPtr; diff --git a/src/functionObjects/field/ddt2/ddt2.C b/src/functionObjects/field/ddt2/ddt2.C index 0cdc3252977c2af98cfe6cd6f7e16a06cb10be38..28630f3033aa42120cfc9856dbe992ca5938874c 100644 --- a/src/functionObjects/field/ddt2/ddt2.C +++ b/src/functionObjects/field/ddt2/ddt2.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,7 +27,6 @@ License #include "ddt2.H" #include "stringOps.H" -#include "stringListOps.H" #include "volFields.H" #include "dictionary.H" #include "wordRes.H" @@ -173,7 +172,8 @@ bool Foam::functionObjects::ddt2::execute() { results_.clear(); - wordHashSet candidates(subsetStrings(selectFields_, mesh_.names())); + wordHashSet candidates(mesh_.names<regIOobject>(selectFields_)); + DynamicList<word> missing(selectFields_.size()); DynamicList<word> ignored(selectFields_.size()); diff --git a/src/functionObjects/field/expressions/fvExpressionField.C b/src/functionObjects/field/expressions/fvExpressionField.C index 7b3444f6f8dd056545c65ab7846eb4f74b120421..3ab2ae93d4dbd40cd69797a6632239916f74dee5 100644 --- a/src/functionObjects/field/expressions/fvExpressionField.C +++ b/src/functionObjects/field/expressions/fvExpressionField.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -137,7 +137,7 @@ bool Foam::functionObjects::fvExpressionField::loadAndStore(const IOobject& io) Log << " Reading " << io.name() << " (" << FieldType::typeName << ')' << endl; - mesh_.objectRegistry::store(new FieldType(io, mesh_)); + regIOobject::store(new FieldType(io, mesh_)); return true; } diff --git a/src/functionObjects/field/externalCoupled/externalCoupled.C b/src/functionObjects/field/externalCoupled/externalCoupled.C index 9506d85ac3a67b3d5f60b1867be8b57f0c7e5bb7..2602860e1262a0c427a1e0636aa1d1e1365e31e6 100644 --- a/src/functionObjects/field/externalCoupled/externalCoupled.C +++ b/src/functionObjects/field/externalCoupled/externalCoupled.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,6 +30,7 @@ License #include "addToRunTimeSelectionTable.H" #include "OSspecific.H" #include "Fstream.H" +#include "SpanStream.H" #include "volFields.H" #include "globalIndex.H" #include "fvMesh.H" @@ -110,15 +111,15 @@ void Foam::functionObjects::externalCoupled::readColumns // Get sizes for all processors const globalIndex globalFaces(globalIndex::gatherOnly{}, nRows); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; - if (Pstream::master()) + if (UPstream::master()) { - string line; - // Read data from file and send to destination processor + auto& ifile = masterFilePtr(); + string line; - for (const int proci : Pstream::allProcs()) + for (const int proci : UPstream::allProcs()) { // Temporary storage List<scalarField> values(nColumns); @@ -136,9 +137,9 @@ void Foam::functionObjects::externalCoupled::readColumns // Get a line do { - if (!masterFilePtr().good()) + if (!ifile.good()) { - FatalIOErrorInFunction(masterFilePtr()) + FatalIOErrorInFunction(ifile) << "Trying to read data for processor " << proci << " row " << rowi << ". Does your file have as many rows as there are" @@ -146,15 +147,15 @@ void Foam::functionObjects::externalCoupled::readColumns << ") ?" << exit(FatalIOError); } - masterFilePtr().getLine(line); + ifile.getLine(line); } while (line.empty() || line[0] == '#'); - IStringStream lineStr(line); + ISpanStream isstr(line); for (label columni = 0; columni < nColumns; ++columni) { - lineStr >> values[columni][rowi]; + isstr >> values[columni][rowi]; } } @@ -165,7 +166,7 @@ void Foam::functionObjects::externalCoupled::readColumns } pBufs.finishedScatters(); - // Get scattered data from PstreamBuffers + // Get scattered data UIPstream fromMaster(UPstream::masterNo(), pBufs); fromMaster >> data; } @@ -175,21 +176,21 @@ void Foam::functionObjects::externalCoupled::readLines ( const label nRows, autoPtr<IFstream>& masterFilePtr, - OStringStream& lines + std::string& lines ) const { // Get sizes for all processors const globalIndex globalFaces(globalIndex::gatherOnly{}, nRows); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; - if (Pstream::master()) + if (UPstream::master()) { - string line; - // Read line from file and send to destination processor + auto& ifile = masterFilePtr(); + string line; - for (const int proci : Pstream::allProcs()) + for (const int proci : UPstream::allProcs()) { // Number of rows to read for processor proci const label procNRows = globalFaces.localSize(proci); @@ -201,9 +202,9 @@ void Foam::functionObjects::externalCoupled::readLines // Get a line do { - if (!masterFilePtr().good()) + if (!ifile.good()) { - FatalIOErrorInFunction(masterFilePtr()) + FatalIOErrorInFunction(ifile) << "Trying to read data for processor " << proci << " row " << rowi << ". Does your file have as many rows as there are" @@ -211,11 +212,11 @@ void Foam::functionObjects::externalCoupled::readLines << ") ?" << exit(FatalIOError); } - masterFilePtr().getLine(line); + ifile.getLine(line); } while (line.empty() || line[0] == '#'); - // Send line to the destination processor + // Send line (without newline) to the destination processor toProc << line; } } @@ -223,12 +224,16 @@ void Foam::functionObjects::externalCoupled::readLines pBufs.finishedScatters(); - // Get scattered data from PstreamBuffers + // Sizing is approximate (slightly too large) + lines.reserve(pBufs.recvDataCount(UPstream::masterNo())); + + // Get scattered data UIPstream fromMaster(UPstream::masterNo(), pBufs); for (label rowi = 0; rowi < nRows; ++rowi) { string line(fromMaster); - lines << line.c_str() << nl; + lines += line; + lines += '\n'; } } @@ -253,9 +258,9 @@ void Foam::functionObjects::externalCoupled::writeGeometry autoPtr<OFstream> osPointsPtr; autoPtr<OFstream> osFacesPtr; - if (Pstream::master()) + if (UPstream::master()) { - mkDir(dir); + Foam::mkDir(dir); osPointsPtr.reset(new OFstream(dir/"patchPoints")); osFacesPtr.reset(new OFstream(dir/"patchFaces")); @@ -278,7 +283,7 @@ void Foam::functionObjects::externalCoupled::writeGeometry ( mesh.boundaryMesh().patchSet ( - wordRes(one{}, groupName) + wordRes(Foam::one{}, groupName) ).sortedToc() ); @@ -303,13 +308,13 @@ void Foam::functionObjects::externalCoupled::writeGeometry List<faceList> collectedFaces(Pstream::nProcs()); faceList& patchFaces = collectedFaces[proci]; patchFaces = p.localFaces(); - forAll(patchFaces, facei) + for (auto& f : patchFaces) { - inplaceRenumber(pointToGlobal, patchFaces[facei]); + inplaceRenumber(pointToGlobal, f); } Pstream::gatherList(collectedFaces); - if (Pstream::master()) + if (UPstream::master()) { allPoints.clear(); allFaces.clear(); @@ -576,7 +581,10 @@ bool Foam::functionObjects::externalCoupled::read(const dictionary& dict) const wordRe regionGroupName(dEntry.keyword()); const dictionary& regionDict = dEntry.dict(); - labelList regionIDs = findStrings(regionGroupName, allRegionNames); + labelList regionIDs + ( + wordRes::matching(regionGroupName, allRegionNames) + ); const wordList regionNames(allRegionNames, regionIDs); diff --git a/src/functionObjects/field/externalCoupled/externalCoupled.H b/src/functionObjects/field/externalCoupled/externalCoupled.H index dde7ba1604a34f7ab740affa4b77694bf5fee0da..567b85a3375c36f6e400195f6454e700a9fe3029 100644 --- a/src/functionObjects/field/externalCoupled/externalCoupled.H +++ b/src/functionObjects/field/externalCoupled/externalCoupled.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -167,8 +167,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef functionObjects_externalCoupled_H -#define functionObjects_externalCoupled_H +#ifndef Foam_functionObjects_externalCoupled_H +#define Foam_functionObjects_externalCoupled_H #include "timeFunctionObject.H" #include "externalFileCoupler.H" @@ -198,7 +198,6 @@ class externalCoupled public functionObjects::timeFunctionObject, public externalFileCoupler { - // Private Member Data //- Calculation frequency @@ -259,8 +258,9 @@ class externalCoupled void initCoupling(); - //- Read (and distribute) scalar columns from stream. Every processor - // gets nRows (= patch size) of these. Note: could make its argument + //- Read (and distribute) scalar columns from stream. + //- Every processor gets nRows (= patch size) of these. + // Note: could make its argument // ISstream& but then would need additional logic to construct valid // stream on all processors. void readColumns @@ -271,21 +271,17 @@ class externalCoupled List<scalarField>& data ) const; - //- Read (and distribute) lines from stream. Every processor - // gets nRows (= patch size) of these. Data kept as stream (instead - // of strings) for ease of interfacing to readData routines that take - // an Istream. + //- Read (and distribute) lines from stream. + //- Every processor gets nRows (= patch size) of these + //- (newline terminated). void readLines ( const label nRows, autoPtr<IFstream>& masterFilePtr, - OStringStream& data + //! [out] the nRows lines read (for this rank) - newline terminated + std::string& lines ) const; - //- Helper: append data from all processors onto master - template<class Type> - static tmp<Field<Type>> gatherAndCombine(const Field<Type>& fld); - static void checkOrder(const wordList& regionNames); //- Perform the coupling with necessary initialization etc. diff --git a/src/functionObjects/field/externalCoupled/externalCoupledMixed/externalCoupledMixedFvPatchField.H b/src/functionObjects/field/externalCoupled/externalCoupledMixed/externalCoupledMixedFvPatchField.H index bfe1071a3b7217a70b7ad227e697d678ea7af59f..090cc3f8fdf875a794e40e783b8ed10a9bf57d48 100644 --- a/src/functionObjects/field/externalCoupled/externalCoupledMixed/externalCoupledMixedFvPatchField.H +++ b/src/functionObjects/field/externalCoupled/externalCoupledMixed/externalCoupledMixedFvPatchField.H @@ -118,15 +118,6 @@ public: const externalCoupledMixedFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new externalCoupledMixedFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference externalCoupledMixedFvPatchField ( @@ -134,16 +125,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new externalCoupledMixedFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/functionObjects/field/externalCoupled/externalCoupledTemperatureMixed/externalCoupledTemperatureMixedFvPatchScalarField.H b/src/functionObjects/field/externalCoupled/externalCoupledTemperatureMixed/externalCoupledTemperatureMixedFvPatchScalarField.H index c82d23b4dbb8b6db7d82102ffae660f262f944fc..55dbcd2bc9c4941d34aae7eff7418e5a171a38ac 100644 --- a/src/functionObjects/field/externalCoupled/externalCoupledTemperatureMixed/externalCoupledTemperatureMixedFvPatchScalarField.H +++ b/src/functionObjects/field/externalCoupled/externalCoupledTemperatureMixed/externalCoupledTemperatureMixedFvPatchScalarField.H @@ -205,15 +205,6 @@ public: const externalCoupledTemperatureMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new externalCoupledTemperatureMixedFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference externalCoupledTemperatureMixedFvPatchScalarField ( @@ -221,20 +212,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new externalCoupledTemperatureMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/functionObjects/field/externalCoupled/externalCoupledTemplates.C b/src/functionObjects/field/externalCoupled/externalCoupledTemplates.C index 34e99f62970ec9c794cdbf4040b165a714823999..814cc122d203a5d7eb09afa7562c5e9af0c7e2ec 100644 --- a/src/functionObjects/field/externalCoupled/externalCoupledTemplates.C +++ b/src/functionObjects/field/externalCoupled/externalCoupledTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2021 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,6 +33,7 @@ License #include "mixedFvPatchFields.H" #include "fixedGradientFvPatchFields.H" #include "fixedValueFvPatchFields.H" +#include "SpanStream.H" #include "StringStream.H" #include "globalIndex.H" @@ -58,7 +59,7 @@ bool Foam::functionObjects::externalCoupled::readData // File only opened on master; contains data for all processors, for all // patchIDs. autoPtr<IFstream> masterFilePtr; - if (Pstream::master()) + if (UPstream::master()) { const fileName transferFile ( @@ -80,13 +81,13 @@ bool Foam::functionObjects::externalCoupled::readData } - const wordRes patchSelection(one{}, groupName); + const wordRes patchSelection(Foam::one{}, groupName); label nFound = 0; for (const fvMesh& mesh : meshes) { - const volFieldType* vfptr = mesh.findObject<volFieldType>(fieldName); + auto* vfptr = mesh.getObjectPtr<volFieldType>(fieldName); if (!vfptr) { @@ -94,8 +95,7 @@ bool Foam::functionObjects::externalCoupled::readData } ++nFound; - typename volFieldType::Boundary& bf = - const_cast<volFieldType*>(vfptr)->boundaryFieldRef(); + auto& bf = vfptr->boundaryFieldRef(); // Get the patches const labelList patchIDs @@ -117,16 +117,18 @@ bool Foam::functionObjects::externalCoupled::readData ); // Read from master into local stream - OStringStream os; + std::string lines; readLines ( - bf[patchi].size(), // number of lines to read + bf[patchi].size(), // number of lines to read masterFilePtr, - os + lines ); + ISpanStream isstr(lines); + // Pass responsibility for all reading over to bc - pf.readData(IStringStream(os.str())()); + pf.readData(isstr); // Update the value from the read coefficient. Bypass any // additional processing by derived type. @@ -265,51 +267,6 @@ bool Foam::functionObjects::externalCoupled::readData } -template<class Type> -Foam::tmp<Foam::Field<Type>> -Foam::functionObjects::externalCoupled::gatherAndCombine -( - const Field<Type>& fld -) -{ - // Collect values from all processors - List<Field<Type>> gatheredValues(Pstream::nProcs()); - gatheredValues[Pstream::myProcNo()] = fld; - Pstream::gatherList(gatheredValues); - - - auto tresult = tmp<Field<Type>>::New(); - auto& result = tresult.ref(); - - if (Pstream::master()) - { - // Combine values into single field - label globalElemi = 0; - - forAll(gatheredValues, lsti) - { - globalElemi += gatheredValues[lsti].size(); - } - - result.setSize(globalElemi); - - globalElemi = 0; - - forAll(gatheredValues, lsti) - { - const Field<Type>& sub = gatheredValues[lsti]; - - forAll(sub, elemi) - { - result[globalElemi++] = sub[elemi]; - } - } - } - - return tresult; -} - - template<class Type> bool Foam::functionObjects::externalCoupled::writeData ( @@ -352,14 +309,14 @@ bool Foam::functionObjects::externalCoupled::writeData } - const wordRes patchSelection(one{}, groupName); + const wordRes patchSelection(Foam::one{}, groupName); bool headerDone = false; label nFound = 0; for (const fvMesh& mesh : meshes) { - const volFieldType* vfptr = mesh.findObject<volFieldType>(fieldName); + const auto* vfptr = mesh.getObjectPtr<volFieldType>(fieldName); if (!vfptr) { @@ -367,8 +324,7 @@ bool Foam::functionObjects::externalCoupled::writeData } ++nFound; - const typename volFieldType::Boundary& bf = - vfptr->boundaryField(); + const auto& bf = vfptr->boundaryField(); // Get the patches const labelList patchIDs @@ -379,7 +335,7 @@ bool Foam::functionObjects::externalCoupled::writeData // Handle column-wise writing of patch data. Supports most easy types for (const label patchi : patchIDs) { - const globalIndex globalFaces(bf[patchi].size()); + // const globalIndex globalFaces(bf[patchi].size()); if (isA<patchFieldType>(bf[patchi])) { @@ -397,7 +353,7 @@ bool Foam::functionObjects::externalCoupled::writeData // Collect contributions from all processors and output them on // master - if (Pstream::master()) + if (UPstream::master()) { // Output master data first if (!headerDone) @@ -407,27 +363,17 @@ bool Foam::functionObjects::externalCoupled::writeData } masterFilePtr() << os.str().c_str(); - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromSlave - ( - Pstream::commsTypes::scheduled, - proci - ); + string str; + IPstream::recv(str, proci); - string str(fromSlave); masterFilePtr() << str.c_str(); } } else { - OPstream toMaster - ( - Pstream::commsTypes::scheduled, - Pstream::masterNo() - ); - - toMaster << os.str(); + OPstream::send(os.str(), UPstream::masterNo()); } } else if (isA<mixedFvPatchField<Type>>(bf[patchi])) @@ -435,15 +381,21 @@ bool Foam::functionObjects::externalCoupled::writeData const mixedFvPatchField<Type>& pf = refCast<const mixedFvPatchField<Type>>(bf[patchi]); - Field<Type> value(gatherAndCombine(pf)); - Field<Type> snGrad(gatherAndCombine(pf.snGrad()())); - Field<Type> refValue(gatherAndCombine(pf.refValue())); - Field<Type> refGrad(gatherAndCombine(pf.refGrad())); - scalarField valueFraction(gatherAndCombine(pf.valueFraction())); + const globalIndex glob + ( + globalIndex::gatherOnly{}, + pf.size() + ); - if (Pstream::master()) + Field<Type> value(glob.gather(pf)); + Field<Type> snGrad(glob.gather(pf.snGrad()())); + Field<Type> refValue(glob.gather(pf.refValue())); + Field<Type> refGrad(glob.gather(pf.refGrad())); + scalarField valueFraction(glob.gather(pf.valueFraction())); + + if (UPstream::master()) { - forAll(refValue, facei) + forAll(value, facei) { masterFilePtr() << value[facei] << token::SPACE @@ -457,9 +409,17 @@ bool Foam::functionObjects::externalCoupled::writeData else { // Output the value and snGrad - Field<Type> value(gatherAndCombine(bf[patchi])); - Field<Type> snGrad(gatherAndCombine(bf[patchi].snGrad()())); - if (Pstream::master()) + + const globalIndex glob + ( + globalIndex::gatherOnly{}, + bf[patchi].size() + ); + + Field<Type> value(glob.gather(bf[patchi])); + Field<Type> snGrad(glob.gather(bf[patchi].snGrad()())); + + if (UPstream::master()) { forAll(value, facei) { diff --git a/src/functionObjects/field/extractEulerianParticles/extractEulerianParticles/extractEulerianParticles.C b/src/functionObjects/field/extractEulerianParticles/extractEulerianParticles/extractEulerianParticles.C index 3829d78322321d23ceb1caaab48303a101723ac4..c8e2c76cb505851c14def8c44476d0cfa89cf543 100644 --- a/src/functionObjects/field/extractEulerianParticles/extractEulerianParticles/extractEulerianParticles.C +++ b/src/functionObjects/field/extractEulerianParticles/extractEulerianParticles/extractEulerianParticles.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -531,9 +531,10 @@ bool Foam::functionObjects::extractEulerianParticles::execute() const volScalarField& alpha = mesh_.lookupObject<volScalarField>(alphaName_); - const surfaceScalarField alphaf + auto talphaf = surfaceScalarField::New ( - typeName + ":alphaf", + IOobject::scopedName(typeName, "alphaf"), + IOobject::NO_REGISTER, fvc::interpolate(alpha) ); @@ -546,7 +547,7 @@ bool Foam::functionObjects::extractEulerianParticles::execute() // Set the blocked faces, i.e. where alpha > alpha threshold value boolList blockedFaces(fz.size(), false); - setBlockedFaces(alphaf, fz, blockedFaces); + setBlockedFaces(talphaf(), fz, blockedFaces); // Split the faceZone according to the blockedFaces // - Returns a list of (disconnected) region index per face zone face @@ -567,7 +568,7 @@ bool Foam::functionObjects::extractEulerianParticles::execute() // Process latest region information tmp<surfaceScalarField> tphi = phiU(); - accumulateParticleInfo(alphaf, tphi(), regionFaceIDs, fz); + accumulateParticleInfo(talphaf(), tphi(), regionFaceIDs, fz); Log << " Collected particles : " << nCollectedParticles_ << nl << " Collected volume : " << collectedVolume_ << nl diff --git a/src/functionObjects/field/heatTransferCoeff/heatTransferCoeff.C b/src/functionObjects/field/heatTransferCoeff/heatTransferCoeff.C index 5c33fcdc62fed0ba95344d760056220c097f8e55..9c0925c30605ec068b97c7ddd2b14508bf746cce 100644 --- a/src/functionObjects/field/heatTransferCoeff/heatTransferCoeff.C +++ b/src/functionObjects/field/heatTransferCoeff/heatTransferCoeff.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,6 +71,7 @@ Foam::functionObjects::heatTransferCoeff::heatTransferCoeff { read(dict); + // scopedName? setResultName(typeName, "htc:" + htcModelPtr_->type()); auto* heatTransferCoeffPtr = @@ -80,7 +81,7 @@ Foam::functionObjects::heatTransferCoeff::heatTransferCoeff ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -89,7 +90,7 @@ Foam::functionObjects::heatTransferCoeff::heatTransferCoeff dimensionedScalar(dimPower/dimArea/dimTemperature, Zero) ); - mesh_.objectRegistry::store(heatTransferCoeffPtr); + regIOobject::store(heatTransferCoeffPtr); } diff --git a/src/functionObjects/field/heatTransferCoeff/multiphaseInterHtcModel/multiphaseInterHtcModel.C b/src/functionObjects/field/heatTransferCoeff/multiphaseInterHtcModel/multiphaseInterHtcModel.C index 206827e72ad98edb8eceb5721dcec83b30820686..c1b17947c3ebf99de92aab437c46792f21167a75 100644 --- a/src/functionObjects/field/heatTransferCoeff/multiphaseInterHtcModel/multiphaseInterHtcModel.C +++ b/src/functionObjects/field/heatTransferCoeff/multiphaseInterHtcModel/multiphaseInterHtcModel.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -127,6 +127,7 @@ Foam::functionObjects::multiphaseInterHtcModel::multiphaseInterHtcModel { read(dict); + // scopedName? setResultName(typeName, "htc:" + htcModelPtr_->type()); auto* htcPtr = @@ -136,7 +137,7 @@ Foam::functionObjects::multiphaseInterHtcModel::multiphaseInterHtcModel ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -145,7 +146,7 @@ Foam::functionObjects::multiphaseInterHtcModel::multiphaseInterHtcModel dimensionedScalar(dimPower/dimArea/dimTemperature, Zero) ); - mesh_.objectRegistry::store(htcPtr); + regIOobject::store(htcPtr); } diff --git a/src/functionObjects/field/heatTransferCoeff/reactingEulerHtcModel/reactingEulerHtcModel.C b/src/functionObjects/field/heatTransferCoeff/reactingEulerHtcModel/reactingEulerHtcModel.C index fa8108e9b3412f5eeea534374e5a81d9f5324a76..f9d403f7760c55783b10a22794d42568980497cc 100644 --- a/src/functionObjects/field/heatTransferCoeff/reactingEulerHtcModel/reactingEulerHtcModel.C +++ b/src/functionObjects/field/heatTransferCoeff/reactingEulerHtcModel/reactingEulerHtcModel.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -145,7 +145,7 @@ Foam::functionObjects::reactingEulerHtcModel::reactingEulerHtcModel ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -154,7 +154,7 @@ Foam::functionObjects::reactingEulerHtcModel::reactingEulerHtcModel dimensionedScalar(dimPower/dimArea/dimTemperature, Zero) ); - mesh_.objectRegistry::store(htcPtr); + regIOobject::store(htcPtr); } diff --git a/src/functionObjects/field/histogram/histogramModels/histogramModel/histogramModel.C b/src/functionObjects/field/histogram/histogramModels/histogramModel/histogramModel.C index 790f5c2348a510db3d828b59ea59b24253547d78..95feae0b32a4545098124d2c57afc307d390b789 100644 --- a/src/functionObjects/field/histogram/histogramModels/histogramModel/histogramModel.C +++ b/src/functionObjects/field/histogram/histogramModels/histogramModel/histogramModel.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,14 +66,14 @@ Foam::volScalarField& Foam::histogramModel::getOrReadField ( fieldName, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::AUTO_WRITE, IOobject::REGISTER ), mesh_ ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/functionObjects/field/interfaceHeight/interfaceHeight.C b/src/functionObjects/field/interfaceHeight/interfaceHeight.C index 5c0fe1998cd2a0325234b51847270676ac290f65..655e3186008824d335af60241137627b64bb9d6e 100644 --- a/src/functionObjects/field/interfaceHeight/interfaceHeight.C +++ b/src/functionObjects/field/interfaceHeight/interfaceHeight.C @@ -242,6 +242,12 @@ Foam::functionObjects::interfaceHeight::interfaceHeight { read(dict); resetNames({"height", "position"}); + + if (Pstream::master()) + { + writeFileHeader(fileID::heightFile); + writeFileHeader(fileID::positionFile); + } } diff --git a/src/functionObjects/field/limitFields/limitFieldsTemplates.C b/src/functionObjects/field/limitFields/limitFieldsTemplates.C index 0b20a6cbe2b1973274e5b0b4bdb60f2506c2ca49..25ab497be0d0f112ae4de9a8271c6e2f642e458e 100644 --- a/src/functionObjects/field/limitFields/limitFieldsTemplates.C +++ b/src/functionObjects/field/limitFields/limitFieldsTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,22 +49,36 @@ bool Foam::functionObjects::limitFields::limitField(const word& fieldName) if (withBounds_ & limitType::CLAMP_MIN) { - volScalarField mField(typeName + ":mag" + field.name(), mag(field)); + auto tmField = volScalarField::New + ( + IOobject::scopedName(typeName, "mag" + field.name()), + IOobject::NO_REGISTER, + mag(field) + ); + auto& mField = tmField.ref(); + Log << " min(|" << gMin(mField) << "|)"; //field.normalise(); field /= mag(field) + eps; mField.clamp_min(min_); - field *= mField; + field *= tmField; } if (withBounds_ & limitType::CLAMP_MAX) { - volScalarField mField(typeName + ":mag" + field.name(), mag(field)); + auto tmField = volScalarField::New + ( + IOobject::scopedName(typeName, "mag" + field.name()), + IOobject::NO_REGISTER, + mag(field) + ); + auto& mField = tmField.ref(); + Log << " max(|" << gMax(mField) << "|)"; //field.normalise(); field /= mag(field) + eps; mField.clamp_max(max_); - field *= mField; + field *= tmField; } return true; diff --git a/src/functionObjects/field/mapFields/mapFieldsTemplates.C b/src/functionObjects/field/mapFields/mapFieldsTemplates.C index 749def67a3b09b6b44eff8874fa3fc81e757e46b..58bd9572dca488982ca429b71baf34e292690d9e 100644 --- a/src/functionObjects/field/mapFields/mapFieldsTemplates.C +++ b/src/functionObjects/field/mapFields/mapFieldsTemplates.C @@ -36,48 +36,42 @@ void Foam::functionObjects::mapFields::evaluateConstraintTypes GeometricField<Type, fvPatchField, volMesh>& fld ) const { - auto& fldBf = fld.boundaryFieldRef(); + auto& bfld = fld.boundaryFieldRef(); const UPstream::commsTypes commsType = UPstream::defaultCommsType; - const label startOfRequests = UPstream::nRequests(); if ( - commsType == UPstream::commsTypes::blocking + commsType == UPstream::commsTypes::buffered || commsType == UPstream::commsTypes::nonBlocking ) { - forAll(fldBf, patchi) - { - fvPatchField<Type>& tgtField = fldBf[patchi]; + const label startOfRequests = UPstream::nRequests(); + for (auto& pfld : bfld) + { if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { - tgtField.initEvaluate(commsType); + pfld.initEvaluate(commsType); } } - // Wait for outstanding requests - if (commsType == UPstream::commsTypes::nonBlocking) - { - UPstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - forAll(fldBf, patchi) + for (auto& pfld : bfld) { - fvPatchField<Type>& tgtField = fldBf[patchi]; - if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { - tgtField.evaluate(commsType); + pfld.evaluate(commsType); } } } @@ -89,22 +83,21 @@ void Foam::functionObjects::mapFields::evaluateConstraintTypes for (const auto& schedEval : patchSchedule) { const label patchi = schedEval.patch; - - fvPatchField<Type>& tgtField = fldBf[patchi]; + auto& pfld = bfld[patchi]; if ( - tgtField.type() == tgtField.patch().patch().type() - && polyPatch::constraintType(tgtField.patch().patch().type()) + pfld.type() == pfld.patch().patch().type() + && polyPatch::constraintType(pfld.patch().patch().type()) ) { if (schedEval.init) { - tgtField.initEvaluate(commsType); + pfld.initEvaluate(commsType); } else { - tgtField.evaluate(commsType); + pfld.evaluate(commsType); } } } diff --git a/src/functionObjects/field/momentum/momentum.C b/src/functionObjects/field/momentum/momentum.C index 0162732793bbb69c4cdf8a17b8267bd96f4a7fe1..ed24a5837b52a7b42a561f019dad82dfa1757eb3 100644 --- a/src/functionObjects/field/momentum/momentum.C +++ b/src/functionObjects/field/momentum/momentum.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,13 +71,14 @@ Foam::functionObjects::momentum::newField ( scopedName(baseName), time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, + mesh_.thisDb(), + IOobjectOption::NO_READ, + IOobjectOption::NO_WRITE, registerObject ), mesh_, - dimensioned<typename GeoField::value_type>(dims, Zero) + Foam::zero{}, // value + dims ); } @@ -445,14 +446,14 @@ bool Foam::functionObjects::momentum::read(const dictionary& dict) { Info<< " Momentum fields will be written" << endl; - mesh_.objectRegistry::store + regIOobject::store ( newField<volVectorField>("momentum", dimVelocity*dimMass) ); if (hasCsys_) { - mesh_.objectRegistry::store + regIOobject::store ( newField<volVectorField>("angularMomentum", dimVelocity*dimMass) ); @@ -465,7 +466,7 @@ bool Foam::functionObjects::momentum::read(const dictionary& dict) { Info<< " Angular velocity will be written" << endl; - mesh_.objectRegistry::store + regIOobject::store ( newField<volVectorField>("angularVelocity", dimVelocity) ); diff --git a/src/functionObjects/field/momentumError/momentumError.C b/src/functionObjects/field/momentumError/momentumError.C index 6bbc1068fc000c8568394e36baa54600ffad97b4..fa467510e39ad80738cff3bc5a6c6aa7dfec0928 100644 --- a/src/functionObjects/field/momentumError/momentumError.C +++ b/src/functionObjects/field/momentumError/momentumError.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -154,53 +154,54 @@ Foam::functionObjects::momentumError::momentumError phi.dimensions()*dimVelocity/dimVolume ); - - volVectorField* momentPtr = nullptr; - - word momName(scopedName("momentError")); - if (zoneSubSetPtr_) { const fvMesh& subMesh = zoneSubSetPtr_->subsetter().subMesh(); // momentErrorMap - momentPtr = new volVectorField + volVectorField* fldPtr = new volVectorField ( IOobject ( scopedName("momentErrorMap"), subMesh.time().timeName(), - subMesh, + subMesh.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER ), subMesh, - dimensionedVector(momDims) + dimensionedVector(momDims, Zero) ); - subMesh.objectRegistry::store(momentPtr); + regIOobject::store(fldPtr); - momName = scopedName("momentErrorZone"); } - momentPtr = new volVectorField + const word momName = + ( + zoneSubSetPtr_ + ? scopedName("momentErrorZone") + : scopedName("momentError") + ); + + volVectorField* fldPtr = new volVectorField ( IOobject ( momName, time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER ), mesh_, - dimensionedVector(momDims) + dimensionedVector(momDims, Zero) ); - mesh_.objectRegistry::store(momentPtr); + regIOobject::store(fldPtr); } diff --git a/src/functionObjects/field/nearWallFields/findCellParticle.H b/src/functionObjects/field/nearWallFields/findCellParticle.H index c4238a66bae10cab29722e66fad5d83b417a5e3c..3c120921356985580115d395b32a90ee6215c740 100644 --- a/src/functionObjects/field/nearWallFields/findCellParticle.H +++ b/src/functionObjects/field/nearWallFields/findCellParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -144,14 +144,13 @@ public: bool newFormat = true ); - //- Construct and return a clone - autoPtr<particle> clone() const + //- Return a clone + virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new findCellParticle(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/functionObjects/field/pressure/pressure.C b/src/functionObjects/field/pressure/pressure.C index be7d849a2f33c153c8d907d9ce66c26e5b463469..712557669c6d1308c2618992657c85b1553c98b1 100644 --- a/src/functionObjects/field/pressure/pressure.C +++ b/src/functionObjects/field/pressure/pressure.C @@ -131,17 +131,10 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::rhoScale { if (p.dimensions() == dimPressure) { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "rhoScale", - p.mesh().time().timeName(), - p.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "rhoScale", + IOobject::NO_REGISTER, p, fvPatchFieldBase::calculatedType() ); @@ -236,21 +229,14 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::calcPressure ) const { // Initialise to the pressure reference level - auto tresult = - tmp<volScalarField>::New - ( - IOobject - ( - scopedName("p"), - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ - ), - mesh_, - dimensionedScalar("p", dimPressure, pRef_) - ); - - volScalarField& result = tresult.ref(); + auto tresult = volScalarField::New + ( + scopedName("p"), + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar("p", dimPressure, pRef_) + ); + auto& result = tresult.ref(); addHydrostaticContribution(p, result); @@ -304,7 +290,7 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::coeff if (mode_ & COEFF) { tmp<volScalarField> tpCoeff(tp.ptr()); - volScalarField& pCoeff = tpCoeff.ref(); + auto& pCoeff = tpCoeff.ref(); pCoeff -= dimensionedScalar("pInf", dimPressure, pInf_); @@ -325,21 +311,16 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::coeff bool Foam::functionObjects::pressure::calc() { - if (foundObject<volScalarField>(fieldName_)) + const auto* pptr = cfindObject<volScalarField>(fieldName_); + + if (pptr) { - const volScalarField& p = lookupObject<volScalarField>(fieldName_); + const auto& p = *pptr; - auto tp = tmp<volScalarField>::New + auto tp = volScalarField::New ( - IOobject - ( - resultName_, - p.mesh().time().timeName(), - p.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::REGISTER - ), + resultName_, + IOobject::REGISTER, coeff(calcPressure(p, rhoScale(p))) ); diff --git a/src/functionObjects/field/proudmanAcousticPower/proudmanAcousticPower.C b/src/functionObjects/field/proudmanAcousticPower/proudmanAcousticPower.C index 0718ae315f7406d702513501a4417e011e9706bd..4a002caeb250284d66ff94dd1d573d84ae2dc133 100644 --- a/src/functionObjects/field/proudmanAcousticPower/proudmanAcousticPower.C +++ b/src/functionObjects/field/proudmanAcousticPower/proudmanAcousticPower.C @@ -87,18 +87,13 @@ Foam::functionObjects::proudmanAcousticPower::a() const return sqrt(thermo.gamma()*thermo.p()/thermo.rho()); } - return - tmp<volScalarField>::New - ( - IOobject - ( - scopedName("a"), - mesh_.time().timeName(), - mesh_ - ), - mesh_, - aRef_ - ); + return volScalarField::New + ( + scopedName("a"), + IOobject::NO_REGISTER, + mesh_, + aRef_ + ); } diff --git a/src/functionObjects/field/reactionSensitivityAnalysis/reactionsSensitivityAnalysis.C b/src/functionObjects/field/reactionSensitivityAnalysis/reactionsSensitivityAnalysis.C index a0bc517f954172a1fa353032ec567b2e35686c75..4429bb803ba98b2f3506784d2cbc2e884ace1f8b 100644 --- a/src/functionObjects/field/reactionSensitivityAnalysis/reactionsSensitivityAnalysis.C +++ b/src/functionObjects/field/reactionSensitivityAnalysis/reactionsSensitivityAnalysis.C @@ -80,20 +80,14 @@ calculateSpeciesRR const basicChemistryModel& basicChemistry ) { - auto RRt = tmp<DimensionedField<scalar, volMesh>>::New + auto tRR = volScalarField::Internal::New ( - IOobject - ( - "RR", - time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "RR", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); - auto& RR = RRt.ref(); + auto& RR = tRR.ref(); scalar dt = time_.deltaTValue(); diff --git a/src/functionObjects/field/readFields/readFieldsTemplates.C b/src/functionObjects/field/readFields/readFieldsTemplates.C index 2ce668755fff39fc9bdc8e014e7472fe12b38919..5cf6018bdd1541514f394f3399602d17491b49b6 100644 --- a/src/functionObjects/field/readFields/readFieldsTemplates.C +++ b/src/functionObjects/field/readFields/readFieldsTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,7 +42,7 @@ bool Foam::functionObjects::readFields::loadAndStore(const IOobject& io) Log << " Reading " << io.name() << " (" << io.headerClassName() << ')' << endl; - mesh_.objectRegistry::store(new FieldType(io, mesh_)); + regIOobject::store(new FieldType(io, mesh_)); return true; } diff --git a/src/functionObjects/field/regionSizeDistribution/regionSizeDistribution.C b/src/functionObjects/field/regionSizeDistribution/regionSizeDistribution.C index a15639fe34362b71694d976e63a4512324456477..c5e86068c65b0f145ebf0f6259155e804bda377e 100644 --- a/src/functionObjects/field/regionSizeDistribution/regionSizeDistribution.C +++ b/src/functionObjects/field/regionSizeDistribution/regionSizeDistribution.C @@ -449,7 +449,8 @@ bool Foam::functionObjects::regionSizeDistribution::write() mesh_.time().timeName(), mesh_, IOobjectOption::MUST_READ, - IOobjectOption::NO_WRITE + IOobjectOption::NO_WRITE, + IOobjectOption::NO_REGISTER ), mesh_ ) @@ -535,18 +536,11 @@ bool Foam::functionObjects::regionSizeDistribution::write() { volScalarField region ( - IOobject - ( - "region", - mesh_.time().timeName(), - mesh_, - IOobjectOption::NO_READ, - IOobjectOption::NO_WRITE, - IOobjectOption::NO_REGISTER - ), + mesh_.newIOobject("region"), mesh_, dimensionedScalar(dimless, Zero) ); + Info<< " Dumping region as volScalarField to " << region.name() << endl; diff --git a/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModel.C b/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModel.C index fb86bca1efe83d92e3af3ed15a88bf2e13497e0b..947545c828e7d2847146c14106cb764d84669fad 100644 --- a/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModel.C +++ b/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModel.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,17 +45,10 @@ namespace Foam Foam::tmp<Foam::volScalarField> Foam::resolutionIndexModel::V() const { - auto tV = tmp<volScalarField>::New + auto tV = volScalarField::New ( - IOobject - ( - "V", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "V", + IOobject::NO_REGISTER, mesh_, dimVolume, fvPatchFieldBase::zeroGradientType() @@ -98,7 +91,7 @@ bool Foam::resolutionIndexModel::read(const dictionary& dict) ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::LAZY_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -108,7 +101,7 @@ bool Foam::resolutionIndexModel::read(const dictionary& dict) fvPatchFieldBase::zeroGradientType() ); - mesh_.objectRegistry::store(indexPtr); + regIOobject::store(indexPtr); } return true; diff --git a/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModelTemplates.C b/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModelTemplates.C index cdbe29b3d6c4fd7810478283e1d258b938338515..641e9ce1eff5490a20678ed935aacc81b5321538 100644 --- a/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModelTemplates.C +++ b/src/functionObjects/field/resolutionIndex/resolutionIndexModels/resolutionIndexModel/resolutionIndexModelTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,14 +46,14 @@ GeoFieldType& Foam::resolutionIndexModel::getOrReadField ( fieldName, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::AUTO_WRITE, IOobject::REGISTER ), mesh_ ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/functionObjects/field/setFlow/setFlow.C b/src/functionObjects/field/setFlow/setFlow.C index e2e165e7df78e6217dd372479de81d8d3c618339..dd26dccb607187329ac67545243cb564ee8132c2 100644 --- a/src/functionObjects/field/setFlow/setFlow.C +++ b/src/functionObjects/field/setFlow/setFlow.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -240,7 +240,7 @@ bool Foam::functionObjects::setFlow::execute() const volVectorField& C = mesh_.C(); const volVectorField d ( - typeName + ":d", + IOobject::scopedName(typeName, "d"), C - dimensionedVector("origin", dimLength, origin_) ); const scalarField x(d.component(vector::X)); @@ -286,7 +286,7 @@ bool Foam::functionObjects::setFlow::execute() const volVectorField d ( - typeName + ":d", + IOobject::scopedName(typeName, "d"), C - dimensionedVector("origin", dimLength, origin_) ); const scalarField x(d.component(vector::X)); @@ -350,7 +350,7 @@ bool Foam::functionObjects::setFlow::execute() const volVectorField d ( - typeName + ":d", + IOobject::scopedName(typeName, "d"), C - dimensionedVector("origin", dimLength, origin_) ); const scalarField x(d.component(vector::X)); diff --git a/src/functionObjects/field/stabilityBlendingFactor/stabilityBlendingFactor.C b/src/functionObjects/field/stabilityBlendingFactor/stabilityBlendingFactor.C index ef07ad51de7184ec10f98aa41ae1d0dfb2fe27ad..27a2371d19eec032294de753d43f3d4d04374a50 100644 --- a/src/functionObjects/field/stabilityBlendingFactor/stabilityBlendingFactor.C +++ b/src/functionObjects/field/stabilityBlendingFactor/stabilityBlendingFactor.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -65,7 +65,7 @@ Foam::functionObjects::stabilityBlendingFactor::indicator() ( "blendedIndicator" + fieldName_, time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -75,7 +75,7 @@ Foam::functionObjects::stabilityBlendingFactor::indicator() fvPatchFieldBase::zeroGradientType() ); - mesh_.objectRegistry::store(fldPtr); + regIOobject::store(fldPtr); } return *fldPtr; @@ -321,16 +321,10 @@ bool Foam::functionObjects::stabilityBlendingFactor::init(bool first) << exit(FatalError); } - auto tmagGradCC = tmp<volScalarField>::New + auto tmagGradCC = volScalarField::New ( - IOobject - ( - "magGradCC", - time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "magGradCC", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() @@ -340,20 +334,16 @@ bool Foam::functionObjects::stabilityBlendingFactor::init(bool first) for (direction i=0; i<vector::nComponents; i++) { // Create field with zero grad - volScalarField cci + auto tcci = volScalarField::New ( - IOobject - ( - "cc" + word(vector::componentNames[i]), - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "cc" + word(vector::componentNames[i]), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimLength, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& cci = tcci.ref(); + cci = mesh_.C().component(i); cci.correctBoundaryConditions(); magGradCC += mag(fvc::grad(cci)).ref(); @@ -394,21 +384,14 @@ bool Foam::functionObjects::stabilityBlendingFactor::init(bool first) << exit(FatalError); } - auto CoPtr = tmp<volScalarField>::New + auto CoPtr = volScalarField::New ( - IOobject - ( - "Co", - time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "Co", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() ); - auto& Co = CoPtr.ref(); Co.primitiveFieldRef() = @@ -533,17 +516,10 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor read(dict); setResultName(typeName, ""); - auto faceBlendedPtr = tmp<surfaceScalarField>::New + auto faceBlendedPtr = surfaceScalarField::New ( - IOobject - ( - resultName_, - time_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::REGISTER - ), + resultName_, + IOobject::REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); @@ -558,7 +534,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor ( nonOrthogonalityName_, mesh_.time().constant(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -567,7 +543,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor if (fieldHeader.typeHeaderOk<volScalarField>(true, true, false)) { auto* vfPtr = new volScalarField(fieldHeader, mesh_); - mesh_.objectRegistry::store(vfPtr); + regIOobject::store(vfPtr); } else { @@ -588,7 +564,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor ( faceWeightName_, mesh_.time().constant(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -597,7 +573,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor if (fieldHeader.typeHeaderOk<volScalarField>(true, true, false)) { auto* vfPtr = new volScalarField(fieldHeader, mesh_); - mesh_.objectRegistry::store(vfPtr); + regIOobject::store(vfPtr); } else { @@ -616,7 +592,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor ( skewnessName_, mesh_.time().constant(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -625,7 +601,7 @@ Foam::functionObjects::stabilityBlendingFactor::stabilityBlendingFactor if (fieldHeader.typeHeaderOk<volScalarField>(true, true, false)) { auto* vfPtr = new volScalarField(fieldHeader, mesh_); - mesh_.objectRegistry::store(vfPtr); + regIOobject::store(vfPtr); } else { diff --git a/src/functionObjects/field/streamFunction/streamFunction.C b/src/functionObjects/field/streamFunction/streamFunction.C index 741efa28d4a5e9416e46e4fdfbf0cd297b14fbf7..9380b1591d01da5cc6e09a0159ff69eccbe43142 100644 --- a/src/functionObjects/field/streamFunction/streamFunction.C +++ b/src/functionObjects/field/streamFunction/streamFunction.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,9 +77,10 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc pMesh, dimensionedScalar(phi.dimensions(), Zero) ); - pointScalarField& streamFunction = tstreamFunction.ref(); + auto& streamFunction = tstreamFunction.ref(); - labelList visitedPoint(mesh_.nPoints(), Zero); + + bitSet visitedPoint(mesh_.nPoints()); label nVisited = 0; label nVisitedOld = 0; @@ -87,10 +88,10 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc const faceUList& faces = mesh_.faces(); const pointField& points = mesh_.points(); - label nInternalFaces = mesh_.nInternalFaces(); + const label nInternalFaces = mesh_.nInternalFaces(); vectorField unitAreas(mesh_.faceAreas()); - unitAreas /= mag(unitAreas); + unitAreas.normalise(); const polyPatchList& patches = mesh_.boundaryMesh(); @@ -104,44 +105,57 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc { found = false; + // Check boundary faces first forAll(patches, patchi) { - const primitivePatch& bouFaces = patches[patchi]; + const auto& pp = patches[patchi]; + const auto& patchPhi = phi.boundaryField()[patchi]; + + // Skip empty, symmetry patches etc + if + ( + patchPhi.empty() + || isType<emptyPolyPatch>(pp) + || isType<symmetryPlanePolyPatch>(pp) + || isType<symmetryPolyPatch>(pp) + || isType<wedgePolyPatch>(pp) + ) + { + continue; + } - if (!isType<emptyPolyPatch>(patches[patchi])) + forAll(pp, facei) { - forAll(bouFaces, facei) - { - if (magSqr(phi.boundaryField()[patchi][facei]) < SMALL) - { - const labelList& zeroPoints = bouFaces[facei]; + const auto& f = pp[facei]; - // Zero flux face found - found = true; + if (magSqr(patchPhi[facei]) < SMALL) + { + // Zero flux face found + found = true; - forAll(zeroPoints, pointi) + for (const label pointi : f) + { + if (visitedPoint.test(pointi)) { - if (visitedPoint[zeroPoints[pointi]] == 1) - { - found = false; - break; - } + found = false; + break; } + } - if (found) - { - Log << " Zero face: patch: " << patchi - << " face: " << facei << endl; + if (found) + { + Log << " Zero face: patch: " << patchi + << " face: " << facei << endl; - forAll(zeroPoints, pointi) - { - streamFunction[zeroPoints[pointi]] = 0; - visitedPoint[zeroPoints[pointi]] = 1; - nVisited++; - } + for (const label pointi : f) + { + visitedPoint.set(pointi); + ++nVisited; - break; + streamFunction[pointi] = 0; } + + break; } } } @@ -152,20 +166,17 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc if (!found) { Log << " Zero flux boundary face not found. " - << "Using cell as a reference." - << endl; - - const cellList& c = mesh_.cells(); + << "Using cell as a reference." << endl; - forAll(c, ci) + for (const cell& c : mesh_.cells()) { - labelList zeroPoints = c[ci].labels(mesh_.faces()); + labelList zeroPoints = c.labels(mesh_.faces()); bool found = true; - forAll(zeroPoints, pointi) + for (const label pointi : zeroPoints) { - if (visitedPoint[zeroPoints[pointi]] == 1) + if (visitedPoint.test(pointi)) { found = false; break; @@ -174,11 +185,12 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc if (found) { - forAll(zeroPoints, pointi) + for (const label pointi : zeroPoints) { - streamFunction[zeroPoints[pointi]] = 0.0; - visitedPoint[zeroPoints[pointi]] = 1; - nVisited++; + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = 0; } break; @@ -201,132 +213,136 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc { finished = true; - for (label facei = nInternalFaces; facei<faces.size(); facei++) - { - const labelList& curBPoints = faces[facei]; - bool bPointFound = false; + scalar currentStreamValue(0); + point currentStreamPoint(Zero); - scalar currentBStream = 0.0; - vector currentBStreamPoint(0, 0, 0); + // Boundary faces first + forAll(patches, patchi) + { + const auto& pp = patches[patchi]; + const auto& patchPhi = phi.boundaryField()[patchi]; + + // Skip empty, symmetry patches etc + if + ( + patchPhi.empty() + || isType<emptyPolyPatch>(pp) + || isType<symmetryPlanePolyPatch>(pp) + || isType<symmetryPolyPatch>(pp) + || isType<wedgePolyPatch>(pp) + ) + { + continue; + } - forAll(curBPoints, pointi) + forAll(pp, facei) { + const auto& f = pp[facei]; + // Check if the point has been visited - if (visitedPoint[curBPoints[pointi]] == 1) + bool pointFound = false; + + for (const label pointi : f) { - // The point has been visited - currentBStream = streamFunction[curBPoints[pointi]]; - currentBStreamPoint = points[curBPoints[pointi]]; + if (visitedPoint.test(pointi)) + { + // The point has been visited + currentStreamValue = streamFunction[pointi]; + currentStreamPoint = points[pointi]; - bPointFound = true; + pointFound = true; + break; + } + } - break; + if (!pointFound) + { + finished = false; + continue; } - } - if (bPointFound) - { + // Sort out other points on the face - forAll(curBPoints, pointi) + for (const label pointi : f) { - // Check if the point has been visited - if (visitedPoint[curBPoints[pointi]] == 0) + // If the point has not yet been visited + if (!visitedPoint.test(pointi)) { - label patchNo = - mesh_.boundaryMesh().whichPatch(facei); - - if + vector edgeHat = ( - !isType<emptyPolyPatch>(patches[patchNo]) - && !isType<symmetryPlanePolyPatch> - (patches[patchNo]) - && !isType<symmetryPolyPatch>(patches[patchNo]) - && !isType<wedgePolyPatch>(patches[patchNo]) - ) - { - label faceNo = - mesh_.boundaryMesh()[patchNo] - .whichFace(facei); - - vector edgeHat = - points[curBPoints[pointi]] - - currentBStreamPoint; - edgeHat.replace(slabDir, 0); - edgeHat.normalise(); + points[pointi] - currentStreamPoint + ); + edgeHat.replace(slabDir, 0); + edgeHat.normalise(); - vector nHat = unitAreas[facei]; + const vector& nHat = unitAreas[facei]; - if (edgeHat.y() > VSMALL) - { - visitedPoint[curBPoints[pointi]] = 1; - nVisited++; - - streamFunction[curBPoints[pointi]] = - currentBStream - + phi.boundaryField()[patchNo][faceNo] - *sign(nHat.x()); - } - else if (edgeHat.y() < -VSMALL) + if (edgeHat.y() > VSMALL) + { + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + + patchPhi[facei]*sign(nHat.x()) + ); + } + else if (edgeHat.y() < -VSMALL) + { + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + - patchPhi[facei]*sign(nHat.x()) + ); + } + else + { + if (edgeHat.x() > VSMALL) { - visitedPoint[curBPoints[pointi]] = 1; - nVisited++; - - streamFunction[curBPoints[pointi]] = - currentBStream - - phi.boundaryField()[patchNo][faceNo] - *sign(nHat.x()); + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + + patchPhi[facei]*sign(nHat.y()) + ); } - else + else if (edgeHat.x() < -VSMALL) { - if (edgeHat.x() > VSMALL) - { - visitedPoint[curBPoints[pointi]] = 1; - nVisited++; - - streamFunction[curBPoints[pointi]] = - currentBStream - + phi.boundaryField()[patchNo][faceNo] - *sign(nHat.y()); - } - else if (edgeHat.x() < -VSMALL) - { - visitedPoint[curBPoints[pointi]] = 1; - nVisited++; - - streamFunction[curBPoints[pointi]] = - currentBStream - - phi.boundaryField()[patchNo][faceNo] - *sign(nHat.y()); - } + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + - patchPhi[facei]*sign(nHat.y()) + ); } } } } } - else - { - finished = false; - } } - for (label facei=0; facei<nInternalFaces; facei++) + // Internal faces next + for (label facei = 0; facei < nInternalFaces; ++facei) { - // Get the list of point labels for the face - const labelList& curPoints = faces[facei]; + const auto& f = faces[facei]; bool pointFound = false; - scalar currentStream = 0.0; - point currentStreamPoint(0, 0, 0); - - forAll(curPoints, pointi) + for (const label pointi : f) { // Check if the point has been visited - if (visitedPoint[curPoints[pointi]] == 1) + if (visitedPoint.test(pointi)) { - // The point has been visited - currentStream = streamFunction[curPoints[pointi]]; - currentStreamPoint = points[curPoints[pointi]]; + currentStreamValue = streamFunction[pointi]; + currentStreamPoint = points[pointi]; pointFound = true; break; @@ -336,36 +352,42 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc if (pointFound) { // Sort out other points on the face - forAll(curPoints, pointi) + for (const label pointi : f) { - // Check if the point has been visited - if (visitedPoint[curPoints[pointi]] == 0) + // If the point has not yet been visited + if (!visitedPoint.test(pointi)) { vector edgeHat = - points[curPoints[pointi]] - currentStreamPoint; + ( + points[pointi] - currentStreamPoint + ); edgeHat.replace(slabDir, 0); edgeHat.normalise(); - vector nHat = unitAreas[facei]; + const vector& nHat = unitAreas[facei]; if (edgeHat.y() > VSMALL) { - visitedPoint[curPoints[pointi]] = 1; - nVisited++; - - streamFunction[curPoints[pointi]] = - currentStream - + phi[facei]*sign(nHat.x()); + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + + phi[facei]*sign(nHat.x()) + ); } else if (edgeHat.y() < -VSMALL) { - visitedPoint[curPoints[pointi]] = 1; - nVisited++; - - streamFunction[curPoints[pointi]] = - currentStream - - phi[facei]*sign(nHat.x()); + visitedPoint.set(pointi); + ++nVisited; + + streamFunction[pointi] = + ( + currentStreamValue + - phi[facei]*sign(nHat.x()) + ); } } } @@ -397,7 +419,7 @@ Foam::tmp<Foam::pointScalarField> Foam::functionObjects::streamFunction::calc const scalar thickness = vector(slabNormal) & mesh_.bounds().span(); streamFunction /= thickness; - streamFunction.boundaryFieldRef() = 0.0; + streamFunction.boundaryFieldRef() = Zero; return tstreamFunction; } diff --git a/src/functionObjects/field/streamLine/streamLineParticle.C b/src/functionObjects/field/streamLine/streamLineParticle.C index c18415d524a0733442c9c7fd976ccd267296cfa3..9b43342a44880374fedd57ca67da61ca0275d52e 100644 --- a/src/functionObjects/field/streamLine/streamLineParticle.C +++ b/src/functionObjects/field/streamLine/streamLineParticle.C @@ -394,14 +394,14 @@ void Foam::streamLineParticle::readFields(Cloud<streamLineParticle>& c) IOField<label> lifeTime ( - c.fieldIOobject("lifeTime", IOobject::MUST_READ), + c.newIOobject("lifeTime", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, lifeTime); vectorFieldIOField sampledPositions ( - c.fieldIOobject("sampledPositions", IOobject::MUST_READ), + c.newIOobject("sampledPositions", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, sampledPositions); @@ -425,12 +425,12 @@ void Foam::streamLineParticle::writeFields(const Cloud<streamLineParticle>& c) IOField<label> lifeTime ( - c.fieldIOobject("lifeTime", IOobject::NO_READ), + c.newIOobject("lifeTime", IOobject::NO_READ), np ); vectorFieldIOField sampledPositions ( - c.fieldIOobject("sampledPositions", IOobject::NO_READ), + c.newIOobject("sampledPositions", IOobject::NO_READ), np ); diff --git a/src/functionObjects/field/streamLine/streamLineParticle.H b/src/functionObjects/field/streamLine/streamLineParticle.H index 9f8045f00bf392ae641aecd0be60a3c0b8797a50..53cec863832dfab9c0df23bd52740cb3498a153f 100644 --- a/src/functionObjects/field/streamLine/streamLineParticle.H +++ b/src/functionObjects/field/streamLine/streamLineParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -170,10 +170,10 @@ public: //- Construct copy streamLineParticle(const streamLineParticle& p); - //- Construct and return a clone - autoPtr<particle> clone() const + //- Return a clone + virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new streamLineParticle(*this)); + return particle::Clone(*this); } //- Factory class to read-construct particles used for parallel transfer diff --git a/src/functionObjects/field/surfaceDistance/surfaceDistance.C b/src/functionObjects/field/surfaceDistance/surfaceDistance.C index f7ad43ebc282bee1867a233d59ad503aad8997a4..d3362a971dd51d54b97d4147a0567e5d45b5bafa 100644 --- a/src/functionObjects/field/surfaceDistance/surfaceDistance.C +++ b/src/functionObjects/field/surfaceDistance/surfaceDistance.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -61,7 +61,7 @@ Foam::functionObjects::surfaceDistance::surfaceDistance ( "surfaceDistance", mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -71,7 +71,7 @@ Foam::functionObjects::surfaceDistance::surfaceDistance ) ); - mesh_.objectRegistry::store(distPtr); + regIOobject::store(distPtr); } diff --git a/src/functionObjects/field/turbulenceFields/turbulenceFieldsTemplates.C b/src/functionObjects/field/turbulenceFields/turbulenceFieldsTemplates.C index e30d45d52244127c5e0da0e5726c616ae60ea26e..a2a8ba5efcc4dfb110fcb8aa7ad5efee01ab89bc 100644 --- a/src/functionObjects/field/turbulenceFields/turbulenceFieldsTemplates.C +++ b/src/functionObjects/field/turbulenceFields/turbulenceFieldsTemplates.C @@ -77,9 +77,10 @@ Foam::functionObjects::turbulenceFields::nuTilda { const dimensionedScalar omega0(dimless/dimTime, SMALL); - return tmp<volScalarField>::New + return volScalarField::New ( "nuTilda.tmp", + IOobject::NO_REGISTER, model.k()/(model.omega() + omega0) ); } @@ -96,9 +97,10 @@ Foam::functionObjects::turbulenceFields::L const scalar Cmu = 0.09; const dimensionedScalar eps0(sqr(dimVelocity)/dimTime, SMALL); - return tmp<volScalarField>::New + return volScalarField::New ( "L.tmp", + IOobject::NO_REGISTER, pow(Cmu, 0.75)*pow(model.k(), 1.5)/(model.epsilon() + eps0) ); } @@ -116,9 +118,10 @@ Foam::functionObjects::turbulenceFields::I const volScalarField uPrime(sqrt((2.0/3.0)*model.k())); const dimensionedScalar U0(dimVelocity, SMALL); - return tmp<volScalarField>::New + return volScalarField::New ( "I.tmp", + IOobject::NO_REGISTER, uPrime/max(max(uPrime, mag(model.U())), U0) ); } diff --git a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.H b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.H index 9a49d00b16a0dfbcf0aa93c003a18173d06482b9..451b83a0ba0941bc49bdd2e1f0bf0d0b1bb32ab6 100644 --- a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.H +++ b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2019 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,7 +41,6 @@ SourceFiles #define Foam_wallBoundedParticle_H #include "particle.H" -#include "autoPtr.H" #include "InfoProxy.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -176,14 +175,13 @@ public: //- Construct copy wallBoundedParticle(const wallBoundedParticle& p); - //- Construct and return a clone - autoPtr<particle> clone() const + //- Return a clone + virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new wallBoundedParticle(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticleTemplates.C b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticleTemplates.C index 895f8104ae704a24d03546f1a91ab514e706ebd0..76efc17bfd8e5a8fedd6feaa1c927c57cc515cad 100644 --- a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticleTemplates.C +++ b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedParticleTemplates.C @@ -427,19 +427,19 @@ void Foam::wallBoundedParticle::readFields(TrackCloudType& c) IOField<point> localPosition ( - c.fieldIOobject("position", IOobject::MUST_READ) + c.newIOobject("position", IOobject::MUST_READ) ); c.checkFieldIOobject(c, localPosition); IOField<label> meshEdgeStart ( - c.fieldIOobject("meshEdgeStart", IOobject::MUST_READ) + c.newIOobject("meshEdgeStart", IOobject::MUST_READ) ); c.checkFieldIOobject(c, meshEdgeStart); IOField<label> diagEdge ( - c.fieldIOobject("diagEdge", IOobject::MUST_READ) + c.newIOobject("diagEdge", IOobject::MUST_READ) ); c.checkFieldIOobject(c, diagEdge); @@ -464,17 +464,17 @@ void Foam::wallBoundedParticle::writeFields(const TrackCloudType& c) IOField<point> localPosition ( - c.fieldIOobject("position", IOobject::NO_READ), + c.newIOobject("position", IOobject::NO_READ), np ); IOField<label> meshEdgeStart ( - c.fieldIOobject("meshEdgeStart", IOobject::NO_READ), + c.newIOobject("meshEdgeStart", IOobject::NO_READ), np ); IOField<label> diagEdge ( - c.fieldIOobject("diagEdge", IOobject::NO_READ), + c.newIOobject("diagEdge", IOobject::NO_READ), np ); diff --git a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.C b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.C index b57fe5c0f70f58cd8c4c6d8495b611c9d07cfbe8..766c3d2737cdde8b46bb0c0efedcd5e2c6b3b95d 100644 --- a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.C +++ b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.C @@ -213,13 +213,13 @@ void Foam::wallBoundedStreamLineParticle::readFields IOField<label> lifeTime ( - c.fieldIOobject("lifeTime", IOobject::MUST_READ) + c.newIOobject("lifeTime", IOobject::MUST_READ) ); c.checkFieldIOobject(c, lifeTime); vectorFieldIOField sampledPositions ( - c.fieldIOobject("sampledPositions", IOobject::MUST_READ) + c.newIOobject("sampledPositions", IOobject::MUST_READ) ); c.checkFieldIOobject(c, sampledPositions); @@ -244,12 +244,12 @@ void Foam::wallBoundedStreamLineParticle::writeFields IOField<label> lifeTime ( - c.fieldIOobject("lifeTime", IOobject::NO_READ), + c.newIOobject("lifeTime", IOobject::NO_READ), np ); vectorFieldIOField sampledPositions ( - c.fieldIOobject("sampledPositions", IOobject::NO_READ), + c.newIOobject("sampledPositions", IOobject::NO_READ), np ); diff --git a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.H b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.H index a40535ee15cc44f047832faef34547426d32af5a..d2f4548448f4139df5181e6631bf63981d3c90bd 100644 --- a/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.H +++ b/src/functionObjects/field/wallBoundedStreamLine/wallBoundedStreamLineParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,7 +40,6 @@ SourceFiles #define Foam_wallBoundedStreamLineParticle_H #include "wallBoundedParticle.H" -#include "autoPtr.H" #include "interpolation.H" #include "vectorList.H" #include "InfoProxy.H" @@ -181,14 +180,13 @@ public: //- Construct copy wallBoundedStreamLineParticle(const wallBoundedStreamLineParticle& p); - //- Construct and return a clone + //- Return a clone autoPtr<particle> clone() const { - return autoPtr<particle>(new wallBoundedStreamLineParticle(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C b/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C index a86d780a0fae6c55cc0faa914987ffc47e930a3b..70618231d07de63125c5d2e47d77ce6eacbe6d2e 100644 --- a/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C +++ b/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -108,6 +108,10 @@ Foam::functionObjects::wallHeatFlux::wallHeatFlux writeFile(obr_, name, typeName, dict), qrName_("qr") { + read(dict); + + writeFileHeader(file()); + volScalarField* wallHeatFluxPtr ( new volScalarField @@ -116,7 +120,7 @@ Foam::functionObjects::wallHeatFlux::wallHeatFlux ( scopedName(typeName), mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -126,11 +130,7 @@ Foam::functionObjects::wallHeatFlux::wallHeatFlux ) ); - mesh_.objectRegistry::store(wallHeatFluxPtr); - - read(dict); - - writeFileHeader(file()); + regIOobject::store(wallHeatFluxPtr); } @@ -146,7 +146,7 @@ bool Foam::functionObjects::wallHeatFlux::read(const dictionary& dict) dict.readIfPresent("qr", qrName_); wordRes patchNames; - labelHashSet patchSet(0); + labelHashSet patchSet; if (dict.readIfPresent("patches", patchNames) && !patchNames.empty()) { patchSet = pbm.patchSet(patchNames); diff --git a/src/functionObjects/field/wallShearStress/wallShearStress.C b/src/functionObjects/field/wallShearStress/wallShearStress.C index 83ce52c20288f0fdc8e5132d7c82ac24530f1925..1a7325e03f91ce10607b76951a2ce02b0433f2a6 100644 --- a/src/functionObjects/field/wallShearStress/wallShearStress.C +++ b/src/functionObjects/field/wallShearStress/wallShearStress.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -104,7 +104,7 @@ Foam::functionObjects::wallShearStress::wallShearStress ( scopedName(typeName), mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -114,7 +114,7 @@ Foam::functionObjects::wallShearStress::wallShearStress ) ); - mesh_.objectRegistry::store(wallShearStressPtr); + regIOobject::store(wallShearStressPtr); } @@ -131,7 +131,7 @@ bool Foam::functionObjects::wallShearStress::read(const dictionary& dict) const polyBoundaryMesh& pbm = mesh_.boundaryMesh(); wordRes patchNames; - labelHashSet patchSet(0); + labelHashSet patchSet; if (dict.readIfPresent("patches", patchNames) && !patchNames.empty()) { patchSet = pbm.patchSet(patchNames); diff --git a/src/functionObjects/field/yPlus/yPlus.C b/src/functionObjects/field/yPlus/yPlus.C index b175a154bf6f2108ba66a56d02b69dab0ee4a8a2..f9b5f3a3b532e9eaa1a1bf5e51384d820a64ee25 100644 --- a/src/functionObjects/field/yPlus/yPlus.C +++ b/src/functionObjects/field/yPlus/yPlus.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,7 +86,7 @@ Foam::functionObjects::yPlus::yPlus ( scopedName(typeName), mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -96,7 +96,7 @@ Foam::functionObjects::yPlus::yPlus ) ); - mesh_.objectRegistry::store(yPlusPtr); + regIOobject::store(yPlusPtr); } diff --git a/src/functionObjects/field/zeroGradient/zeroGradient.C b/src/functionObjects/field/zeroGradient/zeroGradient.C index d0b953252e05839f64f97d28dd6af4b9196e3ed9..a69b3cf2ef236d350eaea8b399527eb0eb168bc6 100644 --- a/src/functionObjects/field/zeroGradient/zeroGradient.C +++ b/src/functionObjects/field/zeroGradient/zeroGradient.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "zeroGradient.H" -#include "stringListOps.H" #include "volFields.H" #include "dictionary.H" #include "wordRes.H" @@ -135,7 +134,8 @@ bool Foam::functionObjects::zeroGradient::execute() { results_.clear(); - wordHashSet candidates(subsetStrings(selectFields_, mesh_.names())); + wordHashSet candidates(mesh_.names<regIOobject>(selectFields_)); + DynamicList<word> missing(selectFields_.size()); DynamicList<word> ignored(selectFields_.size()); diff --git a/src/functionObjects/field/zeroGradient/zeroGradientTemplates.C b/src/functionObjects/field/zeroGradient/zeroGradientTemplates.C index 0894b199d55e0d0d2d2c6a615a18648fa0afe9b7..0c6dcd4ecb9afa2e1b8898d978d367e59b569955 100644 --- a/src/functionObjects/field/zeroGradient/zeroGradientTemplates.C +++ b/src/functionObjects/field/zeroGradient/zeroGradientTemplates.C @@ -37,11 +37,9 @@ bool Foam::functionObjects::zeroGradient::accept const GeometricField<Type, fvPatchField, volMesh>& input ) { - const auto& patches = input.boundaryField(); - - forAll(patches, patchi) + for (const auto& pfld : input.boundaryField()) { - if (!polyPatch::constraintType(patches[patchi].patch().patch().type())) + if (!polyPatch::constraintType(pfld.patch().patch().type())) { return true; } diff --git a/src/functionObjects/forces/forceCoeffs/forceCoeffs.C b/src/functionObjects/forces/forceCoeffs/forceCoeffs.C index b749dcf81b1b220a088cb01ff82499902871ece0..bbad31544f27f2d39417104455666db5c2a16e9e 100644 --- a/src/functionObjects/forces/forceCoeffs/forceCoeffs.C +++ b/src/functionObjects/forces/forceCoeffs/forceCoeffs.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -63,18 +63,17 @@ void Foam::functionObjects::forceCoeffs::initialise() Foam::volVectorField& Foam::functionObjects::forceCoeffs::forceCoeff() { - auto* coeffPtr = - mesh_.getObjectPtr<volVectorField>(scopedName("forceCoeff")); + auto* ptr = mesh_.getObjectPtr<volVectorField>(scopedName("forceCoeff")); - if (!coeffPtr) + if (!ptr) { - coeffPtr = new volVectorField + ptr = new volVectorField ( IOobject ( scopedName("forceCoeff"), time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -83,27 +82,26 @@ Foam::volVectorField& Foam::functionObjects::forceCoeffs::forceCoeff() dimensionedVector(dimless, Zero) ); - mesh_.objectRegistry::store(coeffPtr); + regIOobject::store(ptr); } - return *coeffPtr; + return *ptr; } Foam::volVectorField& Foam::functionObjects::forceCoeffs::momentCoeff() { - auto* coeffPtr = - mesh_.getObjectPtr<volVectorField>(scopedName("momentCoeff")); + auto* ptr = mesh_.getObjectPtr<volVectorField>(scopedName("momentCoeff")); - if (!coeffPtr) + if (!ptr) { - coeffPtr = new volVectorField + ptr = new volVectorField ( IOobject ( scopedName("momentCoeff"), time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -112,10 +110,10 @@ Foam::volVectorField& Foam::functionObjects::forceCoeffs::momentCoeff() dimensionedVector(dimless, Zero) ); - mesh_.objectRegistry::store(coeffPtr); + regIOobject::store(ptr); } - return *coeffPtr; + return *ptr; } diff --git a/src/functionObjects/forces/forces/forces.C b/src/functionObjects/forces/forces/forces.C index b5caaf7b3c297f9c3479efe5b79155eb1b37b6a2..fd7ab2f8760b62c994f2e86f3453d0a010060903 100644 --- a/src/functionObjects/forces/forces/forces.C +++ b/src/functionObjects/forces/forces/forces.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -89,17 +89,17 @@ void Foam::functionObjects::forces::setCoordinateSystem Foam::volVectorField& Foam::functionObjects::forces::force() { - auto* forcePtr = mesh_.getObjectPtr<volVectorField>(scopedName("force")); + auto* ptr = mesh_.getObjectPtr<volVectorField>(scopedName("force")); - if (!forcePtr) + if (!ptr) { - forcePtr = new volVectorField + ptr = new volVectorField ( IOobject ( scopedName("force"), time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -108,26 +108,26 @@ Foam::volVectorField& Foam::functionObjects::forces::force() dimensionedVector(dimForce, Zero) ); - mesh_.objectRegistry::store(forcePtr); + regIOobject::store(ptr); } - return *forcePtr; + return *ptr; } Foam::volVectorField& Foam::functionObjects::forces::moment() { - auto* momentPtr = mesh_.getObjectPtr<volVectorField>(scopedName("moment")); + auto* ptr = mesh_.getObjectPtr<volVectorField>(scopedName("moment")); - if (!momentPtr) + if (!ptr) { - momentPtr = new volVectorField + ptr = new volVectorField ( IOobject ( scopedName("moment"), time_.timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -136,10 +136,10 @@ Foam::volVectorField& Foam::functionObjects::forces::moment() dimensionedVector(dimForce*dimLength, Zero) ); - mesh_.objectRegistry::store(momentPtr); + regIOobject::store(ptr); } - return *momentPtr; + return *ptr; } @@ -311,14 +311,10 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::forces::rho() const { if (rhoName_ == "rhoInf") { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "rho", - mesh_.time().timeName(), - mesh_ - ), + "rho", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimDensity, rhoRef_) ); diff --git a/src/functionObjects/forces/propellerInfo/propellerInfo.C b/src/functionObjects/forces/propellerInfo/propellerInfo.C index c6ed2737dd69b58ba9b3a70aef25520788e3a723..b080d929a36f502667bb78ac1fb0ffd9533d562f 100644 --- a/src/functionObjects/forces/propellerInfo/propellerInfo.C +++ b/src/functionObjects/forces/propellerInfo/propellerInfo.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -808,6 +808,7 @@ Foam::functionObjects::propellerInfo::propellerInfo ) : forces(name, runTime, dict, false), + dict_(dict), radius_(0), URefPtr_(nullptr), rotationMode_(rotationMode::SPECIFIED), @@ -827,7 +828,8 @@ Foam::functionObjects::propellerInfo::propellerInfo interpolationScheme_("cell"), wakeFilePtr_(nullptr), axialWakeFilePtr_(nullptr), - nanValue_(pTraits<scalar>::min) + nanValue_(pTraits<scalar>::min), + initialised_(false) { if (readFields) { @@ -855,21 +857,18 @@ bool Foam::functionObjects::propellerInfo::read(const dictionary& dict) { if (forces::read(dict)) { + dict_ = dict; + radius_ = dict.getScalar("radius"); URefPtr_.reset(Function1<scalar>::New("URef", dict, &mesh_)); rotationMode_ = rotationModeNames_.get("rotationMode", dict); - // Must be set before setting the surface - setCoordinateSystem(dict); - writePropellerPerformance_ = dict.get<bool>("writePropellerPerformance"); writeWakeFields_ = dict.get<bool>("writeWakeFields"); if (writeWakeFields_) { - setSampleDiskSurface(dict); - dict.readIfPresent("interpolationScheme", interpolationScheme_); dict.readIfPresent("nanValue", nanValue_); @@ -884,6 +883,19 @@ bool Foam::functionObjects::propellerInfo::read(const dictionary& dict) bool Foam::functionObjects::propellerInfo::execute() { + if (!initialised_) + { + // Must be set before setting the surface + setCoordinateSystem(dict_); + + if (writeWakeFields_) + { + setSampleDiskSurface(dict_); + } + + initialised_ = true; + } + calcForcesMoments(); createFiles(); diff --git a/src/functionObjects/forces/propellerInfo/propellerInfo.H b/src/functionObjects/forces/propellerInfo/propellerInfo.H index dfd464f0f81cee79da069d010eb8c18e9cf7519d..ad34bbbdac36adf632281b17b28e98f63347e296 100644 --- a/src/functionObjects/forces/propellerInfo/propellerInfo.H +++ b/src/functionObjects/forces/propellerInfo/propellerInfo.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -205,6 +205,9 @@ protected: // Protected data + //- Copy of dictionary used during construction + dictionary dict_; + //- Propeller radius scalar radius_; @@ -271,6 +274,9 @@ protected: //- scalar::min scalar nanValue_; + //- Initialised flag + bool initialised_; + // Protected Member Functions diff --git a/src/functionObjects/initialisation/hydrostaticPressure/hydrostaticPressure.C b/src/functionObjects/initialisation/hydrostaticPressure/hydrostaticPressure.C index 9bc7e256f01fc9076d6988cf74741b49bcffe507..1a98fad13cb730a77c80709efb0c33abf8697fa4 100644 --- a/src/functionObjects/initialisation/hydrostaticPressure/hydrostaticPressure.C +++ b/src/functionObjects/initialisation/hydrostaticPressure/hydrostaticPressure.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -182,7 +182,7 @@ Foam::functionObjects::hydrostaticPressure::hydrostaticPressure if (read(dict)) { // Read and store the initial ph_rgh field - volScalarField* ph_rghPtr = + volScalarField* ptr = new volScalarField ( IOobject @@ -197,7 +197,7 @@ Foam::functionObjects::hydrostaticPressure::hydrostaticPressure mesh_ ); - mesh_.objectRegistry::store(ph_rghPtr); + regIOobject::store(ptr); bool reInitialise = dict.getOrDefault("reInitialise", false); diff --git a/src/functionObjects/lagrangian/Make/files b/src/functionObjects/lagrangian/Make/files index e349d4f5454fbc240faf2ceb27ef1a052c0ea176..51e5c3b1128b7d52fb022c2488b0628c5cc3740a 100644 --- a/src/functionObjects/lagrangian/Make/files +++ b/src/functionObjects/lagrangian/Make/files @@ -5,5 +5,6 @@ icoUncoupledKinematicCloud/icoUncoupledKinematicCloud.C dsmcFields/dsmcFields.C vtkCloud/vtkCloud.C +ensightCloud/ensightCloudWriteObject.cxx LIB = $(FOAM_LIBBIN)/liblagrangianFunctionObjects diff --git a/src/functionObjects/lagrangian/dataCloud/dataCloud.C b/src/functionObjects/lagrangian/dataCloud/dataCloud.C index e34be5bc705d6697564e9131e2fe63d2a06c9831..8ff65489f56bccbc022631dff7b9be9f9dccf44d 100644 --- a/src/functionObjects/lagrangian/dataCloud/dataCloud.C +++ b/src/functionObjects/lagrangian/dataCloud/dataCloud.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,12 +52,16 @@ bool Foam::functionObjects::dataCloud::writeCloud const word& cloudName ) { - const auto* objPtr = mesh_.findObject<cloud>(cloudName); - if (!objPtr) + applyFilter_ = false; + + const auto* cloudPtr = mesh_.findObject<cloud>(cloudName); + if (!cloudPtr) { return false; } + const auto& currCloud = *cloudPtr; + objectRegistry obrTmp ( IOobject @@ -71,7 +75,7 @@ bool Foam::functionObjects::dataCloud::writeCloud ) ); - objPtr->writeObjects(obrTmp); + currCloud.writeObjects(obrTmp); const auto* pointsPtr = cloud::findIOPosition(obrTmp); @@ -86,7 +90,10 @@ bool Foam::functionObjects::dataCloud::writeCloud // Number of parcels (locally) - label nParcels = (applyFilter_ ? parcelAddr_.count() : pointsPtr->size()); + const label nParcels + ( + applyFilter_ ? parcelAddr_.count() : pointsPtr->size() + ); // Total number of parcels on all processes const label nTotParcels = returnReduce(nParcels, sumOp<label>()); @@ -104,9 +111,9 @@ bool Foam::functionObjects::dataCloud::writeCloud return false; } - if (Pstream::master()) + if (UPstream::master()) { - mkDir(outputName.path()); + Foam::mkDir(outputName.path()); } return @@ -163,12 +170,15 @@ bool Foam::functionObjects::dataCloud::read(const dictionary& dict) selectClouds_.clear(); dict.readIfPresent("clouds", selectClouds_); + selectClouds_.uniq(); if (selectClouds_.empty()) { - selectClouds_.resize(1); - selectClouds_.first() = - dict.getOrDefault<word>("cloud", cloud::defaultName); + word cloudName; + if (dict.readIfPresent("cloud", cloudName)) + { + selectClouds_.push_back(std::move(cloudName)); + } } dict.readEntry("field", fieldName_); @@ -209,7 +219,12 @@ bool Foam::functionObjects::dataCloud::execute() bool Foam::functionObjects::dataCloud::write() { - const wordList cloudNames(mesh_.sortedNames<cloud>(selectClouds_)); + const wordList cloudNames + ( + selectClouds_.empty() + ? mesh_.sortedNames<cloud>() + : mesh_.sortedNames<cloud>(selectClouds_) + ); if (cloudNames.empty()) { diff --git a/src/functionObjects/lagrangian/dataCloud/dataCloud.H b/src/functionObjects/lagrangian/dataCloud/dataCloud.H index 4943ccf1c7040c6637314b31429556a0db05c9cd..33b2791b6bb9a6a6d8861eb0abddb7cb72623bcc 100644 --- a/src/functionObjects/lagrangian/dataCloud/dataCloud.H +++ b/src/functionObjects/lagrangian/dataCloud/dataCloud.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,10 +48,10 @@ Description \heading Basic Usage \table Property | Description | Required | Default - type | Type name: dataCloud | yes | + type | Type name: dataCloud | yes | clouds | List of clouds (name or regex) | no | - cloud | Cloud name | no | defaultCloud - field | Name of the field | yes | + cloud | Cloud name | no | + field | Name of the field | yes | selection | Parcel selection control | no | empty-dict \endtable @@ -103,7 +103,7 @@ class dataCloud public fvMeshFunctionObject, public Foam::Detail::parcelSelection { - // Private data + // Private Data //- The printf format for zero-padding names string printf_; @@ -177,7 +177,7 @@ class dataCloud bool writeField ( const fileName& outputName, - const objectRegistry& obrTmp + const objectRegistry& obr ) const; diff --git a/src/functionObjects/lagrangian/dataCloud/dataCloudTemplates.C b/src/functionObjects/lagrangian/dataCloud/dataCloudTemplates.C index d2b6e16b1304d3d497c3eafa8438acfb18d8a669..d225a6ad2dfc1b6e7a421fbfd4cb93cd4ea9924b 100644 --- a/src/functionObjects/lagrangian/dataCloud/dataCloudTemplates.C +++ b/src/functionObjects/lagrangian/dataCloud/dataCloudTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -77,7 +77,7 @@ void Foam::functionObjects::dataCloud::writeListParallel const List<Type>& field ) { - if (Pstream::master()) + if (UPstream::master()) { writeList(os, points, field); @@ -85,9 +85,9 @@ void Foam::functionObjects::dataCloud::writeListParallel Field<Type> recvField; // Receive and write - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, proci); + IPstream fromProc(UPstream::commsTypes::scheduled, proci); fromProc >> recvPoints >> recvField; @@ -99,8 +99,8 @@ void Foam::functionObjects::dataCloud::writeListParallel // Send to master OPstream toMaster ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); toMaster @@ -134,7 +134,7 @@ void Foam::functionObjects::dataCloud::writeListParallel const bitSet& selected ) { - if (Pstream::master()) + if (UPstream::master()) { writeList(os, points, field, selected); @@ -142,9 +142,9 @@ void Foam::functionObjects::dataCloud::writeListParallel Field<Type> recvField; // Receive and write - for (const int proci : Pstream::subProcs()) + for (const int proci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, proci); + IPstream fromProc(UPstream::commsTypes::scheduled, proci); fromProc >> recvPoints >> recvField; @@ -156,8 +156,8 @@ void Foam::functionObjects::dataCloud::writeListParallel // Send to master OPstream toMaster ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); toMaster @@ -171,10 +171,10 @@ template<class Type> bool Foam::functionObjects::dataCloud::writeField ( const fileName& outputName, - const objectRegistry& obrTmp + const objectRegistry& obr ) const { - const auto* pointsPtr = cloud::findIOPosition(obrTmp); + const auto* pointsPtr = cloud::findIOPosition(obr); if (!pointsPtr) { @@ -185,8 +185,8 @@ bool Foam::functionObjects::dataCloud::writeField // Fields are not always on all processors (eg, multi-component parcels). // Thus need to resolve between all processors. - const List<Type>* fldPtr = obrTmp.findObject<IOField<Type>>(fieldName_); - const List<Type>& values = (fldPtr ? *fldPtr : List<Type>()); + const List<Type>* fldPtr = obr.findObject<IOField<Type>>(fieldName_); + const List<Type>& values = (fldPtr ? *fldPtr : List<Type>::null()); if (!returnReduceOr(fldPtr != nullptr)) { @@ -195,7 +195,7 @@ bool Foam::functionObjects::dataCloud::writeField autoPtr<OFstream> osPtr; - if (Pstream::master()) + if (UPstream::master()) { osPtr.reset(new OFstream(outputName)); osPtr->precision(precision_); diff --git a/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.H b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.H new file mode 100644 index 0000000000000000000000000000000000000000..ea10e6bcd748ef0258ccea902eac08d0f705690f --- /dev/null +++ b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.H @@ -0,0 +1,266 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::functionObjects::ensightCloudWriteObject + +Group + grpLagrangianFunctionObjects + +Description + This functionObject writes cloud(s) in ensight format + + Example of function object specification: + \verbatim + cloudWrite1 + { + type ensightCloud; + libs (lagrangianFunctionObjects); + writeControl writeTime; + writeInterval 1; + format ascii; + + timeFormat scientific; + timePrecision 5; + + cloud myCloud; + fields (T U rho); + width 4; // file-padding + + selection + { + stride + { + // every 10th parcelId + action add; + source stride; + stride 10; + } + Umin + { + // Remove slow parcels + action subtract; + source field; + field U; + accept (less 1e-3); + } + diam + { + // Only particular diameter ranges + action subset; + source field; + field d; + accept (greater 1e-3) and (less 1e-3); + } + } + } + \endverbatim + + \heading Basic Usage + \table + Property | Description | Required | Default + type | Type name: ensightCloud | yes | + clouds | List of clouds (name or regex) | no | + cloud | Cloud name | no | + fields | List of fields (name or regex) | no | + selection | Parcel selection control | no | empty-dict + \endtable + + \heading Output Options + \table + Property | Description | Required | Default + format | Format as ascii or binary | no | binary + width | Mask width for \c data/XXXX | no | 8 + directory | The output directory name | no | postProcessing/NAME + overwrite | Remove existing directory | no | false + consecutive | Consecutive output numbering | no | false + width | Padding width for file name | no | 8 + prune | Suppress writing of empty clouds | no | false + timeFormat | Time format (ensight case) | no | scientific + timePrecision | Time precision (ensight case) | no | 5 + writeControl | Output control | recommended | timeStep + \endtable + + The output filename and fields are added to the functionObjectProperties + information. For the previous example specification: + + \verbatim + cloudWrite1 + { + myCloud + { + file "<case>/simulation.case"; + fields (T U rho); + } + } + \endverbatim + +Note + The selection dictionary can be used for finer control of the parcel + output. It contains a set of (add,subtract,subset,clear,invert) + selection actions and sources. + Omitting the selection dictionary is the same as specifying the + conversion of all parcels (in the selected clouds). + More syntax details are to be found in the corresponding + Foam::Detail::parcelSelection class. + +See also + Foam::Detail::parcelSelection + Foam::functionObjects::vtkCloud + Foam::functionObjects::ensightWrite + Foam::functionObjects::fvMeshFunctionObject + Foam::functionObjects::timeControl + +SourceFiles + ensightCloudWriteObject.cxx + ensightCloudWriteObjectImpl.cxx + +\*---------------------------------------------------------------------------*/ + +#ifndef functionObjects_ensightCloudWriteObject_H +#define functionObjects_ensightCloudWriteObject_H + +#include "fvMeshFunctionObject.H" +#include "ensightCase.H" +#include "globalIndex.H" +#include "parcelSelectionDetail.H" +#include "wordRes.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +namespace functionObjects +{ + +/*---------------------------------------------------------------------------*\ + Class ensightCloudWriteObject Declaration +\*---------------------------------------------------------------------------*/ + +class ensightCloudWriteObject +: + public fvMeshFunctionObject, + public Foam::Detail::parcelSelection +{ + // Private Data + + //- Ensight output options + ensightCase::options caseOpts_; + + //- Output directory + fileName outputDir_; + + //- Consecutive output numbering + bool consecutive_; + + //- Suppress writing of empty clouds + bool pruneEmpty_; + + //- Apply output filter (for the current cloud) + bool applyFilter_; + + //- Sizing of selected parcels (including any filtering) + globalIndex procAddr_; + + //- Requested names of clouds to process + wordRes selectClouds_; + + //- Subset of cloud fields to process + wordRes selectFields_; + + //- Ensight case handler + autoPtr<ensightCase> ensCase_; + + + // Private Member Functions + + //- Ensight case handler + ensightCase& ensCase() { return *ensCase_; } + + //- Write a cloud to disk (creates parent directory), + //- and record on the cloud OutputProperties. + // \param file is the output file name, with extension. + bool writeCloud(const word& cloudName); + + //- Write fields of IOField<Type> + template<class Type> + wordList writeFields + ( + const word& cloudName, + const objectRegistry& obrTmp + ); + + + //- No copy construct + ensightCloudWriteObject(const ensightCloudWriteObject&) = delete; + + //- No copy assignment + void operator=(const ensightCloudWriteObject&) = delete; + + +public: + + //- Runtime type information + TypeName("ensightCloud"); + + + // Constructors + + //- Construct from Time and dictionary + ensightCloudWriteObject + ( + const word& name, + const Time& runTime, + const dictionary& dict + ); + + + //- Destructor + virtual ~ensightCloudWriteObject() = default; + + + // Member Functions + + //- Read the ensightCloud specification + virtual bool read(const dictionary& dict); + + //- Execute, currently does nothing + virtual bool execute(); + + //- Write fields + virtual bool write(); +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace functionObjects +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.cxx b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.cxx new file mode 100644 index 0000000000000000000000000000000000000000..c9a78982ea215c673a73c6c5cb7c3cd94c9a6827 --- /dev/null +++ b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObject.cxx @@ -0,0 +1,430 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "ensightCloudWriteObject.H" +#include "ensightCells.H" +#include "Cloud.H" +#include "dictionary.H" +#include "fvMesh.H" +#include "ensightOutputCloud.H" +#include "addToRunTimeSelectionTable.H" +#include "pointList.H" +#include "stringOps.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace functionObjects +{ + defineTypeNameAndDebug(ensightCloudWriteObject, 0); + + addToRunTimeSelectionTable + ( + functionObject, + ensightCloudWriteObject, + dictionary + ); +} +} + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Implementation +#include "ensightCloudWriteObjectImpl.cxx" + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +bool Foam::functionObjects::ensightCloudWriteObject::writeCloud +( + const word& cloudName +) +{ + applyFilter_ = false; + procAddr_.clear(); + + const auto* cloudPtr = mesh_.cfindObject<cloud>(cloudName); + if (!cloudPtr) + { + return false; + } + + const auto& currCloud = *cloudPtr; + + objectRegistry obrTmp + ( + IOobject + ( + "ensight::ensightCloud::" + cloudName, + mesh_.time().constant(), + mesh_, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ); + + currCloud.writeObjects(obrTmp); + + const auto* pointsPtr = cloud::findIOPosition(obrTmp); + + if (!pointsPtr) + { + // This should be impossible + return false; + } + + applyFilter_ = calculateFilter(obrTmp, log); + Pstream::reduceOr(applyFilter_); + + // Number of parcels (locally) + const label nParcels = + ( + applyFilter_ ? parcelAddr_.count() : pointsPtr->size() + ); + + // Gather sizes (offsets irrelevant) + procAddr_.reset(globalIndex::gatherOnly{}, nParcels); + + bool noCloud(!procAddr_.totalSize()); + Pstream::broadcast(noCloud); + + if (applyFilter_) + { + // Report filtered/unfiltered count + Log << "After filtering using " + << procAddr_.totalSize() << '/' + << (returnReduce(pointsPtr->size(), sumOp<label>())) + << " parcels" << nl; + } + + if (pruneEmpty_ && noCloud) + { + return false; + } + + + // Copy positions (for simplicity and for filtering). + // Store as floatVector, since that is what Ensight will write anyhow + + DynamicList<floatVector> positions; + positions.reserve(UPstream::master() ? procAddr_.maxSize() : nParcels); + + { + const auto& points = *pointsPtr; + + positions.resize_nocopy(nParcels); + + auto iter = positions.begin(); + + if (applyFilter_) + { + if (std::is_same<float, vector::cmptType>::value) + { + for (const label idx : parcelAddr_) + { + *iter = points[idx]; + ++iter; + } + } + else + { + for (const label idx : parcelAddr_) + { + const auto& pos = points[idx]; + + (*iter).x() = narrowFloat(pos.x()); + (*iter).y() = narrowFloat(pos.y()); + (*iter).z() = narrowFloat(pos.z()); + ++iter; + } + } + } + else + { + if (std::is_same<float, vector::cmptType>::value) + { + for (const auto& pos : points) + { + *iter = pos; + ++iter; + } + } + else + { + for (const auto& pos : points) + { + (*iter).x() = narrowFloat(pos.x()); + (*iter).y() = narrowFloat(pos.y()); + (*iter).z() = narrowFloat(pos.z()); + ++iter; + } + } + } + } + + + // Write positions + { + autoPtr<ensightFile> os = ensCase().newCloud(cloudName); + + ensightOutput::writeCloudPositions + ( + os.ref(), + positions, + procAddr_ + ); + } + + // Prevent any possible conversion of positions as a field + obrTmp.filterKeys + ( + [](const word& k) + { + return k.starts_with("position") || k.starts_with("coordinate"); + }, + true // prune + ); + + + // Write fields + + DynamicList<word> written(obrTmp.size() + currCloud.objectRegistry::size()); + + written.push_back + ( + writeFields<label>(cloudName, obrTmp) + ); + written.push_back + ( + writeFields<scalar>(cloudName, obrTmp) + ); + written.push_back + ( + writeFields<vector>(cloudName, obrTmp) + ); + + // Any cloudFunctions results + written.push_back + ( + writeFields<scalar>(cloudName, currCloud) + ); + + // Record information into the state (all processors) + // + // foName + // { + // cloudName + // { + // file "<case>/postProcessing/name/casename.case"; + // fields (U T rho); + // } + // } + + const fileName& file = ensCase().path(); + + // Case-local file name with "<case>" to make relocatable + dictionary propsDict; + propsDict.add + ( + "file", + time_.relativePath(file, true) + ); + propsDict.add("fields", written); + + setObjectProperty(name(), cloudName, propsDict); + + return true; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::functionObjects::ensightCloudWriteObject::ensightCloudWriteObject +( + const word& name, + const Time& runTime, + const dictionary& dict +) +: + fvMeshFunctionObject(name, runTime, dict), + caseOpts_("format", dict, IOstreamOption::BINARY), + outputDir_(), + consecutive_(false), + pruneEmpty_(false), + applyFilter_(false), + procAddr_() +{ + // May still want this? + // if (postProcess) + // { + // // Disable for post-process mode. + // // Emit as FatalError for the try/catch in the caller. + // FatalError + // << type() << " disabled in post-process mode" + // << exit(FatalError); + // } + + read(dict); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::functionObjects::ensightCloudWriteObject::read +( + const dictionary& dict +) +{ + fvMeshFunctionObject::read(dict); + + // Case/writer options + consecutive_ = dict.getOrDefault("consecutive", false); + + caseOpts_.width(dict.getOrDefault<label>("width", 8)); + caseOpts_.overwrite(dict.getOrDefault("overwrite", false)); + + caseOpts_.timeFormat("timeFormat", dict); + caseOpts_.timePrecision("timePrecision", dict); + + + pruneEmpty_ = dict.getOrDefault("prune", false); + + selectClouds_.clear(); + dict.readIfPresent("clouds", selectClouds_); + selectClouds_.uniq(); + if (selectClouds_.empty()) + { + word cloudName; + if (dict.readIfPresent("cloud", cloudName)) + { + selectClouds_.push_back(std::move(cloudName)); + } + } + + selectFields_.clear(); + dict.readIfPresent("fields", selectFields_); + selectFields_.uniq(); + + // Actions to define selection + parcelSelect_ = dict.subOrEmptyDict("selection"); + + + // Output directory + + outputDir_.clear(); + dict.readIfPresent("directory", outputDir_); + + if (outputDir_.size()) + { + // User-defined output directory + outputDir_.expand(); + if (!outputDir_.isAbsolute()) + { + outputDir_ = time_.globalPath()/outputDir_; + } + } + else + { + // Standard postProcessing/ naming + outputDir_ = time_.globalPath()/functionObject::outputPrefix/name(); + } + outputDir_.clean(); // Remove unneeded ".." + + return true; +} + + +bool Foam::functionObjects::ensightCloudWriteObject::execute() +{ + return true; +} + + +bool Foam::functionObjects::ensightCloudWriteObject::write() +{ + const wordList cloudNames + ( + selectClouds_.empty() + ? mesh_.sortedNames<cloud>() + : mesh_.sortedNames<cloud>(selectClouds_) + ); + + if (cloudNames.empty()) + { + return true; // skip - nothing available + } + + if (!ensCase_) + { + ensCase_.reset + ( + new ensightCase(outputDir_, time_.globalCaseName(), caseOpts_) + ); + + // Generate a (non-moving) dummy geometry + // - ParaView ensight-reader needs this, and usually ensight does too + autoPtr<ensightGeoFile> os = ensCase().newGeometry(false); + + if (os) + { + os->beginGeometry(); + } + ensightCells::writeBox(os.ref(), mesh_.bounds()); + } + + if (consecutive_) + { + ensCase().nextTime(time_.value()); + } + else + { + ensCase().setTime(time_.value(), time_.timeIndex()); + } + + Log << type() << ' ' << name() << " write" << nl; + + // Each cloud separately + for (const word& cloudName : cloudNames) + { + // writeCloud() includes mkDir (on master) + + if (writeCloud(cloudName)) + { + Log << " cloud : " << endl; + } + } + + ensCase().write(); // Flush case information + + return true; +} + + +// ************************************************************************* // diff --git a/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObjectImpl.cxx b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObjectImpl.cxx new file mode 100644 index 0000000000000000000000000000000000000000..01fcf08b14891f9d8347309bd2db1ebf6663e88f --- /dev/null +++ b/src/functionObjects/lagrangian/ensightCloud/ensightCloudWriteObjectImpl.cxx @@ -0,0 +1,106 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "IOField.H" +#include "ensightOutputCloud.H" + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +template<class Type> +Foam::wordList Foam::functionObjects::ensightCloudWriteObject::writeFields +( + const word& cloudName, + const objectRegistry& obrTmp +) +{ + static_assert + ( + ( + std::is_same<label, typename pTraits<Type>::cmptType>::value + || std::is_floating_point<typename pTraits<Type>::cmptType>::value + ), + "Label and Floating-point vector space only" + ); + + // Other integral types (eg, bool etc) would need cast/convert to label. + // Similarly for labelVector etc. + + + // Fields are not always on all processors (eg, multi-component parcels). + // Thus need to resolve names between all processors. + + wordList fieldNames = + ( + selectFields_.size() + ? obrTmp.names<IOField<Type>>(selectFields_) + : obrTmp.names<IOField<Type>>() + ); + + Pstream::combineReduce(fieldNames, ListOps::uniqueEqOp<word>()); + Foam::sort(fieldNames); // Consistent order + + DynamicList<Type> scratch; + + for (const word& fieldName : fieldNames) + { + const List<Type>* fldPtr = obrTmp.findObject<IOField<Type>>(fieldName); + const List<Type>& values = (fldPtr ? *fldPtr : List<Type>::null()); + + autoPtr<ensightFile> os = + ensCase().newCloudData<Type>(cloudName, fieldName); + + if (applyFilter_) + { + scratch.resize_nocopy(parcelAddr_.count()); + + auto iter = scratch.begin(); + + for (const label idx : parcelAddr_) + { + *iter = values[idx]; + ++iter; + } + + // TBD: + // recalculate globalIndex instead of relying on procAddr_ ? + + ensightOutput::writeCloudField(os.ref(), scratch, procAddr_); + } + else + { + // TBD: + // recalculate globalIndex instead of relying on procAddr_ ? + + ensightOutput::writeCloudField(os.ref(), values, procAddr_); + } + } + + return fieldNames; +} + + +// ************************************************************************* // diff --git a/src/functionObjects/lagrangian/vtkCloud/vtkCloud.C b/src/functionObjects/lagrangian/vtkCloud/vtkCloud.C index 08557fd4014a2dc2a7ff875280ad46d4e72f0cfa..223fa2feab4f4d391e6f907b997bf1606c2dd91e 100644 --- a/src/functionObjects/lagrangian/vtkCloud/vtkCloud.C +++ b/src/functionObjects/lagrangian/vtkCloud/vtkCloud.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,12 +101,16 @@ bool Foam::functionObjects::vtkCloud::writeCloud const word& cloudName ) { - const auto* objPtr = mesh_.findObject<cloud>(cloudName); - if (!objPtr) + applyFilter_ = false; + + const auto* cloudPtr = mesh_.cfindObject<cloud>(cloudName); + if (!cloudPtr) { return false; } + const auto& currCloud = *cloudPtr; + objectRegistry obrTmp ( IOobject @@ -120,7 +124,7 @@ bool Foam::functionObjects::vtkCloud::writeCloud ) ); - objPtr->writeObjects(obrTmp); + currCloud.writeObjects(obrTmp); const auto* pointsPtr = cloud::findIOPosition(obrTmp); @@ -135,7 +139,10 @@ bool Foam::functionObjects::vtkCloud::writeCloud // Number of parcels (locally) - label nParcels = (applyFilter_ ? parcelAddr_.count() : pointsPtr->size()); + const label nParcels + ( + applyFilter_ ? parcelAddr_.count() : pointsPtr->size() + ); // Total number of parcels on all processes const label nTotParcels = returnReduce(nParcels, sumOp<label>()); @@ -163,9 +170,9 @@ bool Foam::functionObjects::vtkCloud::writeCloud << exit(FatalError); } - if (Pstream::master()) + if (UPstream::master()) { - mkDir(file.path()); + Foam::mkDir(file.path()); os.open(file); format = writeOpts_.newFormatter(os); @@ -238,7 +245,7 @@ bool Foam::functionObjects::vtkCloud::writeCloud } - if (Pstream::master()) + if (UPstream::master()) { format().flush(); format().endDataArray(); @@ -270,7 +277,7 @@ bool Foam::functionObjects::vtkCloud::writeCloud // Write fields - if (Pstream::master()) + if (UPstream::master()) { if (useVerts_) { @@ -282,13 +289,28 @@ bool Foam::functionObjects::vtkCloud::writeCloud } } - DynamicList<word> written(obrTmp.size()); + DynamicList<word> written(obrTmp.size() + currCloud.objectRegistry::size()); - written.append(writeFields<label>(format, obrTmp, nTotParcels)); - written.append(writeFields<scalar>(format, obrTmp, nTotParcels)); - written.append(writeFields<vector>(format, obrTmp, nTotParcels)); + written.push_back + ( + writeFields<label>(format, obrTmp, nTotParcels) + ); + written.push_back + ( + writeFields<scalar>(format, obrTmp, nTotParcels) + ); + written.push_back + ( + writeFields<vector>(format, obrTmp, nTotParcels) + ); + + // Any cloudFunctions results + written.push_back + ( + writeFields<scalar>(format, currCloud, nTotParcels) + ); - if (Pstream::master()) + if (UPstream::master()) { if (useVerts_) { @@ -415,12 +437,15 @@ bool Foam::functionObjects::vtkCloud::read(const dictionary& dict) selectClouds_.clear(); dict.readIfPresent("clouds", selectClouds_); + selectClouds_.uniq(); if (selectClouds_.empty()) { - selectClouds_.resize(1); - selectClouds_.first() = - dict.getOrDefault<word>("cloud", cloud::defaultName); + word cloudName; + if (dict.readIfPresent("cloud", cloudName)) + { + selectClouds_.push_back(std::move(cloudName)); + } } selectFields_.clear(); @@ -463,7 +488,12 @@ bool Foam::functionObjects::vtkCloud::execute() bool Foam::functionObjects::vtkCloud::write() { - const wordList cloudNames(mesh_.sortedNames<cloud>(selectClouds_)); + const wordList cloudNames + ( + selectClouds_.empty() + ? mesh_.sortedNames<cloud>() + : mesh_.sortedNames<cloud>(selectClouds_) + ); if (cloudNames.empty()) { @@ -498,7 +528,7 @@ bool Foam::functionObjects::vtkCloud::write() Log << " cloud : " << time_.relativePath(outputName) << endl; - if (Pstream::master()) + if (UPstream::master()) { // Add to file-series and emit as JSON fileName seriesName(vtk::seriesWriter::base(outputName)); diff --git a/src/functionObjects/lagrangian/vtkCloud/vtkCloud.H b/src/functionObjects/lagrangian/vtkCloud/vtkCloud.H index 9511de0db04920d6f56f9baf26240ec60b9c7191..648414eb2c388a3e005d9641e0b53d1111af3623 100644 --- a/src/functionObjects/lagrangian/vtkCloud/vtkCloud.H +++ b/src/functionObjects/lagrangian/vtkCloud/vtkCloud.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -81,7 +81,7 @@ Description Property | Description | Required | Default type | Type name: vtkCloud | yes | clouds | List of clouds (name or regex) | no | - cloud | Cloud name | no | defaultCloud + cloud | Cloud name | no | fields | List of fields (name or regex) | no | selection | Parcel selection control | no | empty-dict \endtable @@ -160,7 +160,7 @@ class vtkCloud public fvMeshFunctionObject, public Foam::Detail::parcelSelection { - // Private data + // Private Data //- Writer options vtk::outputOptions writeOpts_; @@ -209,7 +209,7 @@ class vtkCloud wordList writeFields ( autoPtr<vtk::formatter>& format, - const objectRegistry& obrTmp, + const objectRegistry& obr, const label nTotParcels ) const; diff --git a/src/functionObjects/lagrangian/vtkCloud/vtkCloudTemplates.C b/src/functionObjects/lagrangian/vtkCloud/vtkCloudTemplates.C index c28bc1fe4c7a062b0afb21e07bcdf3c8f33ffd8b..f61c1de41e6679de0c8c88179ba00f9280bc353c 100644 --- a/src/functionObjects/lagrangian/vtkCloud/vtkCloudTemplates.C +++ b/src/functionObjects/lagrangian/vtkCloud/vtkCloudTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,7 +33,7 @@ template<class Type> Foam::wordList Foam::functionObjects::vtkCloud::writeFields ( autoPtr<vtk::formatter>& format, - const objectRegistry& obrTmp, + const objectRegistry& obr, const label nTotParcels ) const { @@ -55,16 +55,22 @@ Foam::wordList Foam::functionObjects::vtkCloud::writeFields // Fields are not always on all processors (eg, multi-component parcels). // Thus need to resolve names between all processors. - wordList fieldNames(obrTmp.names<IOField<Type>>()); + wordList fieldNames = + ( + selectFields_.size() + ? obr.names<IOField<Type>>(selectFields_) + : obr.names<IOField<Type>>() + ); + Pstream::combineReduce(fieldNames, ListOps::uniqueEqOp<word>()); Foam::sort(fieldNames); // Consistent order for (const word& fieldName : fieldNames) { - const List<Type>* fldPtr = obrTmp.findObject<IOField<Type>>(fieldName); - const List<Type>& values = (fldPtr ? *fldPtr : List<Type>()); + const List<Type>* fldPtr = obr.findObject<IOField<Type>>(fieldName); + const List<Type>& values = (fldPtr ? *fldPtr : List<Type>::null()); - if (Pstream::master()) + if (UPstream::master()) { if (std::is_same<label, typename pTraits<Type>::cmptType>::value) { @@ -93,7 +99,7 @@ Foam::wordList Foam::functionObjects::vtkCloud::writeFields vtk::writeListParallel(format.ref(), values); } - if (Pstream::master()) + if (UPstream::master()) { // Non-legacy format().flush(); diff --git a/src/functionObjects/phaseSystems/sizeDistribution/sizeDistribution.C b/src/functionObjects/phaseSystems/sizeDistribution/sizeDistribution.C index a3d4588ec7de29142a7a1ba976fe7078efd3e785..c6038cec9b3870dcc572e302f6bc5e459ac71c1a 100644 --- a/src/functionObjects/phaseSystems/sizeDistribution/sizeDistribution.C +++ b/src/functionObjects/phaseSystems/sizeDistribution/sizeDistribution.C @@ -243,7 +243,7 @@ Foam::functionObjects::sizeDistribution::filterField const scalarField& field ) const { - return tmp<scalarField>(new scalarField(field, cellId_)); + return tmp<scalarField>::New(field, cellId_); } diff --git a/src/functionObjects/randomProcesses/energySpectrum/energySpectrum.C b/src/functionObjects/randomProcesses/energySpectrum/energySpectrum.C index 0a8a159b28795ce6f27a9b5287b2e516fbc103cb..f36b4d276783382195c4154f732976dbd4b369e8 100644 --- a/src/functionObjects/randomProcesses/energySpectrum/energySpectrum.C +++ b/src/functionObjects/randomProcesses/energySpectrum/energySpectrum.C @@ -215,7 +215,7 @@ bool Foam::functionObjects::energySpectrum::write() if (Pstream::parRun()) { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; { UOPstream toMaster(Pstream::masterNo(), pBufs); diff --git a/src/functionObjects/solvers/electricPotential/electricPotential.C b/src/functionObjects/solvers/electricPotential/electricPotential.C index 6a83baee674da46ea15bc47c268c7a2e1a2e3d2d..ff931d858305837562e225ec5f5f4116ffc2a68d 100644 --- a/src/functionObjects/solvers/electricPotential/electricPotential.C +++ b/src/functionObjects/solvers/electricPotential/electricPotential.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,14 +59,14 @@ Foam::volScalarField& Foam::functionObjects::electricPotential::getOrReadField ( fieldName, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::REGISTER ), mesh_ ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; @@ -78,12 +78,7 @@ Foam::functionObjects::electricPotential::sigma() const { const IOobject sigmaIO ( - IOobject::scopedName(typeName, "sigma"), - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER + mesh_.thisDb().newIOobject(IOobject::scopedName(typeName, "sigma")) ); if (phases_.size()) @@ -125,12 +120,7 @@ Foam::functionObjects::electricPotential::epsilonm() const const IOobject epsilonrIO ( - IOobject::scopedName(typeName, "epsilonr"), - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER + mesh_.thisDb().newIOobject(IOobject::scopedName(typeName, "epsilonr")) ); if (phases_.size()) @@ -241,13 +231,14 @@ Foam::functionObjects::electricPotential::electricPotential ( Ename_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), -fvc::grad(eV) ); - mesh_.objectRegistry::store(ptr); + regIOobject::store(ptr); } } } @@ -408,17 +399,10 @@ bool Foam::functionObjects::electricPotential::write() // Write the current density field tmp<volScalarField> tsigma = this->sigma(); - auto eJ = tmp<volVectorField>::New + auto eJ = volVectorField::New ( - IOobject - ( - IOobject::scopedName(typeName, "J"), - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "J"), + IOobject::NO_REGISTER, -tsigma*fvc::grad(eV), fvPatchFieldBase::calculatedType() ); @@ -431,17 +415,10 @@ bool Foam::functionObjects::electricPotential::write() // Write the free-charge density field tmp<volScalarField> tepsilonm = this->epsilonm(); - auto erho = tmp<volScalarField>::New + auto erho = volScalarField::New ( - IOobject - ( - IOobject::scopedName(typeName, "rho"), - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "rho"), + IOobject::NO_REGISTER, fvc::div(tepsilonm*(-fvc::grad(eV))), fvPatchFieldBase::calculatedType() ); diff --git a/src/functionObjects/solvers/energyTransport/energyTransport.C b/src/functionObjects/solvers/energyTransport/energyTransport.C index ea5b022f117853cb267d42d18c7ca1c25b41a7cf..2a0ac81eba1c3d7b3e4bac39155d755f2765e978 100644 --- a/src/functionObjects/solvers/energyTransport/energyTransport.C +++ b/src/functionObjects/solvers/energyTransport/energyTransport.C @@ -93,9 +93,10 @@ Foam::functionObjects::energyTransport::kappaEff() const if (turbPtr) { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField + "kappaEff", + IOobject::NO_REGISTER, ( kappa() + Cp()*turbPtr->nut()*rho()/Prt_ ) @@ -113,17 +114,10 @@ Foam::functionObjects::energyTransport::kappaEff() const Foam::tmp<Foam::volScalarField> Foam::functionObjects::energyTransport::rho() const { - auto trho = tmp<volScalarField>::New + auto trho = volScalarField::New ( - IOobject - ( - "trho", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "trho", + IOobject::NO_REGISTER, mesh_, rho_ ); @@ -150,17 +144,10 @@ Foam::functionObjects::energyTransport::Cp() const return tCp; } - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "tCp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "tCp", + IOobject::NO_REGISTER, mesh_, Cp_ ); @@ -181,22 +168,16 @@ Foam::functionObjects::energyTransport::kappa() const return tkappa; } - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "tkappa", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "tkappa", + IOobject::NO_REGISTER, mesh_, kappa_ ); } + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::functionObjects::energyTransport::energyTransport @@ -404,16 +385,10 @@ bool Foam::functionObjects::energyTransport::execute() const surfaceScalarField CpPhi(rhoCp*phi); - auto trhoCp = tmp<volScalarField>::New + auto trhoCp = volScalarField::New ( - IOobject - ( - "trhoCp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "trhoCp", + IOobject::NO_REGISTER, mesh_, rhoCp ); diff --git a/src/functionObjects/solvers/scalarTransport/scalarTransport.C b/src/functionObjects/solvers/scalarTransport/scalarTransport.C index ec36978276013c0150671fadddad2263deb44362..f418519024d1bdad66f2dbd5a9245fef639de3f8 100644 --- a/src/functionObjects/solvers/scalarTransport/scalarTransport.C +++ b/src/functionObjects/solvers/scalarTransport/scalarTransport.C @@ -96,16 +96,10 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::scalarTransport::D if (constantD_) { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - Dname, - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + Dname, + IOobject::NO_REGISTER, mesh_, dimensionedScalar(Dname, phi.dimensions()/dimLength, D_) ); @@ -129,9 +123,10 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::scalarTransport::D if (turb) { - return tmp<volScalarField>::New + return volScalarField::New ( Dname, + IOobject::NO_REGISTER, alphaD_ * turb->nu() + alphaDt_ * turb->nut() ); } @@ -147,25 +142,20 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::scalarTransport::D if (turb) { - return tmp<volScalarField>::New + return volScalarField::New ( Dname, + IOobject::NO_REGISTER, alphaD_ * turb->mu() + alphaDt_ * turb->mut() ); } } - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - Dname, - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + Dname, + IOobject::NO_REGISTER, mesh_, dimensionedScalar(phi.dimensions()/dimLength, Zero) ); diff --git a/src/functionObjects/utilities/Make/files b/src/functionObjects/utilities/Make/files index 2e3e9c84f4a3807f525f6680eeb15a313dcc4291..aed6a6fa70dd76862b514715b14d950ddc2789c8 100644 --- a/src/functionObjects/utilities/Make/files +++ b/src/functionObjects/utilities/Make/files @@ -39,6 +39,8 @@ systemCall/systemCall.C timeActivatedFileUpdate/timeActivatedFileUpdate.C +viewFactorHeatFlux/viewFactorHeatFlux.C + writeDictionary/writeDictionary.C writeObjects/writeObjects.C diff --git a/src/functionObjects/utilities/caseInfo/caseInfo.C b/src/functionObjects/utilities/caseInfo/caseInfo.C index b64f328cee159a9b9ef496de6455f2d2e6248890..caec64d93553f16368cb894102a2bdd924ab2e3a 100644 --- a/src/functionObjects/utilities/caseInfo/caseInfo.C +++ b/src/functionObjects/utilities/caseInfo/caseInfo.C @@ -5,20 +5,24 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. + OpenFOAM is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + \*---------------------------------------------------------------------------*/ #include "caseInfo.H" @@ -333,16 +337,15 @@ void Foam::functionObjects::caseInfo::writeMeshStats namespace Foam { - template<class Type> + template<class GeoFieldType> void addPatchTypeDetails(const fvMesh& mesh, dictionary& dict) { - auto objects = mesh.lookupClass<Type>(); - for (const auto* objPtr : objects) + for (const GeoFieldType& obj : mesh.csorted<GeoFieldType>()) { - if (objPtr->readOpt() == IOobject::MUST_READ) + if (obj.readOpt() == IOobject::MUST_READ) { - const auto& bf = objPtr->boundaryField(); - dictionary& objDict = dict.subDictOrAdd(objPtr->name()); + const auto& bf = obj.boundaryField(); + dictionary& objDict = dict.subDictOrAdd(obj.name()); for (const auto& pf : bf) { @@ -459,14 +462,12 @@ bool Foam::functionObjects::caseInfo::write() writeFileDicts(dataDicts, dicts); // Per-region information - const auto meshes = time_.lookupClass<fvMesh>(); dictionary& regionDict = data.subDictOrAdd("regions"); - for (const auto& iter : meshes.csorted()) + + for (const fvMesh& mesh : time_.csorted<fvMesh>()) { dictionary meshDicts(dicts); - const fvMesh& mesh = *iter.val(); - const word& name = mesh.name(); dictionary& out = regionDict.subDictOrAdd(name); @@ -526,4 +527,4 @@ bool Foam::functionObjects::caseInfo::write() } -// ************************************************************************* // \ No newline at end of file +// ************************************************************************* // diff --git a/src/functionObjects/utilities/ensightWrite/ensightWrite.C b/src/functionObjects/utilities/ensightWrite/ensightWrite.C index 7b203564170df5688615e5eaa26b53c5588e13f5..9023f151bcf76693ac08ae1dd3691a63b04ca45b 100644 --- a/src/functionObjects/utilities/ensightWrite/ensightWrite.C +++ b/src/functionObjects/utilities/ensightWrite/ensightWrite.C @@ -237,14 +237,14 @@ bool Foam::functionObjects::ensightWrite::write() // Treat all geometry as moving, since we do not know a priori // if the simulation has mesh motion later on. autoPtr<ensightGeoFile> os = ensCase_().newGeometry(true); - ensMesh_().write(os); + ensMesh_().write(os.ref()); } // Output fields MUST be specified to avoid accidentally // writing everything. Can still use ".*" for everything - wordHashSet candidateNames(0); + wordHashSet candidateNames; if (!selectFields_.empty()) { diff --git a/src/functionObjects/utilities/syncObjects/syncObjects.C b/src/functionObjects/utilities/syncObjects/syncObjects.C index cd5b2c2a64207afeae1cffb6bd6e756395b89f86..d0735699ddbec9f13137bdc586022a3f9f8ee944 100644 --- a/src/functionObjects/utilities/syncObjects/syncObjects.C +++ b/src/functionObjects/utilities/syncObjects/syncObjects.C @@ -87,11 +87,7 @@ void Foam::functionObjects::syncObjects::sync() // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Note provision of explicit all-world communicator - PstreamBuffers pBufs - ( - UPstream::commGlobal(), - UPstream::commsTypes::nonBlocking - ); + PstreamBuffers pBufs(UPstream::commGlobal()); for (const int proci : pBufs.allProcs()) diff --git a/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.C b/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.C new file mode 100644 index 0000000000000000000000000000000000000000..2bc479fe5a71c179c9ba3f1a0f9c1794f645a60b --- /dev/null +++ b/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.C @@ -0,0 +1,372 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "viewFactorHeatFlux.H" +#include "addToRunTimeSelectionTable.H" +#include "volFields.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ +namespace functionObjects +{ + defineTypeNameAndDebug(viewFactorHeatFlux, 0); + addToRunTimeSelectionTable(functionObject, viewFactorHeatFlux, dictionary); +} +} + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +void Foam::functionObjects::viewFactorHeatFlux::initialise() +{ + const auto& pbm = mesh_.boundaryMesh(); + const labelList selectedPatches = pbm.indices("viewFactorWall"); + + + // Initialise output file + + auto& os = file(); + + writeHeader(os, "Radiation heat flux"); + writeCommented(os, "Time"); + + for (const label patchi : selectedPatches) + { + writeTabbed(os, pbm[patchi].name()); + } + + os << endl; + + + // Create compact patch addressing + + label nFace = 0; + forAll(selectedPatches, i) + { + const label patchi = selectedPatches[i]; + auto slice = compactPatchID_.slice(nFace, pbm[patchi].size()); + slice = i; + nFace += slice.size(); + } + + + if (Pstream::parRun()) + { + mapDistPtr_.reset + ( + new IOmapDistribute + ( + IOobject + ( + "mapDist", + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ) + ); + + auto& mapDist = mapDistPtr_(); + + mapDist.distribute(compactPatchID_); + + + // Convert global addressing into compact form + + labelList compactGlobalIds(mapDist.constructSize(), Zero); + + globalIndex gi(nFace); + + SubList<label>(compactGlobalIds, nFace) = identity(gi.range()); + + mapDist.distribute(compactGlobalIds); + + const label nTotalFaces = returnReduce(nFace, sumOp<label>()); + + const labelList globalToCompact(invert(nTotalFaces, compactGlobalIds)); + + for (labelList& visibleFaces : faceFaces_) + { + for (label& globalFacei : visibleFaces) + { + globalFacei = globalToCompact[globalFacei]; + } + } + } +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::functionObjects::viewFactorHeatFlux::viewFactorHeatFlux +( + const word& name, + const Time& runTime, + const dictionary& dict, + const bool readFields +) +: + fvMeshFunctionObject(name, runTime, dict), + writeFile(mesh_, name, typeName, dict), + qrName_(dict.getOrDefault<word>("qr", "qr")), + mapDistPtr_(nullptr), + faceFaces_ + ( + IOobject + ( + "globalFaceFaces", + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ), + Fij_ + ( + IOobject + ( + "F", + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ), + compactPatchID_(faceFaces_.size(), Zero) +{ + initialise(); +} + + +Foam::functionObjects::viewFactorHeatFlux::viewFactorHeatFlux +( + const word& name, + const objectRegistry& obr, + const dictionary& dict, + const bool readFields +) +: + fvMeshFunctionObject(name, obr, dict), + writeFile(mesh_, name, typeName, dict), + qrName_(dict.getOrDefault<word>("qr", "qr")), + mapDistPtr_(nullptr), + faceFaces_ + ( + IOobject + ( + "globalFaceFaces", + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ), + Fij_ + ( + IOobject + ( + "F", + mesh_.facesInstance(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ) + ), + compactPatchID_(faceFaces_.size(), Zero) +{ + initialise(); +} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +bool Foam::functionObjects::viewFactorHeatFlux::read(const dictionary& dict) +{ + if (fvMeshFunctionObject::read(dict)) + { + dict.readIfPresent("qr", qrName_); + + return true; + } + + return false; +} + + +bool Foam::functionObjects::viewFactorHeatFlux::execute() +{ + return true; +} + + +bool Foam::functionObjects::viewFactorHeatFlux::write() +{ + Log << type() << " " << name() << " write:" << nl; + + // Retrieve radiative heat flux field from the mesh database + + const auto* qrPtr = mesh_.cfindObject<volScalarField>(qrName_); + + if (qrPtr) + { + const auto& qr = *qrPtr; + + // const labelList selectedPatches = + // mesh_.boundaryMesh().indices + // ( + // radiation::viewFactor::viewFactorWalls + // ); + const labelList selectedPatches = + mesh_.boundaryMesh().indices("viewFactorWall"); + + const auto& pbm = mesh_.boundaryMesh(); + const label nPatch = selectedPatches.size(); + + // Accumulate qr per patch, and + // assemble qr contributions in compact addressing + scalarList qrPatch(nPatch, Zero); + scalarList compactQr(faceFaces_.size()); + + label compacti = 0; + forAll(selectedPatches, i) + { + const label patchi = selectedPatches[i]; + const auto& qrp = qr.boundaryField()[patchi]; + forAll(qrp, facei) + { + compactQr[compacti] = qrp[facei]; + qrPatch[i] += qrp[facei]; + ++compacti; + } + } + + reduce(qrPatch, sumOp<scalarList>()); + + + if (Pstream::parRun()) + { + mapDistPtr_->distribute(compactQr); + } + + // Populate view factor radiation heat flux matrix + scalarSquareMatrix qrVf(nPatch, Zero); + + forAll(Fij_, startFacei) + { + const scalar qr = compactQr[startFacei]; + const labelList& visibleSlots = faceFaces_[startFacei]; + const label i = compactPatchID_[startFacei]; + + forAll(visibleSlots, visSloti) + { + const label sloti = visibleSlots[visSloti]; + const label j = compactPatchID_[sloti]; + + qrVf[i][j] += Fij_[startFacei][visSloti]*qr; + } + } + + reduce(qrVf, sumOp<scalarSquareMatrix>()); + + if (Pstream::master()) + { + Log << " Writing patch totals to " << file().name() + << nl; + + // Write patch sums as time history + writeCurrentTime(file()); + + for (const auto& qrp : qrPatch) + { + file() << tab << qrp; + } + + file() << endl; + + + // Write view factor breakdown as matrix per write time + auto osPtr = newFileAtTime("viewFactorQr", mesh_.time().value()); + auto& os = osPtr(); + + Log << " Writing view factor breakdown to " << os.name() + << nl; + + + forAll(selectedPatches, i) + { + if (i == 0) + { + for (const label patchj : selectedPatches) + { + os << tab << pbm[patchj].name(); + } + os << nl; + } + + const label patchi = selectedPatches[i]; + + os << pbm[patchi].name();; + + forAll(selectedPatches, j) + { + os << tab << qrVf[i][j]; + } + + os << nl; + } + + os << endl; + } + } + + Log << endl; + + return true; +} + + +void Foam::functionObjects::viewFactorHeatFlux::updateMesh(const mapPolyMesh&) +{ + NotImplemented; +} + + +void Foam::functionObjects::viewFactorHeatFlux::movePoints(const polyMesh&) +{ + NotImplemented; +} + + +// ************************************************************************* // diff --git a/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.H b/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.H new file mode 100644 index 0000000000000000000000000000000000000000..235feaf234bfd1b7167383f3ceff369a9114afd6 --- /dev/null +++ b/src/functionObjects/utilities/viewFactorHeatFlux/viewFactorHeatFlux.H @@ -0,0 +1,181 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::functionObjects::viewFactorHeatFlux + +Description + Determines radiation heat flux between patches when using the viewFactor + radiation model. + +Usage + Minimal example by using \c system/controlDict.functions: + \verbatim + viewFactorHeatFlux1 + { + // Mandatory entries (unmodifiable) + type viewFactorHeatFlux; + libs (utilityFunctionObjects); + + // Optional entries (runtime modifiable) + qr qr; + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Req'd | Dflt + type | Type name: viewFactorHeatFlux | word | yes | - + libs | Library name: fieldFunctionObjects | word | yes | - + qr | Name of radiation heat flux field | word | no | qr + \endtable + +See also +- Foam::radiation::viewFactor + +SourceFiles + fvMeshFunctionObject.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_functionObjects_viewFactorHeatFlux +#define Foam_functionObjects_viewFactorHeatFlux + +#include "fvMeshFunctionObject.H" +#include "writeFile.H" +#include "IOmapDistribute.H" +#include "labelListIOList.H" +#include "scalarListIOList.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +namespace functionObjects +{ + +/*---------------------------------------------------------------------------*\ + Class viewFactorHeatFlux Declaration +\*---------------------------------------------------------------------------*/ + +class viewFactorHeatFlux +: + public fvMeshFunctionObject, + public writeFile +{ + // Private Data + + // Name of radiation heat flux field; default = qr + word qrName_; + + + // Fields generated by viewFactorsGen utility + + //- Map + autoPtr<IOmapDistribute> mapDistPtr_; + + //- Face addressing + labelListIOList faceFaces_; + + //- View factors + scalarListIOList Fij_; + + //- Patch indicies in compact addressing + scalarList compactPatchID_; + + + // Private Member Functions + + //- Initialise + void initialise(); + + +public: + + //- Runtime type information + TypeName("viewFactorHeatFlux"); + + + // Constructors + + //- Construct from Time and dictionary + viewFactorHeatFlux + ( + const word& name, + const Time& runTime, + const dictionary& dict, + const bool readFields = true + ); + + //- Construct from objectRegistry and dictionary + viewFactorHeatFlux + ( + const word& name, + const objectRegistry& obr, + const dictionary& dict, + const bool readFields = true + ); + + //- No copy construct + viewFactorHeatFlux(const viewFactorHeatFlux&) = delete; + + //- No copy assignment + void operator=(const viewFactorHeatFlux&) = delete; + + + //- Destructor + virtual ~viewFactorHeatFlux() = default; + + + // Member Functions + + //- Read the viewFactorHeatFlux data + virtual bool read(const dictionary&); + + //- No-op - all operations performed during the call to write() + virtual bool execute(); + + //- Write the viewFactorHeatFlux per patch + virtual bool write(); + + //- Update for changes of mesh + virtual void updateMesh(const mapPolyMesh&); + + //- Update for mesh point-motion + virtual void movePoints(const polyMesh&); +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace functionObjects +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/functionObjects/utilities/vtkWrite/vtkWrite.C b/src/functionObjects/utilities/vtkWrite/vtkWrite.C index ed322d5180c4b389e1cd0e95abae25d7a14eed16..6d808a1e903c095fd0909c5184a1abc4a21311bb 100644 --- a/src/functionObjects/utilities/vtkWrite/vtkWrite.C +++ b/src/functionObjects/utilities/vtkWrite/vtkWrite.C @@ -29,7 +29,7 @@ License #include "dictionary.H" #include "Time.H" #include "areaFields.H" -#include "stringListOps.H" +#include "stringListOps.H" // For stringListOps::foundOp() #include "foamVtkInternalWriter.H" #include "foamVtkPatchWriter.H" #include "foamVtkSeriesWriter.H" @@ -304,7 +304,7 @@ bool Foam::functionObjects::vtkWrite::write() // Output fields MUST be specified to avoid accidentally // writing everything. Can still use ".*" for everything - wordHashSet candidateNames(0); + wordHashSet candidateNames; if (!selectFields_.empty()) { diff --git a/src/fvAgglomerationMethods/pairPatchAgglomeration/pairPatchAgglomeration.C b/src/fvAgglomerationMethods/pairPatchAgglomeration/pairPatchAgglomeration.C index 16314968ad17d68b15aff962ff2707999654d3df..3db5770d1799b37f30293d17e2abb0e45e413ef3 100644 --- a/src/fvAgglomerationMethods/pairPatchAgglomeration/pairPatchAgglomeration.C +++ b/src/fvAgglomerationMethods/pairPatchAgglomeration/pairPatchAgglomeration.C @@ -664,8 +664,8 @@ Foam::tmp<Foam::labelField> Foam::pairPatchAgglomeration::agglomerateOneLevel { const label nFineFaces = patch.size(); - tmp<labelField> tcoarseCellMap(new labelField(nFineFaces, -1)); - labelField& coarseCellMap = tcoarseCellMap.ref(); + auto tcoarseCellMap = tmp<labelField>::New(nFineFaces, -1); + auto& coarseCellMap = tcoarseCellMap.ref(); const labelListList& faceFaces = patch.faceFaces(); diff --git a/src/fvMotionSolver/fvMotionSolvers/componentDisplacement/componentLaplacian/displacementComponentLaplacianFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/componentDisplacement/componentLaplacian/displacementComponentLaplacianFvMotionSolver.C index c0656e0516e149060fc79d80ef0ad39e9b6c04bc..541cc4882baa91673d2e68db748301940330e339 100644 --- a/src/fvMotionSolver/fvMotionSolvers/componentDisplacement/componentLaplacian/displacementComponentLaplacianFvMotionSolver.C +++ b/src/fvMotionSolver/fvMotionSolvers/componentDisplacement/componentLaplacian/displacementComponentLaplacianFvMotionSolver.C @@ -186,8 +186,8 @@ Foam::displacementComponentLaplacianFvMotionSolver::curPoints() const } else { - tmp<pointField> tcurPoints(new pointField(fvMesh_.points())); - pointField& curPoints = tcurPoints.ref(); + auto tcurPoints = tmp<pointField>::New(fvMesh_.points()); + auto& curPoints = tcurPoints.ref(); curPoints.replace ( diff --git a/src/fvMotionSolver/fvMotionSolvers/componentVelocity/componentLaplacian/velocityComponentLaplacianFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/componentVelocity/componentLaplacian/velocityComponentLaplacianFvMotionSolver.C index 68d95d1f981a185bde6a83352ceb587c6aaed84c..9fd45f1149add61e5808ba6f8cc76bc76327faba 100644 --- a/src/fvMotionSolver/fvMotionSolvers/componentVelocity/componentLaplacian/velocityComponentLaplacianFvMotionSolver.C +++ b/src/fvMotionSolver/fvMotionSolvers/componentVelocity/componentLaplacian/velocityComponentLaplacianFvMotionSolver.C @@ -104,7 +104,7 @@ Foam::velocityComponentLaplacianFvMotionSolver::curPoints() const pointMotionU_ ); - tmp<pointField> tcurPoints(new pointField(fvMesh_.points())); + auto tcurPoints = tmp<pointField>::New(fvMesh_.points()); tcurPoints.ref().replace ( diff --git a/src/fvMotionSolver/fvMotionSolvers/displacement/surfaceAlignedSBRStress/surfaceAlignedSBRStressFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/displacement/surfaceAlignedSBRStress/surfaceAlignedSBRStressFvMotionSolver.C index 0d6c19e100ce7088224aa1e595f860bc377f091a..f886e65d230e0ed5500f4b952c5e3ac931a23f3e 100644 --- a/src/fvMotionSolver/fvMotionSolvers/displacement/surfaceAlignedSBRStress/surfaceAlignedSBRStressFvMotionSolver.C +++ b/src/fvMotionSolver/fvMotionSolvers/displacement/surfaceAlignedSBRStress/surfaceAlignedSBRStressFvMotionSolver.C @@ -301,28 +301,18 @@ void Foam::surfaceAlignedSBRStressFvMotionSolver::solve() // Calculate rotations on surface intersection calculateCellRot(); - tmp<volVectorField> tUd + auto tUd = volVectorField::New ( - new volVectorField + "Ud", + IOobject::NO_REGISTER, + fvMesh_, + dimensionedVector(dimLength, Zero), + cellMotionBoundaryTypes<vector> ( - IOobject - ( - "Ud", - fvMesh_.time().timeName(), - fvMesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - fvMesh_, - dimensionedVector(dimLength, Zero), - cellMotionBoundaryTypes<vector> - ( - pointDisplacement().boundaryField() - ) + pointDisplacement().boundaryField() ) ); - - volVectorField& Ud = tUd.ref(); + auto& Ud = tUd.ref(); const vectorList& C = fvMesh_.C(); forAll(Ud, i) @@ -346,23 +336,14 @@ void Foam::surfaceAlignedSBRStressFvMotionSolver::solve() const volTensorField gradD("gradD", fvc::grad(Ud)); - tmp<volScalarField> tmu + auto tmu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "mu", - fvMesh_.time().timeName(), - fvMesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - fvMesh_, - dimensionedScalar(dimless, Zero) - ) + "mu", + IOobject::NO_REGISTER, + fvMesh_, + dimensionedScalar(dimless, Zero) ); - volScalarField& mu = tmu.ref(); + auto& mu = tmu.ref(); const scalarList& V = fvMesh_.V(); mu.primitiveFieldRef() = (1.0/V); diff --git a/src/fvMotionSolver/fvPatchFields/derived/cellMotion/cellMotionFvPatchField.H b/src/fvMotionSolver/fvPatchFields/derived/cellMotion/cellMotionFvPatchField.H index 17ef20543afa73bd6803c32c22a979781e7e4337..b175af60ee7452c8b9b876d994765dd976112479 100644 --- a/src/fvMotionSolver/fvPatchFields/derived/cellMotion/cellMotionFvPatchField.H +++ b/src/fvMotionSolver/fvPatchFields/derived/cellMotion/cellMotionFvPatchField.H @@ -94,15 +94,6 @@ public: const cellMotionFvPatchField<Type>& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new cellMotionFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference cellMotionFvPatchField ( @@ -110,16 +101,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new cellMotionFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/fvPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementFvPatchField.H b/src/fvMotionSolver/fvPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementFvPatchField.H index b94b01d5374c20c58454c156b3c0d9b36588a884..4afd37a988140c384df1898bbe96243068546593 100644 --- a/src/fvMotionSolver/fvPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementFvPatchField.H +++ b/src/fvMotionSolver/fvPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementFvPatchField.H @@ -108,15 +108,6 @@ public: slipFvPatchField<Type>(ptf) {} - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new surfaceSlipDisplacementFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference surfaceSlipDisplacementFvPatchField ( @@ -127,18 +118,22 @@ public: slipFvPatchField<Type>(ptf, iF) {} - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new surfaceSlipDisplacementFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } + virtual void write(Ostream& os) const { slipFvPatchField<Type>::write(os); diff --git a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C index f023d3c46a727f107b530c7b03c1f878a26b8ecc..6eea2f76757858e4ed53952191736399d5cc8727 100644 --- a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C +++ b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C @@ -28,7 +28,6 @@ License #include "inverseDistanceDiffusivity.H" #include "addToRunTimeSelectionTable.H" -#include "patchWave.H" #include "HashSet.H" #include "surfaceInterpolate.H" #include "zeroGradientFvPatchFields.H" diff --git a/src/fvMotionSolver/motionDiffusivity/inverseVolume/inverseVolumeDiffusivity.C b/src/fvMotionSolver/motionDiffusivity/inverseVolume/inverseVolumeDiffusivity.C index ff0582a84e419b0756512884ba9b63200d5c0314..49a6c7694f7008e62981b53a8f00c40c519b1cc8 100644 --- a/src/fvMotionSolver/motionDiffusivity/inverseVolume/inverseVolumeDiffusivity.C +++ b/src/fvMotionSolver/motionDiffusivity/inverseVolume/inverseVolumeDiffusivity.C @@ -27,7 +27,6 @@ License #include "inverseVolumeDiffusivity.H" #include "addToRunTimeSelectionTable.H" -#include "patchWave.H" #include "HashSet.H" #include "surfaceInterpolate.H" #include "zeroGradientFvPatchFields.H" diff --git a/src/fvMotionSolver/motionInterpolation/patchTransformed/patchTransformedInterpolation.C b/src/fvMotionSolver/motionInterpolation/patchTransformed/patchTransformedInterpolation.C index 24dfae4379c75d24688797bf0315d8456b9b047d..ce710d6c2540544755bd0ae594f0001c583e5dc2 100644 --- a/src/fvMotionSolver/motionInterpolation/patchTransformed/patchTransformedInterpolation.C +++ b/src/fvMotionSolver/motionInterpolation/patchTransformed/patchTransformedInterpolation.C @@ -132,9 +132,9 @@ void Foam::patchTransformedInterpolation::interpolate labelList pointDisplacementNSum(nPoints, Zero); vectorField pointDisplacementSum(nPoints, Zero); - forAll(patches_, patchI) + for (const label patchi : patches_) { - const polyPatch& patch(mesh().boundaryMesh()[patches_[patchI]]); + const polyPatch& patch = mesh().boundaryMesh()[patchi]; forAll(patch, pFaceI) { @@ -145,7 +145,7 @@ void Foam::patchTransformedInterpolation::interpolate const labelList cPoints(c.labels(mesh().faces())); // Consider movement around the face centre - const point& xOrigin(patch.faceCentres()[pFaceI]); + const point xOrigin(patch.faceCentres()[pFaceI]); // Mean translation const vector uMean(f.average(points, pointDisplacement)); diff --git a/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingDisplacement/angularOscillatingDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingDisplacement/angularOscillatingDisplacementPointPatchVectorField.H index fe7841d377553e2109f05f190c18029e2fd44660..47bd75de50b9c00b26539aed0fee595c632d4a7c 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingDisplacement/angularOscillatingDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingDisplacement/angularOscillatingDisplacementPointPatchVectorField.H @@ -95,18 +95,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new angularOscillatingDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference angularOscillatingDisplacementPointPatchVectorField ( @@ -114,20 +102,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new angularOscillatingDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingVelocity/angularOscillatingVelocityPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingVelocity/angularOscillatingVelocityPointPatchVectorField.H index b73fab2a6d55df0f88efea1d3ebeac77aab33ec3..cb5b72d83a4c4073688c8e11988004023cfc6d7f 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingVelocity/angularOscillatingVelocityPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/angularOscillatingVelocity/angularOscillatingVelocityPointPatchVectorField.H @@ -95,18 +95,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new angularOscillatingVelocityPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference angularOscillatingVelocityPointPatchVectorField ( @@ -114,20 +102,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new angularOscillatingVelocityPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/oscillatingDisplacement/oscillatingDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/oscillatingDisplacement/oscillatingDisplacementPointPatchVectorField.H index f77cec235380323822175f7fd4fffe6452a85f28..c3865b1dc1fad53d76e8e1b03ee015c0854cc857 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/oscillatingDisplacement/oscillatingDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/oscillatingDisplacement/oscillatingDisplacementPointPatchVectorField.H @@ -90,18 +90,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new oscillatingDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference oscillatingDisplacementPointPatchVectorField ( @@ -109,20 +97,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new oscillatingDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/oscillatingVelocity/oscillatingVelocityPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/oscillatingVelocity/oscillatingVelocityPointPatchVectorField.H index bacd84bc1e30fc8ace7758527ea0cb2775c28c2b..ca9628e2ac1225a129d21bda7304aa018e2e8ac3 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/oscillatingVelocity/oscillatingVelocityPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/oscillatingVelocity/oscillatingVelocityPointPatchVectorField.H @@ -92,18 +92,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new oscillatingVelocityPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference oscillatingVelocityPointPatchVectorField ( @@ -111,20 +99,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new oscillatingVelocityPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/surfaceDisplacement/surfaceDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/surfaceDisplacement/surfaceDisplacementPointPatchVectorField.H index 0c39ddc7d29fe1ceac8f11fd22c3b89a3e3639c3..7e78583f80d7f7932d5def0d64ff28fe53a5caba 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/surfaceDisplacement/surfaceDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/surfaceDisplacement/surfaceDisplacementPointPatchVectorField.H @@ -169,18 +169,6 @@ public: const surfaceDisplacementPointPatchVectorField& ); - //- Construct and return a clone - virtual autoPtr<pointPatchVectorField> clone() const - { - return autoPtr<pointPatchVectorField> - ( - new surfaceDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference surfaceDisplacementPointPatchVectorField ( @@ -188,22 +176,22 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference - virtual autoPtr<pointPatchVectorField> clone + virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchVectorField> - ( - new surfaceDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } + // Member Functions //- Surface to follow. Demand loads surfaceNames. diff --git a/src/fvMotionSolver/pointPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementPointPatchVectorField.H index 2a46c18454633d7e42a4b8d23003b7098d8ec87d..a65d3d791079041503ed5626a7b7dc445c69bf3e 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/surfaceSlipDisplacement/surfaceSlipDisplacementPointPatchVectorField.H @@ -159,18 +159,6 @@ public: const surfaceSlipDisplacementPointPatchVectorField& ); - //- Construct and return a clone - virtual autoPtr<pointPatchVectorField> clone() const - { - return autoPtr<pointPatchVectorField> - ( - new surfaceSlipDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference surfaceSlipDisplacementPointPatchVectorField ( @@ -178,22 +166,22 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference - virtual autoPtr<pointPatchVectorField> clone + virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchVectorField> - ( - new surfaceSlipDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } + // Member Functions //- Surface to follow. Demand loads surfaceNames. @@ -202,7 +190,7 @@ public: //- Update the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write diff --git a/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.C b/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.C index e2475907e113c52c7f39c2bc06f4615ded5a24fe..73f892343927fffc42ef4ce706d0dbb0a20e6113 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.C +++ b/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.C @@ -107,7 +107,7 @@ timeVaryingMappedFixedValuePointPatchField // of the pointPatchField::updated_ flag. This is // so if first use is in the next time step it retriggers // a new update. - pointPatchField<Type>::evaluate(Pstream::commsTypes::blocking); + pointPatchField<Type>::evaluate(Pstream::commsTypes::buffered); } } diff --git a/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.H b/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.H index 2dedce3d9111691a6dda3eb03ab1975b5bb56c97..18804b5fc03c73420f2ab77fe63b48864f6c5c30 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValuePointPatchField.H @@ -161,15 +161,6 @@ public: const timeVaryingMappedFixedValuePointPatchField<Type>& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new timeVaryingMappedFixedValuePointPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingMappedFixedValuePointPatchField ( @@ -177,16 +168,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new timeVaryingMappedFixedValuePointPatchField<Type>(*this, iF) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/uniformInterpolatedDisplacement/uniformInterpolatedDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/uniformInterpolatedDisplacement/uniformInterpolatedDisplacementPointPatchVectorField.H index e8105cd39de95ebdd53e21829a5d515905829040..d591e49894952dcbbe4cc6095a10ca5e153dcdc8 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/uniformInterpolatedDisplacement/uniformInterpolatedDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/uniformInterpolatedDisplacement/uniformInterpolatedDisplacementPointPatchVectorField.H @@ -129,18 +129,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new uniformInterpolatedDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference uniformInterpolatedDisplacementPointPatchVectorField ( @@ -148,20 +136,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new uniformInterpolatedDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvMotionSolver/pointPatchFields/derived/waveDisplacement/waveDisplacementPointPatchVectorField.H b/src/fvMotionSolver/pointPatchFields/derived/waveDisplacement/waveDisplacementPointPatchVectorField.H index 284ad8e84cca84fe40cd0c8170bae1ad9e1e3492..7449a2036713638b86c1518b4a8a949468a19970 100644 --- a/src/fvMotionSolver/pointPatchFields/derived/waveDisplacement/waveDisplacementPointPatchVectorField.H +++ b/src/fvMotionSolver/pointPatchFields/derived/waveDisplacement/waveDisplacementPointPatchVectorField.H @@ -91,18 +91,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new waveDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference waveDisplacementPointPatchVectorField ( @@ -110,20 +98,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new waveDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/fvOptions/cellSetOption/cellSetOption.C b/src/fvOptions/cellSetOption/cellSetOption.C index 87a9461a2ae817539977ef005105cdfeec12cdec..b5117ada94d7c5b24d9f81548919c0f1088366f9 100644 --- a/src/fvOptions/cellSetOption/cellSetOption.C +++ b/src/fvOptions/cellSetOption/cellSetOption.C @@ -408,9 +408,13 @@ bool Foam::fv::cellSetOption::isActive() // Report new volume (if changed) setVol(); } - else if (selectionMode_ == smMovingPoints) + else if + ( + selectionMode_ == smMovingPoints + || selectionMode_ == smGeometric + ) { - // Update the cell selection if it moves + // Update the cell selection even if mesh is not moving setCellSelection(); setVol(); } diff --git a/src/fvOptions/cellSetOption/cellSetOption.H b/src/fvOptions/cellSetOption/cellSetOption.H index aa020ef8490a4af5bc784f3acd138b9024ca37a4..e45c5adce7f6d6ec7b3ef54b53f30d422cb224a0 100644 --- a/src/fvOptions/cellSetOption/cellSetOption.H +++ b/src/fvOptions/cellSetOption/cellSetOption.H @@ -122,6 +122,7 @@ Usage points | Use cells containing a given set of points movingPoints | Use cells containing a given set of moving points geometric | Select cells based on topoSetCellSource actions + cellType | For overset only : use cells of type 'porous \endverbatim The inherited entries are elaborated in: diff --git a/src/fvOptions/constraints/general/mapFieldConstraint/MapFieldConstraint.C b/src/fvOptions/constraints/general/mapFieldConstraint/MapFieldConstraint.C index 1d18b8960b2bb53ecab1529e15039f50420e8769..6aeb9d82ed2b7acc679743cfae986388ef21df7e 100644 --- a/src/fvOptions/constraints/general/mapFieldConstraint/MapFieldConstraint.C +++ b/src/fvOptions/constraints/general/mapFieldConstraint/MapFieldConstraint.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,30 +34,23 @@ License namespace Foam { -namespace fv -{ + static inline tmp<volScalarField> createField ( const fvMesh& mesh, const scalar val ) { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - polyMesh::defaultRegion, - mesh.time().timeName(), - mesh, - IOobjectOption::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + polyMesh::defaultRegion, + IOobject::NO_REGISTER, mesh, - dimensionedScalar(dimless, val) + val, + dimless ); } -} // End namespace fv + } // End namespace Foam @@ -157,14 +150,14 @@ VolFieldType& Foam::fv::MapFieldConstraint<Type>::getOrReadField ( fieldName, thisMesh.time().timeName(), - thisMesh, + thisMesh.thisDb(), IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::REGISTER ), thisMesh ); - thisMesh.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/fvOptions/corrections/limitTemperature/limitTemperature.C b/src/fvOptions/corrections/limitTemperature/limitTemperature.C index a20234f1a26fa3ae5750d8d17abe589f3cddd518..87781b19283d3c788a395e27b3ba5b40fb708e88 100644 --- a/src/fvOptions/corrections/limitTemperature/limitTemperature.C +++ b/src/fvOptions/corrections/limitTemperature/limitTemperature.C @@ -199,16 +199,19 @@ void Foam::fv::limitTemperature::correct(volScalarField& he) const scalar nBelowMinPercent = percent(nBelowMin, nTotCells); const scalar nAboveMaxPercent = percent(nAboveMax, nTotCells); - Info<< type() << ' ' << name_ << " Lower limited " << nBelowMin << " (" - << nBelowMinPercent - << "%) of cells, with min limit " << Tmin_ << endl; - - Info<< type() << ' ' << name_ << " Upper limited " << nAboveMax << " (" - << nAboveMaxPercent - << "%) of cells, with max limit " << Tmax_ << endl; - - Info<< type() << ' ' << name_ << " Unlimited Tmin " << Tmin0 << endl; - Info<< type() << ' ' << name_ << " Unlimited Tmax " << Tmax0 << endl; + Info<< type() << "=" << name_ << ", Type=Lower" + << ", LimitedCells=" << nBelowMin + << ", CellsPercent=" << nBelowMinPercent + << ", Tmin=" << Tmin_ + << ", UnlimitedTmin=" << Tmin0 + << endl; + + Info<< type() << "=" << name_ << ", Type=Upper" + << ", LimitedCells=" << nAboveMax + << ", CellsPercent=" << nAboveMaxPercent + << ", Tmax=" << Tmax_ + << ", UnlimitedTmax=" << Tmax0 + << endl; if (canWriteToFile()) diff --git a/src/fvOptions/corrections/limitTurbulenceViscosity/limitTurbulenceViscosity.C b/src/fvOptions/corrections/limitTurbulenceViscosity/limitTurbulenceViscosity.C index 6c039accceb0fccb2c8260d422fdf1b4f14ff057..836a23bf87c92766fd96fa4b802188456511d4df 100644 --- a/src/fvOptions/corrections/limitTurbulenceViscosity/limitTurbulenceViscosity.C +++ b/src/fvOptions/corrections/limitTurbulenceViscosity/limitTurbulenceViscosity.C @@ -87,19 +87,13 @@ Foam::tmp<Foam::volScalarField> Foam::fv::limitTurbulenceViscosity::nu() const const auto* dictPtr = mesh_.cfindObject<dictionary>("transportProperties"); if (dictPtr) { - return - tmp<volScalarField>::New - ( - IOobject - ( - "nu", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ - ), - mesh_, - dimensionedScalar("nu", dimViscosity, *dictPtr) - ); + return volScalarField::New + ( + "nu", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar("nu", dimViscosity, *dictPtr) + ); } FatalErrorInFunction diff --git a/src/fvOptions/sources/derived/acousticDampingSource/acousticDampingSource.C b/src/fvOptions/sources/derived/acousticDampingSource/acousticDampingSource.C index 898926ef1888aaa14d98623e340494bed9ae1c02..3be2df145e87ae841111233b40ac7e911e43d4de 100644 --- a/src/fvOptions/sources/derived/acousticDampingSource/acousticDampingSource.C +++ b/src/fvOptions/sources/derived/acousticDampingSource/acousticDampingSource.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -87,23 +87,13 @@ Foam::fv::acousticDampingSource::acousticDampingSource fv::cellSetOption(name, modelType, dict, mesh), blendFactor_ ( - volScalarField - ( - IOobject - ( - name_ + ":blend", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - scalar(1), - dimless, - fvPatchFieldBase::zeroGradientType() - ) + mesh_.newIOobject(IOobject::scopedName(name_, "blend")), + mesh_, + scalar(1), + dimless, + fvPatchFieldBase::zeroGradientType() ), - frequency_("frequency", dimless/dimTime, 0), + frequency_("frequency", dimless/dimTime, Zero), x0_(Zero), r1_(0), r2_(0), @@ -122,8 +112,15 @@ void Foam::fv::acousticDampingSource::addSup const label fieldI ) { + auto tcoeff = volScalarField::New + ( + IOobject::scopedName(name_, "coeff"), + IOobject::NO_REGISTER, + w_*frequency_*blendFactor_ + ); + const auto& coeff = tcoeff(); + const volVectorField& U = eqn.psi(); - const volScalarField coeff(name_ + ":coeff", w_*frequency_*blendFactor_); const auto& URef = mesh().lookupObject<volVectorField>(URefName_); fvMatrix<vector> dampingEqn @@ -141,8 +138,15 @@ void Foam::fv::acousticDampingSource::addSup const label fieldI ) { + auto tcoeff = volScalarField::New + ( + IOobject::scopedName(name_, "coeff"), + IOobject::NO_REGISTER, + w_*frequency_*blendFactor_ + ); + const auto& coeff = tcoeff(); + const volVectorField& U = eqn.psi(); - const volScalarField coeff(name_ + ":coeff", w_*frequency_*blendFactor_); const auto& URef = mesh().lookupObject<volVectorField>(URefName_); fvMatrix<vector> dampingEqn @@ -161,8 +165,15 @@ void Foam::fv::acousticDampingSource::addSup const label fieldI ) { + auto tcoeff = volScalarField::New + ( + IOobject::scopedName(name_, "coeff"), + IOobject::NO_REGISTER, + w_*frequency_*blendFactor_ + ); + const auto& coeff = tcoeff(); + const volVectorField& U = eqn.psi(); - const volScalarField coeff(name_ + ":coeff", w_*frequency_*blendFactor_); const auto& URef = mesh().lookupObject<volVectorField>(URefName_); fvMatrix<vector> dampingEqn diff --git a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.C b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.C index 5ecac54e417e116062d92b87e9c25e9a593f168b..13105085df06bf099f89b65f9d2ea39789576fd9 100644 --- a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.C +++ b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.C @@ -90,6 +90,8 @@ void Foam::fv::actuationDiskSource::writeFileHeader(Ostream& os) writeFile::writeCommented(os, "P"); } + writeFile::writeCommented(os, "diskDir"); + os << endl; } @@ -208,14 +210,7 @@ Foam::fv::actuationDiskSource::actuationDiskSource scalarMinMax::ge(VSMALL) ) ), - diskDir_ - ( - coeffs_.getCheck<vector> - ( - "diskDir", - [&](const vector& vec){ return mag(vec) > VSMALL; } - ).normalise() - ), + diskDir_(Function1<vector>::New("diskDir", coeffs_, &mesh)), UvsCpPtr_(Function1<scalar>::New("Cp", coeffs_, &mesh)), UvsCtPtr_(Function1<scalar>::New("Ct", coeffs_, &mesh)), monitorCells_() @@ -237,6 +232,25 @@ Foam::fv::actuationDiskSource::actuationDiskSource // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +Foam::vector Foam::fv::actuationDiskSource::diskDir() const +{ + const scalar t = mesh_.time().timeOutputValue(); + const vector dir(diskDir_->value(t)); + const scalar magDir = Foam::mag(dir); + + if (magDir < SMALL) + { + FatalErrorInFunction + << "Actuator disk surface-normal vector is zero: " << dir + << " at time=" << t + << exit(FatalError); + } + + // normalised: + return dir/magDir; +} + + void Foam::fv::actuationDiskSource::addSup ( fvMatrix<vector>& eqn, @@ -295,19 +309,10 @@ bool Foam::fv::actuationDiskSource::read(const dictionary& dict) << exit(FatalIOError); } - dict.readIfPresent("diskDir", diskDir_); - diskDir_.normalise(); - if (mag(diskDir_) < VSMALL) - { - FatalIOErrorInFunction(dict) - << "Actuator disk surface-normal vector is zero: " - << "diskDir = " << diskDir_ - << exit(FatalIOError); - } + // TBD: runTime re-reading of "diskDir" ? return true; } - return false; } diff --git a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.H b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.H index 18304a5330740c7dc745af100dc064b74cdc4a4a..dea4009435adfa765569b91a156ee14694af9b38 100644 --- a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.H +++ b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSource.H @@ -170,7 +170,7 @@ Usage type | Type name: actuationDiskSource | word | yes | - diskArea | Actuator disk planar surface area | scalar | yes | - diskDir | Surface-normal vector of the actuator disk <!-- - --> pointing downstream | vector | yes | - + --> pointing downstream | Function1 | yes | - Cp | Power coefficient | Function1 | yes | - Ct | Thrust coefficient | Function1 | yes | - monitorMethod | Type of incoming velocity monitoring method <!-- @@ -207,8 +207,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef actuationDiskSource_H -#define actuationDiskSource_H +#ifndef Foam_actuationDiskSource_H +#define Foam_actuationDiskSource_H #include "cellSetOption.H" #include "writeFile.H" @@ -276,7 +276,8 @@ protected: scalar diskArea_; //- Surface-normal vector of the actuator disk pointing downstream - vector diskDir_; + //- as a function of time + autoPtr<Function1<vector>> diskDir_; //- Velocity vs power coefficients autoPtr<Function1<scalar>> UvsCpPtr_; @@ -364,14 +365,11 @@ public: // Access - //- Normal disk direction - const vector& diskDir() const - { - return diskDir_; - } + //- Normal disk direction, evaluated at timeOutputValue + vector diskDir() const; //- Disk area - scalar diskArea() const + scalar diskArea() const noexcept { return diskArea_; } diff --git a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSourceTemplates.C b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSourceTemplates.C index 8c70582dcd39ce7cd9a414825d6d7e8fca25fe53..76f5669aa31ce26bd326f74c538b5af680e61264 100644 --- a/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSourceTemplates.C +++ b/src/fvOptions/sources/derived/actuationDiskSource/actuationDiskSourceTemplates.C @@ -110,12 +110,13 @@ void Foam::fv::actuationDiskSource::calcFroudeMethod } // (BJSB:Eq. 3.9) + const vector diskDir = this->diskDir(); const scalar a = 1.0 - Cp/Ct; - const scalar T = 2.0*rhoRef*diskArea_*magSqr(Uref & diskDir_)*a*(1 - a); + const scalar T = 2.0*rhoRef*diskArea_*magSqr(Uref & diskDir)*a*(1 - a); for (const label celli : cells_) { - Usource[celli] += ((cellsV[celli]/V())*T)*diskDir_; + Usource[celli] += ((cellsV[celli]/V())*T)*diskDir; } if @@ -128,7 +129,7 @@ void Foam::fv::actuationDiskSource::calcFroudeMethod writeCurrentTime(os); os << Uref << tab << Cp << tab << Ct << tab << a << tab << T - << endl; + << tab << diskDir << endl; } } @@ -221,12 +222,13 @@ void Foam::fv::actuationDiskSource::calcVariableScalingMethod const scalar CpStar = Cp*pow3(magUref/magUdisk); // Compute calibrated thrust/power (LSRMTK:Eq. 5) - const scalar T = 0.5*rhoRef*diskArea_*magSqr(Udisk & diskDir_)*CtStar; - const scalar P = 0.5*rhoRef*diskArea_*pow3(mag(Udisk & diskDir_))*CpStar; + const vector diskDir = this->diskDir(); + const scalar T = 0.5*rhoRef*diskArea_*magSqr(Udisk & diskDir)*CtStar; + const scalar P = 0.5*rhoRef*diskArea_*pow3(mag(Udisk & diskDir))*CpStar; for (const label celli : cells_) { - Usource[celli] += (cellsV[celli]/totalV*T)*diskDir_; + Usource[celli] += (cellsV[celli]/totalV*T)*diskDir; } if @@ -240,7 +242,7 @@ void Foam::fv::actuationDiskSource::calcVariableScalingMethod os << Uref << tab << Cp << tab << Ct << tab << Udisk << tab << CpStar << tab << CtStar << tab << T << tab << P - << endl; + << tab << diskDir << endl; } } diff --git a/src/fvOptions/sources/derived/buoyancyTurbSource/buoyancyTurbSourceTemplates.C b/src/fvOptions/sources/derived/buoyancyTurbSource/buoyancyTurbSourceTemplates.C index 10cdc62b8c4404259f0f9f9ae9840b4b63750a26..db5ef7b800f25268ad9673c3dbf0902d0b3bf720 100644 --- a/src/fvOptions/sources/derived/buoyancyTurbSource/buoyancyTurbSourceTemplates.C +++ b/src/fvOptions/sources/derived/buoyancyTurbSource/buoyancyTurbSourceTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020 OpenCFD Ltd + Copyright (C) 2020,2023 OpenCFD Ltd ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,7 +46,8 @@ void Foam::fv::buoyancyTurbSource::buoyancyTurbSourceK ( turbulenceModel::propertiesName ); - const volScalarField& nut = turbPtr->nut(); + const tmp<volScalarField> tnut(turbPtr->nut()); + const volScalarField& nut = tnut(); const dictionary& turbDict = turbPtr->coeffDict(); const scalar Prt diff --git a/src/fvOptions/sources/derived/directionalPressureGradientExplicitSource/directionalPressureGradientExplicitSource.C b/src/fvOptions/sources/derived/directionalPressureGradientExplicitSource/directionalPressureGradientExplicitSource.C index d436078a18fbad4150882ce8ed99e6d9345f6e8c..c2d6ea05c16901adaa23bedc25cf9381ea2c7e77 100644 --- a/src/fvOptions/sources/derived/directionalPressureGradientExplicitSource/directionalPressureGradientExplicitSource.C +++ b/src/fvOptions/sources/derived/directionalPressureGradientExplicitSource/directionalPressureGradientExplicitSource.C @@ -148,7 +148,8 @@ void Foam::fv::directionalPressureGradientExplicitSource::writeProps "uniform", mesh_, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ) ); propsDict.add("gradient", gradP); @@ -463,23 +464,18 @@ void Foam::fv::directionalPressureGradientExplicitSource::addSup const label fieldI ) { - DimensionedField<vector, volMesh> Su + auto tSu = DimensionedField<vector, volMesh>::New ( - IOobject - ( - name_ + fieldNames_[fieldI] + "Sup", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + name_ + fieldNames_[fieldI] + "Sup", + IOobject::NO_REGISTER, mesh_, dimensionedVector(eqn.dimensions()/dimVolume, Zero) ); + auto& Su = tSu.ref(); UIndirectList<vector>(Su, cells_) = gradP0_ + dGradP_ + gradPporous_; - eqn += Su; + eqn += tSu; } @@ -506,14 +502,7 @@ void Foam::fv::directionalPressureGradientExplicitSource::constrain ( new volScalarField ( - IOobject - ( - name_ + ":invA", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh_.newIOobject(IOobject::scopedName(name_, "invA")), 1.0/eqn.A() ) ); diff --git a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C index f6f41c11a06f01848dfc69d36ea06175baa2aa97..6053fb1ca4019963ebacb5c9235a201bc2adea23 100644 --- a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C +++ b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,8 +44,6 @@ namespace fv } } -const Foam::word Foam::fv::jouleHeatingSource::sigmaName(typeName + ":sigma"); - // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -55,17 +53,10 @@ Foam::fv::jouleHeatingSource::transformSigma const volVectorField& sigmaLocal ) const { - auto tsigma = tmp<volSymmTensorField>::New + auto tsigma = volSymmTensorField::New ( - IOobject - ( - sigmaName, - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "sigma"), + IOobject::NO_REGISTER, mesh_, dimensionedSymmTensor(sigmaLocal.dimensions(), Zero), fvPatchFieldBase::zeroGradientType() @@ -115,11 +106,12 @@ Foam::fv::jouleHeatingSource::jouleHeatingSource ( IOobject ( - typeName + ":V", + IOobject::scopedName(typeName, "V"), mesh.time().timeName(), mesh, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh ), @@ -182,6 +174,10 @@ void Foam::fv::jouleHeatingSource::addSup } // Add the Joule heating contribution + const word sigmaName + ( + IOobject::scopedName(typeName, "sigma") + ); const volVectorField gradV(fvc::grad(V_)); if (anisotropicElectricalConductivity_) diff --git a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.H b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.H index d748dcdab84dec42084d8e866dc58ba50a7793ce..76cd3ea4c1cba467549ff1d7c58770051811b781 100644 --- a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.H +++ b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSource.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -179,9 +179,6 @@ class jouleHeatingSource { // Private Data - //- Name of electrical conductivity field - static const word sigmaName; - //- Name of temperature field word TName_; diff --git a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C index 95cb6a05b99cbf2173f3673b552bced4293c341b..2b7fbb0ed1dae06bc073aa431eedc3f90fbd81e1 100644 --- a/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C +++ b/src/fvOptions/sources/derived/jouleHeatingSource/jouleHeatingSourceTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,52 +34,50 @@ void Foam::fv::jouleHeatingSource::initialiseSigma autoPtr<Function1<Type>>& sigmaVsTPtr ) { - typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType; + typedef GeometricField<Type, fvPatchField, volMesh> FieldType; + + IOobject io + ( + IOobject::scopedName(typeName, "sigma"), + mesh_.time().timeName(), + mesh_.thisDb(), + IOobject::NO_READ, + IOobject::AUTO_WRITE, + IOobject::REGISTER + ); + + autoPtr<FieldType> tsigma; if (dict.found("sigma")) { // Sigma to be defined using a Function1 type sigmaVsTPtr = Function1<Type>::New("sigma", dict, &mesh_); - auto tsigma = tmp<VolFieldType>::New + tsigma.reset ( - IOobject + new FieldType ( - typeName + ":sigma", - mesh_.time().timeName(), + io, mesh_, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - mesh_, - dimensioned<Type>(sqr(dimCurrent)/dimPower/dimLength, Zero) + Foam::zero{}, // value + sqr(dimCurrent)/dimPower/dimLength + ) ); - mesh_.objectRegistry::store(tsigma.ptr()); - Info<< " Conductivity 'sigma' read from dictionary as f(T)" << nl << endl; } else { // Sigma to be defined by user input - auto tsigma = tmp<VolFieldType>::New - ( - IOobject - ( - typeName + ":sigma", - mesh_.time().timeName(), - mesh_, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh_ - ); + io.readOpt(IOobject::MUST_READ); - mesh_.objectRegistry::store(tsigma.ptr()); + tsigma.reset(new FieldType(io, mesh_)); Info<< " Conductivity 'sigma' read from file" << nl << endl; } + + regIOobject::store(tsigma); } @@ -90,9 +88,12 @@ Foam::fv::jouleHeatingSource::updateSigma const autoPtr<Function1<Type>>& sigmaVsTPtr ) const { - typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType; + typedef GeometricField<Type, fvPatchField, volMesh> FieldType; - auto& sigma = mesh_.lookupObjectRef<VolFieldType>(typeName + ":sigma"); + auto& sigma = mesh_.lookupObjectRef<FieldType> + ( + IOobject::scopedName(typeName, "sigma") + ); if (!sigmaVsTPtr) { @@ -110,7 +111,7 @@ Foam::fv::jouleHeatingSource::updateSigma // Boundary field - typename VolFieldType::Boundary& bf = sigma.boundaryFieldRef(); + auto& bf = sigma.boundaryFieldRef(); forAll(bf, patchi) { fvPatchField<Type>& pf = bf[patchi]; diff --git a/src/fvOptions/sources/derived/meanVelocityForce/meanVelocityForce.C b/src/fvOptions/sources/derived/meanVelocityForce/meanVelocityForce.C index 909d57f395b2455289d21a4f9c1a39f6bfad55f1..6d0523632646cfc45dc965f3df1928f846a12b84 100644 --- a/src/fvOptions/sources/derived/meanVelocityForce/meanVelocityForce.C +++ b/src/fvOptions/sources/derived/meanVelocityForce/meanVelocityForce.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -63,7 +63,8 @@ void Foam::fv::meanVelocityForce::writeProps "uniform", mesh_, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ) ); propsDict.add("gradient", gradP); @@ -192,25 +193,20 @@ void Foam::fv::meanVelocityForce::addSup const label fieldi ) { - volVectorField::Internal Su + auto tSu = volVectorField::Internal::New ( - IOobject - ( - name_ + fieldNames_[fieldi] + "Sup", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + name_ + fieldNames_[fieldi] + "Sup", + IOobject::NO_REGISTER, mesh_, dimensionedVector(eqn.dimensions()/dimVolume, Zero) ); + auto& Su = tSu.ref(); scalar gradP = gradP0_ + dGradP_; UIndirectList<vector>(Su, cells_) = flowDir_*gradP; - eqn += Su; + eqn += tSu; } @@ -237,14 +233,7 @@ void Foam::fv::meanVelocityForce::constrain ( new volScalarField ( - IOobject - ( - name_ + ":rA", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh_.newIOobject(IOobject::scopedName(name_, "rA")), 1.0/eqn.A() ) ); diff --git a/src/fvOptions/sources/derived/radialActuationDiskSource/radialActuationDiskSourceTemplates.C b/src/fvOptions/sources/derived/radialActuationDiskSource/radialActuationDiskSourceTemplates.C index 8bf97af9e78e951b1dae536d97231842fabecf8a..4903cb1197c3843bcd13f74209b6a6e0bde782d2 100644 --- a/src/fvOptions/sources/derived/radialActuationDiskSource/radialActuationDiskSourceTemplates.C +++ b/src/fvOptions/sources/derived/radialActuationDiskSource/radialActuationDiskSourceTemplates.C @@ -48,9 +48,8 @@ addRadialActuationDiskAxialInertialResistance scalarField Tr(cells.size()); tensor E(Zero); - E.xx() = diskDir_.x(); - E.yy() = diskDir_.y(); - E.zz() = diskDir_.z(); + const vector diskDir = this->diskDir(); + E.diag(diskDir); const Field<vector> zoneCellCentres(mesh().cellCentres(), cells); const Field<scalar> zoneCellVolumes(mesh().cellVolumes(), cells); diff --git a/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSource.C b/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSource.C index a638b55ae71b69d9c609d47ba14880b22ac04d81..f4f9085591becfb7e1534718b5c9cccf2f7acc0f 100644 --- a/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSource.C +++ b/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -238,23 +238,19 @@ void Foam::fv::rotorDiskSource::setFaceArea(vector& axis, const bool correct) if (debug) { - volScalarField area + auto tarea = volScalarField::New ( - IOobject - ( - name_ + ":area", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(name_, "area"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimArea, Zero) ); - UIndirectList<scalar>(area.primitiveField(), cells_) = area_; + auto& area = tarea.ref(); - Info<< type() << ": " << name_ << " writing field " << area.name() - << endl; + UIndirectList<scalar>(area.primitiveFieldRef(), cells_) = area_; + + Info<< type() << ": " << name_ + << " writing field " << area.name() << endl; area.write(); } @@ -480,17 +476,14 @@ void Foam::fv::rotorDiskSource::addSup const label fieldi ) { - volVectorField force + auto tforce = volVectorField::New ( - IOobject - ( - name_ + ":rotorForce", - mesh_.time().timeName(), - mesh_ - ), + IOobject::scopedName(name_, "rotorForce"), + IOobject::NO_REGISTER, mesh_, dimensionedVector(eqn.dimensions()/dimVolume, Zero) ); + auto& force = tforce.ref(); // Read the reference density for incompressible flow coeffs_.readEntry("rhoRef", rhoRef_); @@ -516,17 +509,14 @@ void Foam::fv::rotorDiskSource::addSup const label fieldi ) { - volVectorField force + auto tforce = volVectorField::New ( - IOobject - ( - name_ + ":rotorForce", - mesh_.time().timeName(), - mesh_ - ), + IOobject::scopedName(name_, "rotorForce"), + IOobject::NO_REGISTER, mesh_, dimensionedVector(eqn.dimensions()/dimVolume, Zero) ); + auto& force = tforce.ref(); const vectorField Uin(inflowVelocity(eqn.psi())); trim_->correct(rho, Uin, force); diff --git a/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSourceTemplates.C b/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSourceTemplates.C index 5a050a7053ba3c7e4a981732f00eadcaeaaabc1d..db93871990fc7a9b39fb214a97c659209dbcb9f4 100644 --- a/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSourceTemplates.C +++ b/src/fvOptions/sources/derived/rotorDiskSource/rotorDiskSourceTemplates.C @@ -178,37 +178,28 @@ void Foam::fv::rotorDiskSource::writeField const bool writeNow ) const { - typedef GeometricField<Type, fvPatchField, volMesh> FieldType; - if (mesh_.time().writeTime() || writeNow) { - auto tfield = tmp<FieldType>::New + if (cells_.size() != values.size()) + { + FatalErrorInFunction + << "Size mismatch. Number of cells " + << cells_.size() << " != number of values " + << values.size() << nl + << abort(FatalError); + } + + auto tfield = GeometricField<Type, fvPatchField, volMesh>::New ( - IOobject - ( - name, - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + name, + IOobject::NO_REGISTER, mesh_, dimensioned<Type>(dimless, Zero) ); auto& field = tfield.ref().primitiveFieldRef(); - if (cells_.size() != values.size()) - { - FatalErrorInFunction - << abort(FatalError); - } - - forAll(cells_, i) - { - const label celli = cells_[i]; - field[celli] = values[i]; - } + UIndirectList<Type>(field, cells_) = values; tfield().write(); } diff --git a/src/fvOptions/sources/derived/solidificationMeltingSource/solidificationMeltingSource.C b/src/fvOptions/sources/derived/solidificationMeltingSource/solidificationMeltingSource.C index 6f891187c9ad4e6d351f4aecf6ceefecd9a7f8da..f7d853c8174837627ee8cc4c803b315542b5ae08 100644 --- a/src/fvOptions/sources/derived/solidificationMeltingSource/solidificationMeltingSource.C +++ b/src/fvOptions/sources/derived/solidificationMeltingSource/solidificationMeltingSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014-2017 OpenFOAM Foundation - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -78,16 +78,9 @@ Foam::fv::solidificationMeltingSource::Cp() const { const scalar CpRef = coeffs_.get<scalar>("CpRef"); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - name_ + ":Cp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(name_, "Cp"), mesh_, dimensionedScalar ( @@ -184,11 +177,12 @@ Foam::fv::solidificationMeltingSource::solidificationMeltingSource ( IOobject ( - name_ + ":alpha1", + IOobject::scopedName(name_, "alpha1"), mesh.time().timeName(), mesh, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimless, Zero), diff --git a/src/fvOptions/sources/derived/viscousDissipation/viscousDissipation.C b/src/fvOptions/sources/derived/viscousDissipation/viscousDissipation.C index ac2d5b980b3e0f4e6f1e00461b26c99f26728583..4d8491fed2ca7366be38087dbdaec7f58a2b46bb 100644 --- a/src/fvOptions/sources/derived/viscousDissipation/viscousDissipation.C +++ b/src/fvOptions/sources/derived/viscousDissipation/viscousDissipation.C @@ -47,16 +47,10 @@ namespace fv Foam::tmp<Foam::volScalarField> Foam::fv::viscousDissipation::rho() const { - auto trho = tmp<volScalarField>::New + auto trho = volScalarField::New ( - IOobject - ( - "trho", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "trho", + IOobject::NO_REGISTER, mesh_, rho_ ); @@ -177,16 +171,10 @@ void Foam::fv::viscousDissipation::addSup const word gradUName("grad(" + UName_ + ')'); - auto tgradU = tmp<GradFieldType>::New + auto tgradU = GradFieldType::New ( - IOobject - ( - "gradU", - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "gradU", + IOobject::NO_REGISTER, mesh_, dimensionedTensor(inv(dimTime), Zero) ); diff --git a/src/fvOptions/sources/general/semiImplicitSource/SemiImplicitSource.C b/src/fvOptions/sources/general/semiImplicitSource/SemiImplicitSource.C index c8830ae3d7e1ba484bb2a53978e6ef24097816ec..6e3585e68a902657cd4141a17df798fed5e581b4 100644 --- a/src/fvOptions/sources/general/semiImplicitSource/SemiImplicitSource.C +++ b/src/fvOptions/sources/general/semiImplicitSource/SemiImplicitSource.C @@ -336,6 +336,7 @@ void Foam::fv::SemiImplicitSource<Type>::addSup tsu = DimensionedField<Type, volMesh>::New ( name_ + fieldName + "Su", + IOobject::NO_REGISTER, mesh_, dimensioned<Type>(SuDims, Zero) ); @@ -375,6 +376,7 @@ void Foam::fv::SemiImplicitSource<Type>::addSup tsu = DimensionedField<Type, volMesh>::New ( name_ + fieldName + "Su", + IOobject::NO_REGISTER, mesh_, dimensioned<Type>(SuDims, Zero) ); @@ -462,6 +464,7 @@ void Foam::fv::SemiImplicitSource<Type>::addSup tsp = DimensionedField<scalar, volMesh>::New ( name_ + fieldName + "Sp", + IOobject::NO_REGISTER, mesh_, dimensioned<scalar>(SpDims, Zero) ); @@ -501,6 +504,7 @@ void Foam::fv::SemiImplicitSource<Type>::addSup tsp = DimensionedField<scalar, volMesh>::New ( name_ + fieldName + "Sp", + IOobject::NO_REGISTER, mesh_, dimensioned<scalar>(SpDims, Zero) ); diff --git a/src/fvOptions/sources/interRegion/interRegionExplicitPorositySource/interRegionExplicitPorositySource.C b/src/fvOptions/sources/interRegion/interRegionExplicitPorositySource/interRegionExplicitPorositySource.C index 4e00e9b2251340d6c53ed795c07b298a87bd8395..65da636ee897356b4a73bf740a54e3efbcf3439b 100644 --- a/src/fvOptions/sources/interRegion/interRegionExplicitPorositySource/interRegionExplicitPorositySource.C +++ b/src/fvOptions/sources/interRegion/interRegionExplicitPorositySource/interRegionExplicitPorositySource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -93,16 +93,16 @@ void Foam::fv::interRegionExplicitPorositySource::initialise() << abort(FatalError); } - porosityPtr_.reset - ( + porosityPtr_.reset(nullptr); + + porosityPtr_ = porosityModel::New ( name_, nbrMesh, coeffs_, zoneName - ).ptr() - ), + ); firstIter_ = false; } @@ -146,19 +146,14 @@ void Foam::fv::interRegionExplicitPorositySource::addSup const volVectorField& U = eqn.psi(); - volVectorField UNbr + auto tUNbr = volVectorField::New ( - IOobject - ( - name_ + ":UNbr", - nbrMesh.time().timeName(), - nbrMesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(name_, "UNbr"), + IOobject::NO_REGISTER, nbrMesh, dimensionedVector(U.dimensions(), Zero) ); + auto& UNbr = tUNbr.ref(); // Map local velocity onto neighbour region meshInterp().mapSrcToTgt @@ -177,7 +172,7 @@ void Foam::fv::interRegionExplicitPorositySource::addSup scalarField& Udiag = porosityEqn.diag(); vectorField& Usource = porosityEqn.source(); - Udiag.setSize(eqn.diag().size(), 0.0); + Udiag.setSize(eqn.diag().size(), Zero); Usource.setSize(eqn.source().size(), Zero); meshInterp().mapTgtToSrc(nbrEqn.diag(), plusEqOp<scalar>(), Udiag); @@ -200,19 +195,14 @@ void Foam::fv::interRegionExplicitPorositySource::addSup const volVectorField& U = eqn.psi(); - volVectorField UNbr + auto tUNbr = volVectorField::New ( - IOobject - ( - name_ + ":UNbr", - nbrMesh.time().timeName(), - nbrMesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(name_, "UNbr"), + IOobject::NO_REGISTER, nbrMesh, dimensionedVector(U.dimensions(), Zero) ); + auto& UNbr = tUNbr.ref(); // Map local velocity onto neighbour region meshInterp().mapSrcToTgt @@ -224,33 +214,23 @@ void Foam::fv::interRegionExplicitPorositySource::addSup fvMatrix<vector> nbrEqn(UNbr, eqn.dimensions()); - volScalarField rhoNbr + auto trhoNbr = volScalarField::New ( - IOobject - ( - "rho:UNbr", - nbrMesh.time().timeName(), - nbrMesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName("rho", "UNbr"), + IOobject::NO_REGISTER, nbrMesh, dimensionedScalar(dimDensity, Zero) ); + auto& rhoNbr = trhoNbr.ref(); - volScalarField muNbr + auto tmuNbr = volScalarField::New ( - IOobject - ( - "mu:UNbr", - nbrMesh.time().timeName(), - nbrMesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName("mu", "UNbr"), + IOobject::NO_REGISTER, nbrMesh, dimensionedScalar(dimViscosity, Zero) ); + auto& muNbr = tmuNbr.ref(); const auto& mu = mesh_.lookupObject<volScalarField>(muName_); @@ -277,7 +257,7 @@ void Foam::fv::interRegionExplicitPorositySource::addSup scalarField& Udiag = porosityEqn.diag(); vectorField& Usource = porosityEqn.source(); - Udiag.setSize(eqn.diag().size(), 0.0); + Udiag.setSize(eqn.diag().size(), Zero); Usource.setSize(eqn.source().size(), Zero); meshInterp().mapTgtToSrc(nbrEqn.diag(), plusEqOp<scalar>(), Udiag); diff --git a/src/genericPatchFields/genericFaPatchField/genericFaPatchField.H b/src/genericPatchFields/genericFaPatchField/genericFaPatchField.H index 7ad03942e79cb95ff861daac16f4c68915dc6ff0..49d24ad289bed078ff8a661e1328bddd99c75882 100644 --- a/src/genericPatchFields/genericFaPatchField/genericFaPatchField.H +++ b/src/genericPatchFields/genericFaPatchField/genericFaPatchField.H @@ -97,15 +97,6 @@ public: const faPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<faPatchField<Type>> clone() const - { - return tmp<faPatchField<Type>> - ( - new genericFaPatchField<Type>(*this) - ); - } - //- Default construct genericFaPatchField(const genericFaPatchField<Type>&) = default; @@ -116,16 +107,19 @@ public: const DimensionedField<Type, areaMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faPatchField<Type>> clone() const + { + return faPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faPatchField<Type>> clone ( const DimensionedField<Type, areaMesh>& iF ) const { - return tmp<faPatchField<Type>> - ( - new genericFaPatchField<Type>(*this, iF) - ); + return faPatchField<Type>::Clone(*this, iF); } diff --git a/src/genericPatchFields/genericFaePatchField/genericFaePatchField.H b/src/genericPatchFields/genericFaePatchField/genericFaePatchField.H index 48c6cc59cecfd28543b8dcd81429d3dce0eb879f..d02442f483fcc2ff1d87a0d7b8e3c899287ef966 100644 --- a/src/genericPatchFields/genericFaePatchField/genericFaePatchField.H +++ b/src/genericPatchFields/genericFaePatchField/genericFaePatchField.H @@ -99,15 +99,6 @@ public: //- Default copy construct genericFaePatchField(const genericFaePatchField<Type>&) = default; - //- Construct and return a clone - virtual tmp<faePatchField<Type>> clone() const - { - return tmp<faePatchField<Type>> - ( - new genericFaePatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference genericFaePatchField ( @@ -115,16 +106,19 @@ public: const DimensionedField<Type, edgeMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<faePatchField<Type>> clone() const + { + return faePatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<faePatchField<Type>> clone ( const DimensionedField<Type, edgeMesh>& iF ) const { - return tmp<faePatchField<Type>> - ( - new genericFaePatchField<Type>(*this, iF) - ); + return faePatchField<Type>::Clone(*this, iF); } diff --git a/src/genericPatchFields/genericFaePatchField/genericFaePatchFields.C b/src/genericPatchFields/genericFaePatchField/genericFaePatchFields.C index 66f5fbc9b13c2688e7442f743bfbb3208e236344..6948e08402696a64e0107978e3e3a584a0df3423 100644 --- a/src/genericPatchFields/genericFaePatchField/genericFaePatchFields.C +++ b/src/genericPatchFields/genericFaePatchField/genericFaePatchFields.C @@ -26,8 +26,9 @@ License \*---------------------------------------------------------------------------*/ #include "genericFaePatchFields.H" +#include "faePatchFields.H" +#include "edgeFaMesh.H" #include "addToRunTimeSelectionTable.H" -#include "edgeFields.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/genericPatchFields/genericFvPatchField/genericFvPatchField.H b/src/genericPatchFields/genericFvPatchField/genericFvPatchField.H index f74273dceeba59206589701db697b8d9de309f76..59a55e25707cc4f8eff96c3e5c59ffc46249968c 100644 --- a/src/genericPatchFields/genericFvPatchField/genericFvPatchField.H +++ b/src/genericPatchFields/genericFvPatchField/genericFvPatchField.H @@ -97,15 +97,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new genericFvPatchField<Type>(*this) - ); - } - //- Default copy construct genericFvPatchField(const genericFvPatchField<Type>&) = default; @@ -116,16 +107,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new genericFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/genericPatchFields/genericFvsPatchField/genericFvsPatchField.H b/src/genericPatchFields/genericFvsPatchField/genericFvsPatchField.H index 0447dd99710720f4c2d88ad542f144f5842e3be7..637129c0fdf8b659a0905dffc6e0cb6d38f1488b 100644 --- a/src/genericPatchFields/genericFvsPatchField/genericFvsPatchField.H +++ b/src/genericPatchFields/genericFvsPatchField/genericFvsPatchField.H @@ -96,15 +96,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvsPatchField<Type>> clone() const - { - return tmp<fvsPatchField<Type>> - ( - new genericFvsPatchField<Type>(*this) - ); - } - //- Default copy construct genericFvsPatchField(const genericFvsPatchField<Type>&) = default; @@ -115,16 +106,19 @@ public: const DimensionedField<Type, surfaceMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return clone + virtual tmp<fvsPatchField<Type>> clone() const + { + return fvsPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvsPatchField<Type>> clone ( const DimensionedField<Type, surfaceMesh>& iF ) const { - return tmp<fvsPatchField<Type>> - ( - new genericFvsPatchField<Type>(*this, iF) - ); + return fvsPatchField<Type>::Clone(*this, iF); } diff --git a/src/genericPatchFields/genericPointPatchField/genericPointPatchField.H b/src/genericPatchFields/genericPointPatchField/genericPointPatchField.H index c91f40202f56aeb40b9dc4e3a4c61d4ee90136e7..1f68de1bf45dd4a467b8ee269ed364e57dbb40f1 100644 --- a/src/genericPatchFields/genericPointPatchField/genericPointPatchField.H +++ b/src/genericPatchFields/genericPointPatchField/genericPointPatchField.H @@ -93,18 +93,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new genericPointPatchField<Type> - ( - *this - ) - ); - } - //- Default copy construct genericPointPatchField(const genericPointPatchField<Type>&) = default; @@ -115,20 +103,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new genericPointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/lagrangian/DSMC/clouds/Templates/DSMCCloud/DSMCCloud.C b/src/lagrangian/DSMC/clouds/Templates/DSMCCloud/DSMCCloud.C index a02de47f9c503e5824c2e42b4b7f4d33b6e55176..f64021f05dea7e1e85133f66bc728ab42b5006d9 100644 --- a/src/lagrangian/DSMC/clouds/Templates/DSMCCloud/DSMCCloud.C +++ b/src/lagrangian/DSMC/clouds/Templates/DSMCCloud/DSMCCloud.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -473,8 +473,9 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud cloudName + "Properties", mesh_.time().constant(), mesh_, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), typeIdList_(particleProperties_.lookup("typeIdList")), @@ -488,7 +489,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -496,7 +498,7 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud ( IOobject ( - this->name() + ":collisionSelectionRemainder", + IOobject::scopedName(this->name(), "collisionSelectionRemainder"), mesh_.time().timeName(), mesh_ ), @@ -511,7 +513,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -523,7 +526,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -535,7 +539,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -547,7 +552,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -559,7 +565,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -571,7 +578,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -583,7 +591,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -595,7 +604,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -607,7 +617,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -621,7 +632,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -633,7 +645,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_ ), @@ -698,8 +711,9 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud cloudName + "Properties", mesh_.time().constant(), mesh_, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), typeIdList_(particleProperties_.lookup("typeIdList")), @@ -713,7 +727,8 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimensionSet(0, 3, -1, 0, 0), Zero), @@ -723,7 +738,7 @@ Foam::DSMCCloud<ParcelType>::DSMCCloud ( IOobject ( - this->name() + ":collisionSelectionRemainder", + IOobject::scopedName(this->name(), "collisionSelectionRemainder"), mesh_.time().timeName(), mesh_ ), diff --git a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcel.H b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcel.H index d2946bc2adf20319d96828627607fd30c0adb9d1..a4982401490f8dae75e05418d5ac5febda89b015 100644 --- a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcel.H +++ b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,7 +42,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" #include "contiguous.H" #include "DSMCCloud.H" @@ -193,14 +192,13 @@ public: bool newFormat = true ); - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new DSMCParcel<ParcelType>(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C index c50c4e35018c00d6e1e887e026c14fccc311dd40..30a2f6f72af41664fbf777dfe7d9cf00111be584 100644 --- a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C +++ b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C @@ -91,15 +91,15 @@ void Foam::DSMCParcel<ParcelType>::readFields(Cloud<DSMCParcel<ParcelType>>& c) ParcelType::readFields(c); - IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), readOnProc); + IOField<vector> U(c.newIOobject("U", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, U); - IOField<scalar> Ei(c.fieldIOobject("Ei", IOobject::MUST_READ), readOnProc); + IOField<scalar> Ei(c.newIOobject("Ei", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, Ei); IOField<label> typeId ( - c.fieldIOobject("typeId", IOobject::MUST_READ), + c.newIOobject("typeId", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, typeId); @@ -126,9 +126,9 @@ void Foam::DSMCParcel<ParcelType>::writeFields const label np = c.size(); const bool writeOnProc = c.size(); - IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np); - IOField<scalar> Ei(c.fieldIOobject("Ei", IOobject::NO_READ), np); - IOField<label> typeId(c.fieldIOobject("typeId", IOobject::NO_READ), np); + IOField<vector> U(c.newIOobject("U", IOobject::NO_READ), np); + IOField<scalar> Ei(c.newIOobject("Ei", IOobject::NO_READ), np); + IOField<label> typeId(c.newIOobject("typeId", IOobject::NO_READ), np); label i = 0; for (const DSMCParcel<ParcelType>& p : c) diff --git a/src/lagrangian/DSMC/submodels/InflowBoundaryModel/FreeStream/FreeStream.C b/src/lagrangian/DSMC/submodels/InflowBoundaryModel/FreeStream/FreeStream.C index 12fd8ab03624fc3fa610a6517489c077b2a5c9a9..aab3ce1bd8c5cb812a98eb0be9ea83f96349f867 100644 --- a/src/lagrangian/DSMC/submodels/InflowBoundaryModel/FreeStream/FreeStream.C +++ b/src/lagrangian/DSMC/submodels/InflowBoundaryModel/FreeStream/FreeStream.C @@ -231,7 +231,7 @@ void Foam::FreeStream<CloudType>::inflow() label celli = mesh.faceOwner()[globalFaceIndex]; - const vector& fC = patch.faceCentres()[pFI]; + const vector fC = patch.faceCentres()[pFI]; scalar fA = mag(patch.faceAreas()[pFI]); diff --git a/src/lagrangian/basic/Cloud/Cloud.C b/src/lagrangian/basic/Cloud/Cloud.C index eb15d60699e479a38cfd59d6d636189b95df5d3a..2580c082d01f474500ea10d234b1848a7cdafa7e 100644 --- a/src/lagrangian/basic/Cloud/Cloud.C +++ b/src/lagrangian/basic/Cloud/Cloud.C @@ -182,7 +182,7 @@ void Foam::Cloud<ParticleType>::move // Allocate transfer buffers, // automatic clearStorage when UIPstream closes is disabled. - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; pBufs.allowClearRecv(false); // Cache of opened UOPstream wrappers diff --git a/src/lagrangian/basic/Cloud/Cloud.H b/src/lagrangian/basic/Cloud/Cloud.H index 9bc8e5c37d0b4559fe35dc7c8bb2c653419e71eb..9d4c842dac09f0d61736bb0c3e6c518006c4a492 100644 --- a/src/lagrangian/basic/Cloud/Cloud.H +++ b/src/lagrangian/basic/Cloud/Cloud.H @@ -226,13 +226,6 @@ public: // Read - //- Helper to construct IOobject for field and current time. - IOobject fieldIOobject - ( - const word& fieldName, - IOobjectOption::readOption rOpt = IOobjectOption::NO_READ - ) const; - //- Check lagrangian data field template<class DataType> void checkFieldIOobject @@ -287,6 +280,20 @@ public: // Stores the particles global positions in the database // for use during mapping. void storeGlobalPositions() const; + + + // Housekeeping + + //- Helper to construct IOobject for field and current time. + FOAM_DEPRECATED_FOR(2024-01, "newIOobject()") + IOobject fieldIOobject + ( + const word& fieldName, + IOobjectOption::readOption rOpt = IOobjectOption::NO_READ + ) const + { + return this->newIOobject(fieldName, rOpt); + } }; diff --git a/src/lagrangian/basic/Cloud/CloudIO.C b/src/lagrangian/basic/Cloud/CloudIO.C index 70f14cac28676cf9e9f5a6fac3459e0bf664dab4..3cb8569df6db0c3608e75573e0e5f459e66ee171 100644 --- a/src/lagrangian/basic/Cloud/CloudIO.C +++ b/src/lagrangian/basic/Cloud/CloudIO.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017, 2020 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,11 +101,9 @@ void Foam::Cloud<ParticleType>::writeCloudUniformProperties() const ) ); - labelList np(Pstream::nProcs(), Zero); - np[Pstream::myProcNo()] = ParticleType::particleCount_; - - // FIXME: replace with Pstream::allGatherList(np); - Pstream::listCombineReduce(np, maxEqOp<label>()); + labelList np(UPstream::nProcs(), Foam::zero{}); + np[UPstream::myProcNo()] = ParticleType::particleCount_; + Pstream::allGatherList(np); uniformPropsDict.add ( @@ -177,25 +175,6 @@ Foam::Cloud<ParticleType>::Cloud // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -template<class ParticleType> -Foam::IOobject Foam::Cloud<ParticleType>::fieldIOobject -( - const word& fieldName, - IOobjectOption::readOption rOpt -) const -{ - return IOobject - ( - fieldName, - time().timeName(), - *this, - rOpt, - IOobjectOption::NO_WRITE, - IOobjectOption::NO_REGISTER - ); -} - - template<class ParticleType> template<class DataType> void Foam::Cloud<ParticleType>::checkFieldIOobject diff --git a/src/lagrangian/basic/InteractionLists/InteractionLists.C b/src/lagrangian/basic/InteractionLists/InteractionLists.C index 8bbd96b67b604e59db3a4757515757dcfff4d399..6d8b65e83941ef9cb656a0e3554adf5d5207cc29 100644 --- a/src/lagrangian/basic/InteractionLists/InteractionLists.C +++ b/src/lagrangian/basic/InteractionLists/InteractionLists.C @@ -299,11 +299,11 @@ void Foam::InteractionLists<ParticleType>::buildInteractionLists() { if (isA<wallPolyPatch>(patch)) { - const scalarField areaFraction(patch.areaFraction()); + const auto areaFraction(patch.areaFraction()); - forAll(areaFraction, facei) + forAll(patch, facei) { - if (areaFraction[facei] > 0.5) + if (!areaFraction || areaFraction()[facei] > 0.5) { localWallFaces.append(facei + patch.start()); } diff --git a/src/lagrangian/basic/InteractionLists/InteractionLists.H b/src/lagrangian/basic/InteractionLists/InteractionLists.H index b71f222d36eaa01832070df0ac71d430b9e3c7d7..a575b9d5b3cedf9b0b261c48d03c627e39cffdfa 100644 --- a/src/lagrangian/basic/InteractionLists/InteractionLists.H +++ b/src/lagrangian/basic/InteractionLists/InteractionLists.H @@ -39,7 +39,7 @@ Description Simultaneous communication and computation is possible using: \verbatim - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; label startOfRequests = Pstream::nRequests(); il_.sendReferredData(cellOccupancy_, pBufs); // Do other things @@ -231,8 +231,7 @@ public: // Member Functions - //- Prepare and send referred particles and wall data, - // nonBlocking communication + //- Prepare and send referred particles and wall data (nonBlocking) void sendReferredData ( const List<DynamicList<ParticleType*>>& cellOccupancy, diff --git a/src/lagrangian/basic/indexedParticle/indexedParticle.H b/src/lagrangian/basic/indexedParticle/indexedParticle.H index e08f525de66972eea4dee0e50410011bb2a095ec..66103eea8f9964ff3fd17becbaa6496b9a32eeb7 100644 --- a/src/lagrangian/basic/indexedParticle/indexedParticle.H +++ b/src/lagrangian/basic/indexedParticle/indexedParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,7 +40,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -109,13 +108,14 @@ public: //- Construct as a copy indexedParticle(const indexedParticle& p) : - particle(p) + particle(p), + index_(p.index_) {} - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new indexedParticle(*this)); + return particle::Clone(*this); } diff --git a/src/lagrangian/basic/injectedParticle/injectedParticle.H b/src/lagrangian/basic/injectedParticle/injectedParticle.H index 294108a7f34199f9c269e1f1cc5fbdd6e3e5ac5e..124fcf67f674b3105b7ab5bce9515c168a5ec033 100644 --- a/src/lagrangian/basic/injectedParticle/injectedParticle.H +++ b/src/lagrangian/basic/injectedParticle/injectedParticle.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,7 +46,6 @@ SeeAlso #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -147,20 +146,19 @@ public: //- Construct as a copy injectedParticle(const injectedParticle& p, const polyMesh& mesh); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new injectedParticle(*this)); + return particle::Clone(*this); } //- Construct and return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new injectedParticle(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; @@ -174,10 +172,7 @@ public: autoPtr<injectedParticle> operator()(Istream& is) const { - return autoPtr<injectedParticle> - ( - new injectedParticle(mesh_, is, true) - ); + return autoPtr<injectedParticle>::New(mesh_, is, true); } }; diff --git a/src/lagrangian/basic/injectedParticle/injectedParticleIO.C b/src/lagrangian/basic/injectedParticle/injectedParticleIO.C index 5a44f4caa50c19e899bad9b68341454710df63c8..e310d25a56c32f05bc4399c8627cc494a55c7a0f 100644 --- a/src/lagrangian/basic/injectedParticle/injectedParticleIO.C +++ b/src/lagrangian/basic/injectedParticle/injectedParticleIO.C @@ -104,16 +104,16 @@ void Foam::injectedParticle::readFields(Cloud<injectedParticle>& c) particle::readFields(c); - IOField<label> tag(c.fieldIOobject("tag", IOobject::MUST_READ)); + IOField<label> tag(c.newIOobject("tag", IOobject::MUST_READ)); c.checkFieldIOobject(c, tag); - IOField<scalar> soi(c.fieldIOobject("soi", IOobject::MUST_READ)); + IOField<scalar> soi(c.newIOobject("soi", IOobject::MUST_READ)); c.checkFieldIOobject(c, soi); - IOField<scalar> d(c.fieldIOobject("d", IOobject::MUST_READ)); + IOField<scalar> d(c.newIOobject("d", IOobject::MUST_READ)); c.checkFieldIOobject(c, d); - IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ)); + IOField<vector> U(c.newIOobject("U", IOobject::MUST_READ)); c.checkFieldIOobject(c, U); label i = 0; @@ -144,10 +144,10 @@ void Foam::injectedParticle::writeFields(const Cloud<injectedParticle>& c) const label np = c.size(); - IOField<label> tag(c.fieldIOobject("tag", IOobject::NO_READ), np); - IOField<scalar> soi(c.fieldIOobject("soi", IOobject::NO_READ), np); - IOField<scalar> d(c.fieldIOobject("d", IOobject::NO_READ), np); - IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np); + IOField<label> tag(c.newIOobject("tag", IOobject::NO_READ), np); + IOField<scalar> soi(c.newIOobject("soi", IOobject::NO_READ), np); + IOField<scalar> d(c.newIOobject("d", IOobject::NO_READ), np); + IOField<vector> U(c.newIOobject("U", IOobject::NO_READ), np); label i = 0; diff --git a/src/lagrangian/basic/particle/particle.C b/src/lagrangian/basic/particle/particle.C index 2ddea84408d4090b3182072da41ef260c50d466b..2939c3a6f39c4ebff4b4240c31f3ef845cec78f0 100644 --- a/src/lagrangian/basic/particle/particle.C +++ b/src/lagrangian/basic/particle/particle.C @@ -599,9 +599,9 @@ Foam::particle::particle } -Foam::particle::particle(const particle& p) +Foam::particle::particle(const particle& p, const polyMesh& mesh) : - mesh_(p.mesh_), + mesh_(mesh), coordinates_(p.coordinates_), celli_(p.celli_), tetFacei_(p.tetFacei_), @@ -615,19 +615,9 @@ Foam::particle::particle(const particle& p) {} -Foam::particle::particle(const particle& p, const polyMesh& mesh) +Foam::particle::particle(const particle& p) : - mesh_(mesh), - coordinates_(p.coordinates_), - celli_(p.celli_), - tetFacei_(p.tetFacei_), - tetPti_(p.tetPti_), - facei_(p.facei_), - stepFraction_(p.stepFraction_), - behind_(p.behind_), - nBehind_(p.nBehind_), - origProc_(p.origProc_), - origId_(p.origId_) + particle(p, p.mesh()) {} diff --git a/src/lagrangian/basic/particle/particle.H b/src/lagrangian/basic/particle/particle.H index 10e282e12ae6d7336a618e7471c349c70b91e257..97702a4ee6256b0126688d8f24fa5f9c6c09c0bd 100644 --- a/src/lagrangian/basic/particle/particle.H +++ b/src/lagrangian/basic/particle/particle.H @@ -417,18 +417,35 @@ public: const bool doLocate = true ); - //- Construct as a copy - particle(const particle& p); - - //- Construct as a copy with reference to a new mesh + //- Construct as a copy with reference to a mesh particle(const particle& p, const polyMesh& mesh); + //- Copy construct + particle(const particle& p); + //- Construct a clone virtual autoPtr<particle> clone() const { return autoPtr<particle>::New(*this); } + + // Factory Methods + + //- Clone a particle + template<class Derived> + static autoPtr<particle> Clone(const Derived& p) + { + return autoPtr<particle>(new Derived(p)); + } + + //- Clone a particle with a mesh reference + template<class Derived> + static autoPtr<particle> Clone(const Derived& p, const polyMesh& mesh) + { + return autoPtr<particle>(new Derived(p, mesh)); + } + //- Factory class to read-construct particles (for parallel transfer) class iNew { diff --git a/src/lagrangian/basic/particle/particleTemplates.C b/src/lagrangian/basic/particle/particleTemplates.C index 9169336118f71bbecb0498067a02aaed89444251..aa1c25ea7318cb5f0e8aff72b37928eb2e6d8f32 100644 --- a/src/lagrangian/basic/particle/particleTemplates.C +++ b/src/lagrangian/basic/particle/particleTemplates.C @@ -141,7 +141,7 @@ void Foam::particle::readFields(TrackCloudType& c) { const bool readOnProc = c.size(); - IOobject procIO(c.fieldIOobject("origProcId", IOobject::MUST_READ)); + IOobject procIO(c.newIOobject("origProcId", IOobject::MUST_READ)); const bool haveFile = procIO.typeHeaderOk<IOField<label>>(true); @@ -150,7 +150,7 @@ void Foam::particle::readFields(TrackCloudType& c) IOField<label> origId ( - c.fieldIOobject("origId", IOobject::MUST_READ), + c.newIOobject("origId", IOobject::MUST_READ), readOnProc && haveFile ); c.checkFieldIOobject(c, origId); @@ -197,12 +197,12 @@ void Foam::particle::writeFields(const TrackCloudType& c) IOField<label> origProc ( - c.fieldIOobject("origProcId", IOobject::NO_READ), + c.newIOobject("origProcId", IOobject::NO_READ), np ); IOField<label> origId ( - c.fieldIOobject("origId", IOobject::NO_READ), + c.newIOobject("origId", IOobject::NO_READ), np ); diff --git a/src/lagrangian/basic/passiveParticle/passiveParticle.H b/src/lagrangian/basic/passiveParticle/passiveParticle.H index 46593237ecee8968c96d1be1b8b236878870bd1b..13c1f18024596b115ee6cbca1cc71dcc9dc15698 100644 --- a/src/lagrangian/basic/passiveParticle/passiveParticle.H +++ b/src/lagrangian/basic/passiveParticle/passiveParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,7 +40,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -106,10 +105,10 @@ public: {} - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new passiveParticle(*this)); + return particle::Clone(*this); } diff --git a/src/lagrangian/coalCombustion/coalCloudList/coalCloudListI.H b/src/lagrangian/coalCombustion/coalCloudList/coalCloudListI.H index c4385d7dc2f5c2ebd6fa7e2a43b5672c2de1b7c1..21e4a2ad423416f101be2f8f95456091db38984a 100644 --- a/src/lagrangian/coalCombustion/coalCloudList/coalCloudListI.H +++ b/src/lagrangian/coalCombustion/coalCloudList/coalCloudListI.H @@ -32,24 +32,14 @@ License Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::coalCloudList::UTrans() const { - tmp<volVectorField::Internal> tfld + auto tfld = volVectorField::Internal::New ( - new volVectorField::Internal - ( - IOobject - ( - "UTransEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedVector(dimMass*dimVelocity, Zero) - ) + "UTransEff", + IOobject::NO_REGISTER, + mesh_, + dimensionedVector(dimMass*dimVelocity, Zero) ); - - volVectorField::Internal& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(*this, i) { @@ -65,8 +55,8 @@ Foam::tmp<Foam::fvVectorMatrix> Foam::coalCloudList::SU volVectorField& U ) const { - tmp<fvVectorMatrix> tfvm(new fvVectorMatrix(U, dimForce)); - fvVectorMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvVectorMatrix>::New(U, dimForce); + auto& fvm = tfvm.ref(); forAll(*this, i) { @@ -80,24 +70,14 @@ Foam::tmp<Foam::fvVectorMatrix> Foam::coalCloudList::SU Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::coalCloudList::hsTrans() const { - tmp<volScalarField::Internal> tfld + auto tfld = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - "hsTransEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimEnergy, Zero) - ) + "hsTransEff", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimEnergy, Zero) ); - - volScalarField::Internal& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(*this, i) { @@ -113,8 +93,8 @@ Foam::tmp<Foam::fvScalarMatrix> Foam::coalCloudList::Sh volScalarField& hs ) const { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(hs, dimEnergy/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(hs, dimEnergy/dimTime); + auto& fvm = tfvm.ref(); forAll(*this, i) { @@ -131,8 +111,8 @@ Foam::tmp<Foam::fvScalarMatrix> Foam::coalCloudList::SYi volScalarField& Yi ) const { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(Yi, dimMass/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(Yi, dimMass/dimTime); + auto& fvm = tfvm.ref(); forAll(*this, i) { @@ -146,24 +126,14 @@ Foam::tmp<Foam::fvScalarMatrix> Foam::coalCloudList::SYi Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::coalCloudList::rhoTrans() const { - tmp<volScalarField::Internal> tfld + auto tfld = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - "rhoTransEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimMass, Zero) - ) + "rhoTransEff", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass, Zero) ); - - volScalarField::Internal& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(*this, i) { @@ -177,29 +147,17 @@ Foam::coalCloudList::rhoTrans() const } - - Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::coalCloudList::Srho() const { - tmp<volScalarField::Internal> tfld + auto tfld = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - "rhoTransEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimDensity/dimTime, Zero) - ) + "rhoTransEff", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimDensity/dimTime, Zero) ); - - volScalarField::Internal& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(*this, i) { @@ -216,24 +174,14 @@ Foam::coalCloudList::Srho const label i ) const { - tmp<volScalarField::Internal> tfld + auto tfld = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - "rhoTransEff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimDensity/dimTime, Zero) - ) + "rhoTransEff", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimDensity/dimTime, Zero) ); - - volScalarField::Internal& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(*this, j) { @@ -249,8 +197,8 @@ Foam::tmp<Foam::fvScalarMatrix> Foam::coalCloudList::Srho volScalarField& rho ) const { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(rho, dimMass/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(rho, dimMass/dimTime); + auto& fvm = tfvm.ref(); forAll(*this, i) { diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C index f6b57014b4c0f120f7798875b5e5cecce3077790..776d3af8110b1896d5991a06ccaca941ec074933 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C @@ -360,8 +360,9 @@ Foam::KinematicCloud<CloudType>::KinematicCloud cloudName + "Properties", mesh_.time().constant(), mesh_, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), outputProperties_ @@ -373,7 +374,8 @@ Foam::KinematicCloud<CloudType>::KinematicCloud "uniform"/cloud::prefix/cloudName, mesh_, IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ) ), solution_(mesh_, particleProperties_.subDict("solution")), @@ -438,7 +440,8 @@ Foam::KinematicCloud<CloudType>::KinematicCloud this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass, Zero) @@ -454,7 +457,8 @@ Foam::KinematicCloud<CloudType>::KinematicCloud this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedVector(dimMass*dimVelocity, Zero) @@ -470,7 +474,8 @@ Foam::KinematicCloud<CloudType>::KinematicCloud this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass, Zero) @@ -571,7 +576,7 @@ Foam::KinematicCloud<CloudType>::KinematicCloud ( IOobject ( - name + ":UCoeff", + IOobject::scopedName(this->name(), "UCoeff"), this->db().time().timeName(), this->db(), IOobject::NO_READ, diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H index 3ade1a4de5371009e4d8216acdfd5515c502d116..74eccd091f9a52e97bf17b17944b80c2420e55c1 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H @@ -501,38 +501,26 @@ template<class CloudType> inline Foam::tmp<Foam::volScalarField::Internal> Foam::KinematicCloud<CloudType>::Srhok() const { - label debug0 = debug; - debug = 1; if (debug) { Pout<< "rhokTrans min/max = " << min(rhokTrans()).value() << ", " << max(rhokTrans()).value() << endl; } - debug = debug0; if (this->solution().coupled()) { return rhokTrans()/this->db().time().deltaT()/this->mesh().V(); } - return - tmp<volScalarField::Internal>::New + return tmp<volScalarField::Internal>::New + ( + this->newIOobject(IOobject::scopedName(this->name(), "rhokTrans")), + this->mesh(), + dimensionedScalar ( - IOobject - ( - IOobject::scopedName(this->name(), "rhokTrans"), - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar - ( - rhokTrans().dimensions()/dimTime/dimVolume, Zero - ) - ); + rhokTrans().dimensions()/dimTime/dimVolume, Zero + ) + ); } @@ -571,8 +559,8 @@ const } else { - tmp<fvVectorMatrix> tfvm(new fvVectorMatrix(U, dim)); - fvVectorMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvVectorMatrix>::New(U, dim); + auto& fvm = tfvm.ref(); fvm.source() = -UTrans()/(this->db().time().deltaT()); @@ -588,26 +576,15 @@ template<class CloudType> inline const Foam::tmp<Foam::volScalarField> Foam::KinematicCloud<CloudType>::vDotSweep() const { - tmp<volScalarField> tvDotSweep + auto tvDotSweep = tmp<volScalarField>::New ( - new volScalarField - ( - IOobject - ( - IOobject::scopedName(this->name(), "vDotSweep"), - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimTime, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + this->newIOobject(IOobject::scopedName(this->name(), "vDotSweep")), + mesh_, + dimensionedScalar(dimless/dimTime, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); + auto& vDotSweep = tvDotSweep.ref(); - volScalarField& vDotSweep = tvDotSweep.ref(); for (const parcelType& p : *this) { const label celli = p.cell(); @@ -626,26 +603,15 @@ template<class CloudType> inline const Foam::tmp<Foam::volScalarField> Foam::KinematicCloud<CloudType>::theta() const { - tmp<volScalarField> ttheta + auto ttheta = tmp<volScalarField>::New ( - new volScalarField - ( - IOobject - ( - IOobject::scopedName(this->name(), "theta"), - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + this->newIOobject(IOobject::scopedName(this->name(), "theta")), + mesh_, + dimensionedScalar(dimless, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); + auto& theta = ttheta.ref(); - volScalarField& theta = ttheta.ref(); for (const parcelType& p : *this) { const label celli = p.cell(); @@ -664,22 +630,11 @@ template<class CloudType> inline const Foam::tmp<Foam::volScalarField> Foam::KinematicCloud<CloudType>::alpha() const { - tmp<volScalarField> talpha + auto talpha = tmp<volScalarField>::New ( - new volScalarField - ( - IOobject - ( - IOobject::scopedName(this->name(), "alpha"), - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless, Zero) - ) + this->newIOobject(IOobject::scopedName(this->name(), "alpha")), + mesh_, + dimensionedScalar(dimless, Zero) ); scalarField& alpha = talpha.ref().primitiveFieldRef(); @@ -700,22 +655,11 @@ template<class CloudType> inline const Foam::tmp<Foam::volScalarField> Foam::KinematicCloud<CloudType>::rhoEff() const { - tmp<volScalarField> trhoEff + auto trhoEff = tmp<volScalarField>::New ( - new volScalarField - ( - IOobject - ( - IOobject::scopedName(this->name(), "rhoEff"), - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimDensity, Zero) - ) + this->newIOobject(IOobject::scopedName(this->name(), "rhoEff")), + mesh_, + dimensionedScalar(dimDensity, Zero) ); scalarField& rhoEff = trhoEff.ref().primitiveFieldRef(); diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C index 1062223379d5186b455d512175a532c8c8fad606..8c85ff362b309f2b90e0e1908d53a6fab0c47b2c 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C @@ -120,7 +120,15 @@ Foam::ReactingCloud<CloudType>::ReactingCloud // Set storage for mass source fields and initialise to zero forAll(rhoTrans_, i) { - const word& specieName = thermo.carrier().species()[i]; + const word fieldName + ( + IOobject::scopedName + ( + this->name(), + "rhoTrans_" + thermo.carrier().species()[i] + ) + ); + rhoTrans_.set ( i, @@ -128,11 +136,12 @@ Foam::ReactingCloud<CloudType>::ReactingCloud ( IOobject ( - this->name() + ":rhoTrans_" + specieName, + fieldName, this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimMass, Zero) @@ -164,7 +173,15 @@ Foam::ReactingCloud<CloudType>::ReactingCloud { forAll(c.rhoTrans_, i) { - const word& specieName = this->thermo().carrier().species()[i]; + const word fieldName + ( + IOobject::scopedName + ( + this->name(), + "rhoTrans_" + this->thermo().carrier().species()[i] + ) + ); + rhoTrans_.set ( i, @@ -172,7 +189,7 @@ Foam::ReactingCloud<CloudType>::ReactingCloud ( IOobject ( - this->name() + ":rhoTrans_" + specieName, + fieldName, this->db().time().timeName(), this->db(), IOobject::NO_READ, diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H index 8f357987e53380e977b9c1d6743a83f81bba6748..91d816ee5f411283f8016ba5ab37fb78ff6d11cc 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -144,25 +145,14 @@ inline Foam::tmp<Foam::fvScalarMatrix> Foam::ReactingCloud<CloudType>::SYi { if (this->solution().semiImplicit("Yi")) { - tmp<volScalarField> trhoTrans + auto trhoTrans = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->name() + ":rhoTrans", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimMass/dimTime/dimVolume, Zero) - ) + IOobject::scopedName(this->name(), "rhoTrans"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimMass/dimTime/dimVolume, Zero) ); - - volScalarField& sourceField = trhoTrans.ref(); + auto& sourceField = trhoTrans.ref(); sourceField.primitiveFieldRef() = rhoTrans_[i]/(this->db().time().deltaTValue()*this->mesh().V()); @@ -175,8 +165,8 @@ inline Foam::tmp<Foam::fvScalarMatrix> Foam::ReactingCloud<CloudType>::SYi } else { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(Yi, dimMass/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(Yi, dimMass/dimTime); + auto& fvm = tfvm.ref(); fvm.source() = -rhoTrans_[i]/this->db().time().deltaTValue(); @@ -192,30 +182,20 @@ template<class CloudType> inline Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::ReactingCloud<CloudType>::Srho(const label i) const { - tmp<volScalarField::Internal> tRhoi + auto tRhoi = volScalarField::Internal::New ( - new volScalarField::Internal + IOobject::scopedName(this->name(), "rhoTrans"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar ( - IOobject - ( - this->name() + ":rhoTrans", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar - ( - rhoTrans_[0].dimensions()/dimTime/dimVolume, Zero - ) + rhoTrans_[0].dimensions()/dimTime/dimVolume, Zero ) ); + scalarField& rhoi = tRhoi.ref(); if (this->solution().coupled()) { - scalarField& rhoi = tRhoi.ref(); rhoi = rhoTrans_[i]/(this->db().time().deltaTValue()*this->mesh().V()); } @@ -227,30 +207,20 @@ template<class CloudType> inline Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::ReactingCloud<CloudType>::Srho() const { - tmp<volScalarField::Internal> trhoTrans + auto trhoTrans = volScalarField::Internal::New ( - new volScalarField::Internal + IOobject::scopedName(this->name(), "rhoTrans"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar ( - IOobject - ( - this->name() + ":rhoTrans", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar - ( - rhoTrans_[0].dimensions()/dimTime/dimVolume, Zero - ) + rhoTrans_[0].dimensions()/dimTime/dimVolume, Zero ) ); + scalarField& sourceField = trhoTrans.ref(); if (this->solution().coupled()) { - scalarField& sourceField = trhoTrans.ref(); forAll(rhoTrans_, i) { sourceField += rhoTrans_[i]; @@ -269,29 +239,17 @@ Foam::ReactingCloud<CloudType>::Srho(volScalarField& rho) const { if (this->solution().coupled()) { - tmp<volScalarField> trhoTrans + auto trhoTrans = volScalarField::New ( - new volScalarField - ( - IOobject - ( - this->name() + ":rhoTrans", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimMass/dimTime/dimVolume, Zero) - ) + IOobject::scopedName(this->name(), "rhoTrans"), + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimMass/dimTime/dimVolume, Zero) ); - scalarField& sourceField = trhoTrans.ref(); if (this->solution().semiImplicit("rho")) { - forAll(rhoTrans_, i) { sourceField += rhoTrans_[i]; @@ -302,8 +260,8 @@ Foam::ReactingCloud<CloudType>::Srho(volScalarField& rho) const } else { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(rho, dimMass/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(rho, dimMass/dimTime); + auto& fvm = tfvm.ref(); forAll(rhoTrans_, i) { diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C index 9f232d96c2727e01b05e3754969c6db38eded159..1d7e1f1ea04d7decd23ea537c4e80360178a505c 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -64,11 +64,12 @@ void Foam::ThermoCloud<CloudType>::setModels() ( IOobject ( - this->name() + ":radAreaP", + IOobject::scopedName(this->name(), "radAreaP"), this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimArea, Zero) @@ -81,11 +82,12 @@ void Foam::ThermoCloud<CloudType>::setModels() ( IOobject ( - this->name() + ":radT4", + IOobject::scopedName(this->name(), "radT4"), this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(pow4(dimTemperature), Zero) @@ -98,11 +100,12 @@ void Foam::ThermoCloud<CloudType>::setModels() ( IOobject ( - this->name() + ":radAreaPT4", + IOobject::scopedName(this->name(), "radAreaPT4"), this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(sqr(dimLength)*pow4(dimTemperature), Zero) @@ -164,11 +167,12 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":hsTrans", + IOobject::scopedName(this->name(), "hsTrans"), this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimEnergy, Zero) @@ -180,11 +184,12 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":hsCoeff", + IOobject::scopedName(this->name(), "hsCoeff"), this->db().time().timeName(), this->db(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimEnergy/dimTemperature, Zero) @@ -235,7 +240,7 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":hsTrans", + IOobject::scopedName(this->name(), "hsTrans"), this->db().time().timeName(), this->db(), IOobject::NO_READ, @@ -251,7 +256,7 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":hsCoeff", + IOobject::scopedName(this->name(), "hsCoeff"), this->db().time().timeName(), this->db(), IOobject::NO_READ, @@ -270,7 +275,7 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":radAreaP", + IOobject::scopedName(this->name(), "radAreaP"), this->db().time().timeName(), this->db(), IOobject::NO_READ, @@ -287,7 +292,7 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":radT4", + IOobject::scopedName(this->name(), "radT4"), this->db().time().timeName(), this->db(), IOobject::NO_READ, @@ -304,7 +309,7 @@ Foam::ThermoCloud<CloudType>::ThermoCloud ( IOobject ( - this->name() + ":radAreaPT4", + IOobject::scopedName(this->name(), "radAreaPT4"), this->db().time().timeName(), this->db(), IOobject::NO_READ, diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H index 9899a5f0c516ffaad99f6098b8059a984adf5f34..55b8d00234c022b64fd190c8da8180bc9c360b43 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -260,8 +260,8 @@ Foam::ThermoCloud<CloudType>::Sh(volScalarField& hs) const } else { - tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(hs, dimEnergy/dimTime)); - fvScalarMatrix& fvm = tfvm.ref(); + auto tfvm = tmp<fvScalarMatrix>::New(hs, dimEnergy/dimTime); + auto& fvm = tfvm.ref(); fvm.source() = -hsTrans()/(this->db().time().deltaT()); @@ -276,22 +276,14 @@ Foam::ThermoCloud<CloudType>::Sh(volScalarField& hs) const template<class CloudType> inline Foam::tmp<Foam::volScalarField> Foam::ThermoCloud<CloudType>::Ep() const { - tmp<volScalarField> tEp + auto tEp = tmp<volScalarField>::New ( - new volScalarField + this->newIOobject ( - IOobject - ( - this->name() + ":radiation:Ep", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + IOobject::scopedName(this->name(), "radiation", "Ep") + ), + this->mesh(), + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); if (radiation_) @@ -312,22 +304,14 @@ inline Foam::tmp<Foam::volScalarField> Foam::ThermoCloud<CloudType>::Ep() const template<class CloudType> inline Foam::tmp<Foam::volScalarField> Foam::ThermoCloud<CloudType>::ap() const { - tmp<volScalarField> tap + auto tap = tmp<volScalarField>::New ( - new volScalarField + this->newIOobject ( - IOobject - ( - this->name() + ":radiation:ap", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimless/dimLength, Zero) - ) + IOobject::scopedName(this->name(), "radiation", "ap") + ), + this->mesh(), + dimensionedScalar(dimless/dimLength, Zero) ); if (radiation_) @@ -349,22 +333,14 @@ template<class CloudType> inline Foam::tmp<Foam::volScalarField> Foam::ThermoCloud<CloudType>::sigmap() const { - tmp<volScalarField> tsigmap + auto tsigmap = tmp<volScalarField>::New ( - new volScalarField + this->newIOobject ( - IOobject - ( - this->name() + ":radiation:sigmap", - this->db().time().timeName(), - this->db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(dimless/dimLength, Zero) - ) + IOobject::scopedName(this->name(), "radiation", "sigmap") + ), + this->mesh(), + dimensionedScalar(dimless/dimLength, Zero) ); if (radiation_) diff --git a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.C b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.C index d81b259444bb9c813aa19fb64312f365acb6a765..720ad68a457ed125b8e89bdeeef5738ea342e63e 100644 --- a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.C +++ b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,7 +43,7 @@ static inline void writeMeasured_binary const UList<floatVector>& points ) { - for (const floatVector& p : points) + for (const auto& p : points) { os.write(p.x()); os.write(p.y()); @@ -59,9 +59,9 @@ static inline label writeMeasured_ascii const UList<floatVector>& points ) { - for (const floatVector& p : points) + for (const auto& p : points) { - os.write(++pointId, 8); // 1-index and an unusual width + os.writeInt(++pointId, 8); // 1-index and an unusual width os.write(p.x()); os.write(p.y()); os.write(p.z()); @@ -79,75 +79,24 @@ static inline label writeMeasured_ascii bool Foam::ensightOutput::writeCloudPositions ( ensightFile& os, - const fvMesh& mesh, - const word& cloudName, - bool exists + DynamicList<floatVector>& positions, + const globalIndex& procAddr ) { - label nLocalParcels(0); - autoPtr<Cloud<passiveParticle>> parcelsPtr; + // Total number of parcels across all ranks + const label nTotParcels = procAddr.totalSize(); - if (exists) - { - parcelsPtr.reset(new Cloud<passiveParticle>(mesh, cloudName, false)); - nLocalParcels = parcelsPtr().size(); - } - - // Total number of parcels on all processes - const label nTotParcels = returnReduce(nLocalParcels, sumOp<label>()); + bool noCloud(!procAddr.totalSize()); + Pstream::broadcast(noCloud); if (UPstream::master()) { os.beginParticleCoordinates(nTotParcels); } - if (!nTotParcels) - { - return false; // DONE - } - - - // Gather sizes (offsets irrelevant) - const globalIndex procAddr(globalIndex::gatherOnly{}, nLocalParcels); - - - DynamicList<floatVector> positions; - positions.reserve(UPstream::master() ? procAddr.maxSize() : nLocalParcels); - - // Extract positions from parcel. - // Store as floatVector, since that is what Ensight will write anyhow - - if (parcelsPtr) + if (noCloud) { - const auto& parcels = *parcelsPtr; - - positions.resize_nocopy(parcels.size()); // same as nLocalParcels - - auto outIter = positions.begin(); - - if (std::is_same<float, vector::cmptType>::value) - { - for (const passiveParticle& p : parcels) - { - *outIter = p.position(); - ++outIter; - } - } - else - { - for (const passiveParticle& p : parcels) - { - vector pos(p.position()); - - (*outIter).x() = narrowFloat(pos.x()); - (*outIter).y() = narrowFloat(pos.y()); - (*outIter).z() = narrowFloat(pos.z()); - - ++outIter; - } - } - - parcelsPtr.reset(nullptr); + return false; // All empty } if (UPstream::master()) @@ -178,6 +127,9 @@ bool Foam::ensightOutput::writeCloudPositions } + positions.clear(); + positions.reserve_nocopy(procAddr.maxNonLocalSize()); + // Receive and write for (const label proci : procAddr.subProcs()) { @@ -186,6 +138,7 @@ bool Foam::ensightOutput::writeCloudPositions if (procSize) { positions.resize_nocopy(procSize); + UIPstream::read ( UPstream::commsTypes::scheduled, @@ -205,7 +158,7 @@ bool Foam::ensightOutput::writeCloudPositions } } } - else + else if (UPstream::is_subrank()) { if (positions.size()) { @@ -223,4 +176,86 @@ bool Foam::ensightOutput::writeCloudPositions } +bool Foam::ensightOutput::writeCloudPositions +( + ensightFile& os, + DynamicList<floatVector>& positions +) +{ + return ensightOutput::writeCloudPositions + ( + os, + positions, + // Gather sizes (offsets irrelevant) + globalIndex(globalIndex::gatherOnly{}, positions.size()) + ); +} + + +bool Foam::ensightOutput::writeCloudPositions +( + ensightFile& os, + const fvMesh& mesh, + const word& cloudName, + bool exists +) +{ + autoPtr<Cloud<passiveParticle>> parcelsPtr; + + if (exists) + { + parcelsPtr.reset(new Cloud<passiveParticle>(mesh, cloudName, false)); + } + + const label nLocalParcels + ( + parcelsPtr ? parcelsPtr->size() : 0 + ); + + // Gather sizes (offsets irrelevant) + // and total number of parcels (all processes) + const globalIndex procAddr(globalIndex::gatherOnly{}, nLocalParcels); + + // Extract positions from parcel. + // Store as floatVector, since that is what Ensight will write anyhow + + DynamicList<floatVector> positions; + positions.reserve(UPstream::master() ? procAddr.maxSize() : nLocalParcels); + + if (parcelsPtr) + { + const auto& parcels = *parcelsPtr; + + positions.resize_nocopy(parcels.size()); // same as nLocalParcels + + auto iter = positions.begin(); + + if (std::is_same<float, vector::cmptType>::value) + { + for (const auto& p : parcels) + { + *iter = p.position(); + ++iter; + } + } + else + { + for (const auto& p : parcels) + { + const vector pos(p.position()); + + (*iter).x() = narrowFloat(pos.x()); + (*iter).y() = narrowFloat(pos.y()); + (*iter).z() = narrowFloat(pos.z()); + ++iter; + } + } + + parcelsPtr.reset(nullptr); + } + + return ensightOutput::writeCloudPositions(os, positions, procAddr); +} + + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.H b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.H index e83fbecec0cbf7e582206856ddf079135b4ab1b6..323296eb261c59da3de3156a1605708f8c833732 100644 --- a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.H +++ b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloud.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,6 +40,8 @@ SourceFiles #include "ensightFile.H" #include "IOField.H" +#include "DynamicList.H" +#include "vector.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -48,6 +50,7 @@ namespace Foam // Forward Declarations class fvMesh; +class globalIndex; namespace ensightOutput { @@ -55,6 +58,34 @@ namespace ensightOutput // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +//- Write cloud positions +bool writeCloudPositions +( + //! Output file (must be valid on master) + ensightFile& os, + + //! The positions (measured data) to write. + //! Also used as intermediate buffer (on master) + DynamicList<floatVector>& positions, + + //! The global sizes of \p positions (must be valid on master) + //! and consistent with \p positions dimensions + const globalIndex& procAddr +); + + +//- Write cloud positions +bool writeCloudPositions +( + //! Output file (must be valid on master) + ensightFile& os, + + //! The positions (measured data) to write. + //! Also used as intermediate buffer (on master) + DynamicList<floatVector>& positions +); + + //- Write cloud positions bool writeCloudPositions ( @@ -80,7 +111,23 @@ bool writeCloudField ensightFile& os, //! The cloud field - const IOField<Type>& field + const UList<Type>& field, + + //! The global sizes of \p field (must be valid on master) + //! and consistent with \p field dimensions + const globalIndex& procAddr +); + + +//- Write cloud field, returning true if the field is non-empty. +template<class Type> +bool writeCloudField +( + //! Output file (must be valid on master) + ensightFile& os, + + //! The cloud field + const UList<Type>& field ); diff --git a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloudTemplates.C b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloudTemplates.C index cc865cc7d3bd0a21b7916f782a25d42993d3f3d4..85b5d8a898a51c65a5973819648f1b896ef029a0 100644 --- a/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloudTemplates.C +++ b/src/lagrangian/intermediate/conversion/ensight/ensightOutputCloudTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,7 +39,6 @@ Foam::label Foam::ensightOutput::Detail::writeCloudFieldContent label count ) { - // Write master data for (Type val : field) // <-- working on a copy! { if (mag(val) < 1e-90) // approximately root(ROOTVSMALL) @@ -70,18 +69,20 @@ template<class Type> bool Foam::ensightOutput::writeCloudField ( ensightFile& os, - const IOField<Type>& field + const UList<Type>& field, + const globalIndex& procAddr ) { - if (returnReduceAnd(field.empty())) + bool allEmpty(!procAddr.totalSize()); + Pstream::broadcast(allEmpty); + + if (allEmpty) { - return false; + return false; // All empty } - // Gather sizes (offsets irrelevant) - const globalIndex procAddr(globalIndex::gatherOnly{}, field.size()); - if (Pstream::master()) + if (UPstream::master()) { // 6 values per line label count = 0; @@ -128,7 +129,7 @@ bool Foam::ensightOutput::writeCloudField os.newline(); } } - else + else if (UPstream::is_subrank()) { if (field.size()) { @@ -146,6 +147,23 @@ bool Foam::ensightOutput::writeCloudField } +template<class Type> +bool Foam::ensightOutput::writeCloudField +( + ensightFile& os, + const UList<Type>& field +) +{ + return ensightOutput::writeCloudField + ( + os, + field, + // Gather sizes (offsets irrelevant) + globalIndex(globalIndex::gatherOnly{}, field.size()) + ); +} + + template<class Type> bool Foam::ensightOutput::readWriteCloudField ( @@ -162,10 +180,11 @@ bool Foam::ensightOutput::readWriteCloudField IOobject io(fieldObject); io.readOpt(IOobject::READ_IF_PRESENT); + io.registerObject(IOobject::NO_REGISTER); IOField<Type> field(io); - writeCloudField(os, field); + ensightOutput::writeCloudField(os, field); } return true; diff --git a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcel.H b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcel.H index 7741b6195f7a4c9dfa92e52a7998505e44ad6542..ee46e5e4e5b0eb7d4fc15c122cbc6b8af4461a79 100644 --- a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -226,20 +226,19 @@ public: //- Construct as a copy CollidingParcel(const CollidingParcel& p, const polyMesh& mesh); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new CollidingParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new CollidingParcel(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C index 1aa32adde2af3b25000e781115b15a1e2610e8f0..cf080b2aee39c7fdb1cdb2ff20f09ae85b5dbf77 100644 --- a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C @@ -101,33 +101,33 @@ void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c) ParcelType::readFields(c); - IOField<vector> f(c.fieldIOobject("f", IOobject::MUST_READ), readOnProc); + IOField<vector> f(c.newIOobject("f", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, f); IOField<vector> angularMomentum ( - c.fieldIOobject("angularMomentum", IOobject::MUST_READ), + c.newIOobject("angularMomentum", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, angularMomentum); IOField<vector> torque ( - c.fieldIOobject("torque", IOobject::MUST_READ), + c.newIOobject("torque", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, torque); labelFieldCompactIOField collisionRecordsPairAccessed ( - c.fieldIOobject("collisionRecordsPairAccessed", IOobject::MUST_READ), + c.newIOobject("collisionRecordsPairAccessed", IOobject::MUST_READ), readOnProc ); c.checkFieldFieldIOobject(c, collisionRecordsPairAccessed); labelFieldCompactIOField collisionRecordsPairOrigProcOfOther ( - c.fieldIOobject + c.newIOobject ( "collisionRecordsPairOrigProcOfOther", IOobject::MUST_READ @@ -138,7 +138,7 @@ void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c) labelFieldCompactIOField collisionRecordsPairOrigIdOfOther ( - c.fieldIOobject + c.newIOobject ( "collisionRecordsPairOrigIdOfOther", IOobject::MUST_READ @@ -149,28 +149,28 @@ void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c) pairDataFieldCompactIOField collisionRecordsPairData ( - c.fieldIOobject("collisionRecordsPairData", IOobject::MUST_READ), + c.newIOobject("collisionRecordsPairData", IOobject::MUST_READ), readOnProc ); c.checkFieldFieldIOobject(c, collisionRecordsPairData); labelFieldCompactIOField collisionRecordsWallAccessed ( - c.fieldIOobject("collisionRecordsWallAccessed", IOobject::MUST_READ), + c.newIOobject("collisionRecordsWallAccessed", IOobject::MUST_READ), readOnProc ); c.checkFieldFieldIOobject(c, collisionRecordsWallAccessed); vectorFieldCompactIOField collisionRecordsWallPRel ( - c.fieldIOobject("collisionRecordsWallPRel", IOobject::MUST_READ), + c.newIOobject("collisionRecordsWallPRel", IOobject::MUST_READ), readOnProc ); c.checkFieldFieldIOobject(c, collisionRecordsWallPRel); wallDataFieldCompactIOField collisionRecordsWallData ( - c.fieldIOobject("collisionRecordsWallData", IOobject::MUST_READ), + c.newIOobject("collisionRecordsWallData", IOobject::MUST_READ), readOnProc ); c.checkFieldFieldIOobject(c, collisionRecordsWallData); @@ -209,22 +209,22 @@ void Foam::CollidingParcel<ParcelType>::writeFields(const CloudType& c) const bool writeOnProc = c.size(); - IOField<vector> f(c.fieldIOobject("f", IOobject::NO_READ), np); + IOField<vector> f(c.newIOobject("f", IOobject::NO_READ), np); IOField<vector> angMom ( - c.fieldIOobject("angularMomentum", IOobject::NO_READ), + c.newIOobject("angularMomentum", IOobject::NO_READ), np ); - IOField<vector> torque(c.fieldIOobject("torque", IOobject::NO_READ), np); + IOField<vector> torque(c.newIOobject("torque", IOobject::NO_READ), np); labelFieldCompactIOField collisionRecordsPairAccessed ( - c.fieldIOobject("collisionRecordsPairAccessed", IOobject::NO_READ), + c.newIOobject("collisionRecordsPairAccessed", IOobject::NO_READ), np ); labelFieldCompactIOField collisionRecordsPairOrigProcOfOther ( - c.fieldIOobject + c.newIOobject ( "collisionRecordsPairOrigProcOfOther", IOobject::NO_READ @@ -233,27 +233,27 @@ void Foam::CollidingParcel<ParcelType>::writeFields(const CloudType& c) ); labelFieldCompactIOField collisionRecordsPairOrigIdOfOther ( - c.fieldIOobject("collisionRecordsPairOrigIdOfOther", IOobject::NO_READ), + c.newIOobject("collisionRecordsPairOrigIdOfOther", IOobject::NO_READ), np ); pairDataFieldCompactIOField collisionRecordsPairData ( - c.fieldIOobject("collisionRecordsPairData", IOobject::NO_READ), + c.newIOobject("collisionRecordsPairData", IOobject::NO_READ), np ); labelFieldCompactIOField collisionRecordsWallAccessed ( - c.fieldIOobject("collisionRecordsWallAccessed", IOobject::NO_READ), + c.newIOobject("collisionRecordsWallAccessed", IOobject::NO_READ), np ); vectorFieldCompactIOField collisionRecordsWallPRel ( - c.fieldIOobject("collisionRecordsWallPRel", IOobject::NO_READ), + c.newIOobject("collisionRecordsWallPRel", IOobject::NO_READ), np ); wallDataFieldCompactIOField collisionRecordsWallData ( - c.fieldIOobject("collisionRecordsWallData", IOobject::NO_READ), + c.newIOobject("collisionRecordsWallData", IOobject::NO_READ), np ); diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H index 14efa73daf272c7125d4574905762c02c19894e9..d8362c1ba0eeb70ba6577c2aa145676aabc849f9 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" #include "interpolation.H" #include "demandDrivenEntry.H" #include "labelFieldIOField.H" @@ -433,20 +432,19 @@ public: //- Construct as a copy KinematicParcel(const KinematicParcel& p, const polyMesh& mesh); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new KinematicParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new KinematicParcel(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C index a488b9e4f7e419caf74fe129457e8d0518bef19e..e660263e2bc3a689c2a4fa4cba753e69d8756a3b 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C @@ -126,77 +126,77 @@ void Foam::KinematicParcel<ParcelType>::readFields(CloudType& c) IOField<label> active ( - c.fieldIOobject("active", IOobject::MUST_READ), + c.newIOobject("active", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, active); IOField<label> typeId ( - c.fieldIOobject("typeId", IOobject::MUST_READ), + c.newIOobject("typeId", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, typeId); IOField<scalar> nParticle ( - c.fieldIOobject("nParticle", IOobject::MUST_READ), + c.newIOobject("nParticle", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, nParticle); IOField<scalar> d ( - c.fieldIOobject("d", IOobject::MUST_READ), + c.newIOobject("d", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, d); IOField<scalar> dTarget ( - c.fieldIOobject("dTarget", IOobject::MUST_READ), + c.newIOobject("dTarget", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, dTarget); IOField<vector> U ( - c.fieldIOobject("U", IOobject::MUST_READ), + c.newIOobject("U", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, U); IOField<scalar> rho ( - c.fieldIOobject("rho", IOobject::MUST_READ), + c.newIOobject("rho", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, rho); IOField<scalar> age ( - c.fieldIOobject("age", IOobject::MUST_READ), + c.newIOobject("age", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, age); IOField<scalar> tTurb ( - c.fieldIOobject("tTurb", IOobject::MUST_READ), + c.newIOobject("tTurb", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, tTurb); IOField<vector> UTurb ( - c.fieldIOobject("UTurb", IOobject::MUST_READ), + c.newIOobject("UTurb", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, UTurb); IOField<vector> UCorrect ( - c.fieldIOobject("UCorrect", IOobject::MUST_READ), + c.newIOobject("UCorrect", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, UCorrect); @@ -231,21 +231,21 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const CloudType& c) const label np = c.size(); const bool writeOnProc = c.size(); - IOField<label> active(c.fieldIOobject("active", IOobject::NO_READ), np); - IOField<label> typeId(c.fieldIOobject("typeId", IOobject::NO_READ), np); + IOField<label> active(c.newIOobject("active", IOobject::NO_READ), np); + IOField<label> typeId(c.newIOobject("typeId", IOobject::NO_READ), np); IOField<scalar> nParticle ( - c.fieldIOobject("nParticle", IOobject::NO_READ), + c.newIOobject("nParticle", IOobject::NO_READ), np ); - IOField<scalar> d(c.fieldIOobject("d", IOobject::NO_READ), np); - IOField<scalar> dTarget(c.fieldIOobject("dTarget", IOobject::NO_READ), np); - IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np); - IOField<scalar> rho(c.fieldIOobject("rho", IOobject::NO_READ), np); - IOField<scalar> age(c.fieldIOobject("age", IOobject::NO_READ), np); - IOField<scalar> tTurb(c.fieldIOobject("tTurb", IOobject::NO_READ), np); - IOField<vector> UTurb(c.fieldIOobject("UTurb", IOobject::NO_READ), np); - IOField<vector> UCorrect(c.fieldIOobject("UCorrect", IOobject::NO_READ), np); + IOField<scalar> d(c.newIOobject("d", IOobject::NO_READ), np); + IOField<scalar> dTarget(c.newIOobject("dTarget", IOobject::NO_READ), np); + IOField<vector> U(c.newIOobject("U", IOobject::NO_READ), np); + IOField<scalar> rho(c.newIOobject("rho", IOobject::NO_READ), np); + IOField<scalar> age(c.newIOobject("age", IOobject::NO_READ), np); + IOField<scalar> tTurb(c.newIOobject("tTurb", IOobject::NO_READ), np); + IOField<vector> UTurb(c.newIOobject("UTurb", IOobject::NO_READ), np); + IOField<vector> UCorrect(c.newIOobject("UCorrect", IOobject::NO_READ), np); label i = 0; diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelTrackingDataI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelTrackingDataI.H index 6587b5ecb3ad526202120b012882d28e6fcfc356..fab7a36e2a066674cc855c5f7b8ffef9d4b0c949 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelTrackingDataI.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelTrackingDataI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -73,7 +73,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":volumeAverage", + IOobject::scopedName(cloud.name(), "volumeAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -87,7 +87,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":radiusAverage", + IOobject::scopedName(cloud.name(), "radiusAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -101,7 +101,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":rhoAverage", + IOobject::scopedName(cloud.name(), "rhoAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -115,7 +115,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":uAverage", + IOobject::scopedName(cloud.name(), "uAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -129,7 +129,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":uSqrAverage", + IOobject::scopedName(cloud.name(), "uSqrAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -143,7 +143,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":frequencyAverage", + IOobject::scopedName(cloud.name(), "frequencyAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -157,7 +157,7 @@ inline Foam::KinematicParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":massAverage", + IOobject::scopedName(cloud.name(), "massAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -287,7 +287,7 @@ updateAverages ( IOobject ( - cloud.name() + ":weightAverage", + IOobject::scopedName(cloud.name(), "weightAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -366,4 +366,5 @@ updateAverages frequencyAverage_->average(weightAverage); } + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcel.H b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcel.H index 59cc4044fceb5b531bd1fdb54c8cbd00e19eea27..e62261d6d2cb2890c67a3d8286ef86ec314a3cb0 100644 --- a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -238,20 +238,19 @@ public: //- Construct as a copy MPPICParcel(const MPPICParcel& p, const polyMesh& mesh); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new MPPICParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new MPPICParcel(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C index 581e53e5b2cb9ea2d53d93d0fd3d63b0c56c900b..0cf83e4e051ea2643214adfb7dfb5c40e109fbc0 100644 --- a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C @@ -94,7 +94,7 @@ void Foam::MPPICParcel<ParcelType>::readFields(CloudType& c) IOField<vector> UCorrect ( - c.fieldIOobject("UCorrect", IOobject::MUST_READ), + c.newIOobject("UCorrect", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, UCorrect); @@ -118,8 +118,7 @@ void Foam::MPPICParcel<ParcelType>::writeFields(const CloudType& c) const label np = c.size(); const bool writeOnProc = c.size(); - IOField<vector> - UCorrect(c.fieldIOobject("UCorrect", IOobject::NO_READ), np); + IOField<vector> UCorrect(c.newIOobject("UCorrect", IOobject::NO_READ), np); label i = 0; diff --git a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelTrackingDataI.H b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelTrackingDataI.H index 3b96e305fa3b05d3c7cac3f2faafda855610b6dd..e9721f1a5027844deed1457c5dec162a8473d805 100644 --- a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelTrackingDataI.H +++ b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelTrackingDataI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,7 +45,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":volumeAverage", + IOobject::scopedName(cloud.name(), "volumeAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -59,7 +59,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":radiusAverage", + IOobject::scopedName(cloud.name(), "radiusAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -73,7 +73,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":rhoAverage", + IOobject::scopedName(cloud.name(), "rhoAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -87,7 +87,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":uAverage", + IOobject::scopedName(cloud.name(), "uAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -101,7 +101,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":uSqrAverage", + IOobject::scopedName(cloud.name(), "uSqrAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -115,7 +115,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":frequencyAverage", + IOobject::scopedName(cloud.name(), "frequencyAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -129,7 +129,7 @@ inline Foam::MPPICParcel<ParcelType>::trackingData::trackingData ( IOobject ( - cloud.name() + ":massAverage", + IOobject::scopedName(cloud.name(), "massAverage"), cloud.db().time().timeName(), cloud.mesh() ), @@ -164,7 +164,7 @@ inline void Foam::MPPICParcel<ParcelType>::trackingData::updateAverages ( IOobject ( - cloud.name() + ":weightAverage", + IOobject::scopedName(cloud.name(), "weightAverage"), cloud.db().time().timeName(), cloud.mesh() ), diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcel.H index 120cfcd4abb101f7a860855c7783eb75907257b7..fc589fac93383e4d2fcff2db6d844ad17cec0693 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcel.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2019 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -280,23 +280,19 @@ public: const polyMesh& mesh ); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new ReactingHeterogeneousParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle> - ( - new ReactingHeterogeneousParcel(*this, mesh) - ); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C index a1109002f14b86adbf391d4c05c884aa54f50046..e577aa35b946dcd9036ced9be11a866f33d5c925 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C @@ -93,7 +93,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields IOField<scalar> mass0 ( - c.fieldIOobject("mass0", IOobject::MUST_READ), + c.newIOobject("mass0", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, mass0); @@ -123,7 +123,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields // Read F IOField<scalar> F ( - c.fieldIOobject + c.newIOobject ( "F" + name(i), IOobject::MUST_READ @@ -144,7 +144,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields { IOField<scalar> Y ( - c.fieldIOobject + c.newIOobject ( "Y" + solidNames[j], IOobject::MUST_READ @@ -188,7 +188,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields const label np = c.size(); const bool writeOnProc = c.size(); - IOField<scalar> mass0(c.fieldIOobject("mass0", IOobject::NO_READ), np); + IOField<scalar> mass0(c.newIOobject("mass0", IOobject::NO_READ), np); label nF = 0; label i = 0; @@ -208,7 +208,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields { IOField<scalar> F ( - c.fieldIOobject + c.newIOobject ( "F" + name(i), IOobject::NO_READ @@ -231,7 +231,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields { IOField<scalar> Y ( - c.fieldIOobject + c.newIOobject ( "Y" + solidNames[j], IOobject::NO_READ diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H index 757dc1bc5db572f9d94660294ed5d58bbc68b830..a2dd7c434e0cbb05dbe739be629a3ea23cb2e190 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -357,20 +357,19 @@ public: const polyMesh& mesh ); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new ReactingMultiphaseParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new ReactingMultiphaseParcel(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C index f5e5987fa2c2920eec2f35a707f2eb47b75fff6a..bc65c1387b0c2a599ff88f6c66a91ede94c18ba6 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C @@ -119,7 +119,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields { IOField<scalar> YGas ( - c.fieldIOobject + c.newIOobject ( "Y" + gasNames[j] + stateLabels[idGas], IOobject::MUST_READ @@ -139,7 +139,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields { IOField<scalar> YLiquid ( - c.fieldIOobject + c.newIOobject ( "Y" + liquidNames[j] + stateLabels[idLiquid], IOobject::MUST_READ @@ -159,7 +159,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields { IOField<scalar> YSolid ( - c.fieldIOobject + c.newIOobject ( "Y" + solidNames[j] + stateLabels[idSolid], IOobject::MUST_READ @@ -208,7 +208,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields { IOField<scalar> YGas ( - c.fieldIOobject + c.newIOobject ( "Y" + gasNames[j] + stateLabels[idGas], IOobject::NO_READ @@ -232,7 +232,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields { IOField<scalar> YLiquid ( - c.fieldIOobject + c.newIOobject ( "Y" + liquidNames[j] + stateLabels[idLiquid], IOobject::NO_READ @@ -256,7 +256,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields { IOField<scalar> YSolid ( - c.fieldIOobject + c.newIOobject ( "Y" + solidNames[j] + stateLabels[idSolid], IOobject::NO_READ diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H index 4491c506cc016776c6fff99c77b29f209c8e0ec6..a2975634172c9071b9a715b3f3ea340af448b590 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -327,23 +327,19 @@ public: //- Construct as a copy ReactingParcel(const ReactingParcel& p); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new ReactingParcel<ParcelType>(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle> - ( - new ReactingParcel<ParcelType>(*this, mesh) - ); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C index 9c4d324b5c30c1d339ce291f00ea81994e9777f2..70abbc7a31dba23d709752d09a4faea5a7595066 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C @@ -112,7 +112,7 @@ void Foam::ReactingParcel<ParcelType>::readFields IOField<scalar> mass0 ( - c.fieldIOobject("mass0", IOobject::MUST_READ), + c.newIOobject("mass0", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, mass0); @@ -146,7 +146,7 @@ void Foam::ReactingParcel<ParcelType>::readFields { IOField<scalar> Y ( - c.fieldIOobject + c.newIOobject ( "Y" + phaseTypes[j] + stateLabels[j], IOobject::MUST_READ @@ -187,7 +187,7 @@ void Foam::ReactingParcel<ParcelType>::writeFields const bool writeOnProc = c.size(); { - IOField<scalar> mass0(c.fieldIOobject("mass0", IOobject::NO_READ), np); + IOField<scalar> mass0(c.newIOobject("mass0", IOobject::NO_READ), np); label i = 0; for (const ReactingParcel<ParcelType>& p : c) @@ -210,7 +210,7 @@ void Foam::ReactingParcel<ParcelType>::writeFields { IOField<scalar> Y ( - c.fieldIOobject + c.newIOobject ( "Y" + phaseTypes[j] + stateLabels[j], IOobject::NO_READ diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H index dbbf70ffad050540d9be24986fe68e6fac47c94a..d22c06958aaad71da96c160ab129ec6694d946bb 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -348,20 +348,19 @@ public: //- Construct as a copy ThermoParcel(const ThermoParcel& p, const polyMesh& mesh); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new ThermoParcel(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle>(new ThermoParcel(*this, mesh)); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C index 410836a81629fb745f4e468793cb613422ae63ec..736d73dae417247c44e24b4da03c1324f41b4606 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C @@ -94,10 +94,10 @@ void Foam::ThermoParcel<ParcelType>::readFields(CloudType& c) ParcelType::readFields(c); - IOField<scalar> T(c.fieldIOobject("T", IOobject::MUST_READ), readOnProc); + IOField<scalar> T(c.newIOobject("T", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, T); - IOField<scalar> Cp(c.fieldIOobject("Cp", IOobject::MUST_READ), readOnProc); + IOField<scalar> Cp(c.newIOobject("Cp", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, Cp); @@ -121,8 +121,8 @@ void Foam::ThermoParcel<ParcelType>::writeFields(const CloudType& c) const label np = c.size(); const bool writeOnProc = c.size(); - IOField<scalar> T(c.fieldIOobject("T", IOobject::NO_READ), np); - IOField<scalar> Cp(c.fieldIOobject("Cp", IOobject::NO_READ), np); + IOField<scalar> T(c.newIOobject("T", IOobject::NO_READ), np); + IOField<scalar> Cp(c.newIOobject("Cp", IOobject::NO_READ), np); label i = 0; for (const ThermoParcel<ParcelType>& p : c) diff --git a/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H b/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H index 25647e25b447104b5d70e0c78fe0dd6fba66eff0..fe73fa15b7d1feb07fa42046556645558071a28c 100644 --- a/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H +++ b/src/lagrangian/intermediate/parcels/include/makeParcelCloudFunctionObjects.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2018 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,6 +33,7 @@ License #include "FaceInteraction.H" #include "FacePostProcessing.H" +#include "FreezeParticles.H" #include "ParticleCollector.H" #include "ParticleErosion.H" #include "ParticleTracks.H" @@ -56,6 +57,7 @@ License \ makeCloudFunctionObjectType(FaceInteraction, CloudType); \ makeCloudFunctionObjectType(FacePostProcessing, CloudType); \ + makeCloudFunctionObjectType(FreezeParticles, CloudType); \ makeCloudFunctionObjectType(ParticleCollector, CloudType); \ makeCloudFunctionObjectType(ParticleErosion, CloudType); \ makeCloudFunctionObjectType(ParticleTracks, CloudType); \ diff --git a/src/lagrangian/intermediate/parcels/include/makeParcelForces.H b/src/lagrangian/intermediate/parcels/include/makeParcelForces.H index 3f5fc615066c46933287189014730b862ffd7b00..c4b6a0161657a8c3cc13b8e0078dd5a175bea85e 100644 --- a/src/lagrangian/intermediate/parcels/include/makeParcelForces.H +++ b/src/lagrangian/intermediate/parcels/include/makeParcelForces.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,6 +38,7 @@ License #include "PlessisMasliyahDragForce.H" #include "SaffmanMeiLiftForce.H" +#include "TomiyamaDragForce.H" #include "TomiyamaLiftForce.H" #include "GravityForce.H" @@ -60,6 +61,7 @@ License makeParticleForceModelType(ErgunWenYuDragForce, CloudType); \ makeParticleForceModelType(PlessisMasliyahDragForce, CloudType); \ makeParticleForceModelType(SaffmanMeiLiftForce, CloudType); \ + makeParticleForceModelType(TomiyamaDragForce, CloudType); \ makeParticleForceModelType(TomiyamaLiftForce, CloudType); \ makeParticleForceModelType(GravityForce, CloudType); \ makeParticleForceModelType(NonInertialFrameForce, CloudType); \ diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H index 7c029ef8251a79a2e0f67f56d70944c26d8e1353..11491b4e929b9c07f5dcbb9a00975b46761c5636 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCloudFunctionObjects.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2018 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -33,6 +33,7 @@ License #include "FaceInteraction.H" #include "FacePostProcessing.H" +#include "FreezeParticles.H" #include "ParticleCollector.H" #include "ParticleErosion.H" #include "ParticleTracks.H" @@ -58,6 +59,7 @@ License \ makeCloudFunctionObjectType(FaceInteraction, CloudType); \ makeCloudFunctionObjectType(FacePostProcessing, CloudType); \ + makeCloudFunctionObjectType(FreezeParticles, CloudType); \ makeCloudFunctionObjectType(ParticleCollector, CloudType); \ makeCloudFunctionObjectType(ParticleErosion, CloudType); \ makeCloudFunctionObjectType(ParticleTracks, CloudType); \ diff --git a/src/lagrangian/intermediate/parcels/include/makeThermoParcelCloudFunctionObjects.H b/src/lagrangian/intermediate/parcels/include/makeThermoParcelCloudFunctionObjects.H index f43ae83b60668d20d29781f9f93104621de13e7e..c6ad49a15a8f79b9e3ff7dfdb2dad9f977c869bf 100644 --- a/src/lagrangian/intermediate/parcels/include/makeThermoParcelCloudFunctionObjects.H +++ b/src/lagrangian/intermediate/parcels/include/makeThermoParcelCloudFunctionObjects.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,6 +32,7 @@ License #include "FaceInteraction.H" #include "FacePostProcessing.H" +#include "FreezeParticles.H" #include "ParticleCollector.H" #include "ParticleErosion.H" #include "ParticleTracks.H" @@ -56,6 +57,7 @@ License \ makeCloudFunctionObjectType(FaceInteraction, CloudType); \ makeCloudFunctionObjectType(FacePostProcessing, CloudType); \ + makeCloudFunctionObjectType(FreezeParticles, CloudType); \ makeCloudFunctionObjectType(ParticleCollector, CloudType); \ makeCloudFunctionObjectType(ParticleErosion, CloudType); \ makeCloudFunctionObjectType(ParticleTracks, CloudType); \ diff --git a/src/lagrangian/intermediate/parcels/include/makeThermoParcelForces.H b/src/lagrangian/intermediate/parcels/include/makeThermoParcelForces.H index 2efc413d19bce0e6f4508602b9e51e15c5135f20..682c8a3d84d1b0a4fbaec3f0bd9333bf5bb47391 100644 --- a/src/lagrangian/intermediate/parcels/include/makeThermoParcelForces.H +++ b/src/lagrangian/intermediate/parcels/include/makeThermoParcelForces.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,6 +35,7 @@ License #include "NonSphereDragForce.H" #include "SaffmanMeiLiftForce.H" +#include "TomiyamaDragForce.H" #include "TomiyamaLiftForce.H" #include "GravityForce.H" @@ -53,6 +54,7 @@ License makeParticleForceModelType(SphereDragForce, CloudType); \ makeParticleForceModelType(NonSphereDragForce, CloudType); \ makeParticleForceModelType(SaffmanMeiLiftForce, CloudType); \ + makeParticleForceModelType(TomiyamaDragForce, CloudType); \ makeParticleForceModelType(TomiyamaLiftForce, CloudType); \ makeParticleForceModelType(GravityForce, CloudType); \ makeParticleForceModelType(NonInertialFrameForce, CloudType); \ diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.C new file mode 100644 index 0000000000000000000000000000000000000000..08ae46878a6085930edf22a676253ae95bdbfc0e --- /dev/null +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.C @@ -0,0 +1,71 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "FreezeParticles.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +template<class CloudType> +Foam::FreezeParticles<CloudType>::FreezeParticles +( + const dictionary& dict, + CloudType& owner, + const word& modelName +) +: + CloudFunctionObject<CloudType>(dict, owner, modelName, typeName) +{} + + +template<class CloudType> +Foam::FreezeParticles<CloudType>::FreezeParticles +( + const FreezeParticles<CloudType>& vf +) +: + CloudFunctionObject<CloudType>(vf) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class CloudType> +void Foam::FreezeParticles<CloudType>::preEvolve +( + const typename parcelType::trackingData& td +) +{ + auto& c = this->owner(); + + forAllIters(c, particlePtr) + { + particlePtr->active(false); + } +} + + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.H b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.H new file mode 100644 index 0000000000000000000000000000000000000000..9802feab23cf1577167cae4a1140ed4f158ca60e --- /dev/null +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/FreezeParticles/FreezeParticles.H @@ -0,0 +1,141 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::FreezeParticles + +Group + grpLagrangianIntermediateFunctionObjects + +Description + Sets particle active flag to false to freeze particles in space + +Usage + Minimal example by using \c constant/\<CloudProperties\>: + \verbatim + cloudFunctions + { + FreezeParticles + { + // Mandatory entries + type FreezeParticles; + } + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + type | Type name: FreezeParticles | word | yes | - + \endtable + +SourceFiles + FreezeParticles.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_FreezeParticles_H +#define Foam_FreezeParticles_H + +#include "CloudFunctionObject.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class FreezeParticles Declaration +\*---------------------------------------------------------------------------*/ + +template<class CloudType> +class FreezeParticles +: + public CloudFunctionObject<CloudType> +{ + // Private Member Functions + + //- Write post-processing info + virtual void write() + {} + + +public: + + typedef typename CloudType::parcelType parcelType; + + //- Runtime type information + TypeName("FreezeParticles"); + + + // Constructors + + //- Construct from dictionary + FreezeParticles + ( + const dictionary& dict, + CloudType& owner, + const word& modelName + ); + + //- Copy construct + FreezeParticles(const FreezeParticles<CloudType>& vf); + + //- Construct and return a clone + virtual autoPtr<CloudFunctionObject<CloudType>> clone() const + { + return autoPtr<CloudFunctionObject<CloudType>> + ( + new FreezeParticles<CloudType>(*this) + ); + } + + + //- Destructor + virtual ~FreezeParticles() = default; + + + // Member Functions + + //- Pre-evolve hook + virtual void preEvolve(const typename parcelType::trackingData& td); +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "FreezeParticles.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleErosion/ParticleErosion.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleErosion/ParticleErosion.C index df282484581504e21d42dd45e0961e58d50cc691..9eba501588b97ce7b170bfe37a03f8bb6fbbff50 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleErosion/ParticleErosion.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleErosion/ParticleErosion.C @@ -27,6 +27,7 @@ License \*---------------------------------------------------------------------------*/ #include "ParticleErosion.H" +#include "wordRes.H" // * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * // @@ -110,15 +111,15 @@ Foam::ParticleErosion<CloudType>::ParticleErosion ); labelHashSet uniqIds; - for (const wordRe& re : patchNames) + for (const wordRe& select : patchNames) { - labelList ids = findMatchingStrings(re, allPatchNames); + labelList ids = wordRes::matching(select, allPatchNames); if (ids.empty()) { WarningInFunction - << "Cannot find any patch names matching " << re - << endl; + << "Cannot find any patch names matching " + << select << nl; } uniqIds.insert(ids); diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleHistogram/ParticleHistogram.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleHistogram/ParticleHistogram.C index 437db3429c6b4859021c17262085ffa8859fc823..9fff625561a76b72c56635d6ff7a1ae4c2ab4d72 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleHistogram/ParticleHistogram.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticleHistogram/ParticleHistogram.C @@ -27,7 +27,6 @@ License #include "ParticleHistogram.H" #include "Pstream.H" -#include "stringListOps.H" #include "ListOps.H" #include "ListListOps.H" diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticlePostProcessing/ParticlePostProcessing.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticlePostProcessing/ParticlePostProcessing.C index 77e03bf659cec00063a02ea2a0c712aae867dfdd..9703067440b29b29189f3acacb68871294a58b36 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticlePostProcessing/ParticlePostProcessing.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/ParticlePostProcessing/ParticlePostProcessing.C @@ -28,7 +28,6 @@ License #include "ParticlePostProcessing.H" #include "Pstream.H" -#include "stringListOps.H" #include "ListOps.H" #include "ListListOps.H" diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchCollisionDensity/PatchCollisionDensity.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchCollisionDensity/PatchCollisionDensity.C index e98f9adc3f02940a0cbd8a5f8f525aea0057c033..68c3e804bbab67a8fc6b925048eaf6fe335a98b6 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchCollisionDensity/PatchCollisionDensity.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchCollisionDensity/PatchCollisionDensity.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2018 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,6 @@ License #include "PatchCollisionDensity.H" #include "Pstream.H" -#include "stringListOps.H" #include "ListOps.H" #include "ListListOps.H" @@ -39,36 +38,42 @@ void Foam::PatchCollisionDensity<CloudType>::write() { const scalarField z(this->owner().mesh().nCells(), Zero); - volScalarField - ( - IOobject + { + volScalarField ( - this->owner().name() + ":collisionDensity", - this->owner().mesh().time().timeName(), - this->owner().mesh() - ), - this->owner().mesh(), - dimless/dimArea, - z, - collisionDensity_ - ) - .write(); - - volScalarField - ( - IOobject + this->owner().mesh().newIOobject + ( + IOobject::scopedName + ( + this->owner().name(), + "collisionDensity" + ) + ), + this->owner().mesh(), + dimless/dimArea, + z, + collisionDensity_ + ).write(); + } + + { + volScalarField ( - this->owner().name() + ":collisionDensityRate", - this->owner().mesh().time().timeName(), - this->owner().mesh() - ), - this->owner().mesh(), - dimless/dimArea/dimTime, - z, - (collisionDensity_ - collisionDensity0_) - /(this->owner().mesh().time().value() - time0_) - ) - .write(); + this->owner().mesh().newIOobject + ( + IOobject::scopedName + ( + this->owner().name(), + "collisionDensityRate" + ) + ), + this->owner().mesh(), + dimless/dimArea/dimTime, + z, + (collisionDensity_ - collisionDensity0_) + /(this->owner().mesh().time().value() - time0_) + ).write(); + } collisionDensity0_ == collisionDensity_; time0_ = this->owner().mesh().time().value(); @@ -106,11 +111,11 @@ Foam::PatchCollisionDensity<CloudType>::PatchCollisionDensity IOobject io ( - this->owner().name() + ":collisionDensity", - this->owner().mesh().time().timeName(), - this->owner().mesh(), - IOobject::MUST_READ, - IOobject::NO_WRITE + this->owner().mesh().newIOobject + ( + IOobject::scopedName(this->owner().name(), "collisionDensity"), + IOobject::MUST_READ + ) ); if (io.typeHeaderOk<volScalarField>()) diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchInteractionFields/PatchInteractionFields.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchInteractionFields/PatchInteractionFields.C index 83ed949ad74779909a5efac3482b9178737ca21f..687a6662bbb36f295f20771555ea5b1383924fb5 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchInteractionFields/PatchInteractionFields.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/PatchInteractionFields/PatchInteractionFields.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,7 +50,7 @@ void Foam::PatchInteractionFields<CloudType>::clearOrReset { if (fieldPtr) { - fieldPtr->primitiveFieldRef() = 0.0; + fieldPtr->primitiveFieldRef() = scalar(0); } else { @@ -62,11 +62,17 @@ void Foam::PatchInteractionFields<CloudType>::clearOrReset ( IOobject ( - this->owner().name() + ":" + this->modelName() + ":" + fieldName, + IOobject::scopedName + ( + this->owner().name(), + this->modelName(), + fieldName + ), mesh.time().timeName(), mesh, IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), mesh, dimensionedScalar(dims, Zero) diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C index e66c5a73a35a51f724906d665c42fc09153866fc..2dbed1a87b9dabf5f1bec28a23393a7f11f7df5f 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C @@ -58,7 +58,7 @@ void Foam::PairCollision<CloudType>::preInteraction() template<class CloudType> void Foam::PairCollision<CloudType>::parcelInteraction() { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; label startOfRequests = Pstream::nRequests(); diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/CellZoneInjection/CellZoneInjection.C b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/CellZoneInjection/CellZoneInjection.C index 4993effd6165738520d927d90fed52cb3a0b737d..5ee1a9e6ff77be4ac6064cb19b2ceb9b71bb9745 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/CellZoneInjection/CellZoneInjection.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/CellZoneInjection/CellZoneInjection.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -106,7 +106,9 @@ void Foam::CellZoneInjection<CloudType>::setPositions } // Parallel operation manipulations + const label myProci = UPstream::myProcNo(); globalIndex globalPositions(positions.size()); + List<vector> allPositions(globalPositions.totalSize(), point::max); List<label> allInjectorCells(globalPositions.totalSize(), -1); List<label> allInjectorTetFaces(globalPositions.totalSize(), -1); @@ -116,8 +118,7 @@ void Foam::CellZoneInjection<CloudType>::setPositions SubList<vector> ( allPositions, - globalPositions.localSize(Pstream::myProcNo()), - globalPositions.localStart(Pstream::myProcNo()) + globalPositions.range(myProci) ) = positions; Pstream::listCombineReduce(allPositions, minEqOp<point>()); @@ -126,20 +127,17 @@ void Foam::CellZoneInjection<CloudType>::setPositions SubList<label> ( allInjectorCells, - globalPositions.localSize(Pstream::myProcNo()), - globalPositions.localStart(Pstream::myProcNo()) + globalPositions.range(myProci) ) = injectorCells; SubList<label> ( allInjectorTetFaces, - globalPositions.localSize(Pstream::myProcNo()), - globalPositions.localStart(Pstream::myProcNo()) + globalPositions.range(myProci) ) = injectorTetFaces; SubList<label> ( allInjectorTetPts, - globalPositions.localSize(Pstream::myProcNo()), - globalPositions.localStart(Pstream::myProcNo()) + globalPositions.range(myProci) ) = injectorTetPts; // Transfer data diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.C b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.C index 36b5a7d8746c9cb4ee5255d00e7df72f90f5f562..80b34fb2035a519f854b620bf86b92b3e098ddb3 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,13 +44,12 @@ Foam::patchInjectionBase::patchInjectionBase : patchName_(patchName), patchId_(mesh.boundaryMesh().findPatchID(patchName_)), - patchArea_(0.0), + patchArea_(0), patchNormal_(), cellOwners_(), triFace_(), - triToFace_(), triCumulativeMagSf_(), - sumTriMagSf_(Pstream::nProcs() + 1, Zero) + sumTriMagSf_() { if (patchId_ < 0) { @@ -71,7 +71,6 @@ Foam::patchInjectionBase::patchInjectionBase(const patchInjectionBase& pib) patchNormal_(pib.patchNormal_), cellOwners_(pib.cellOwners_), triFace_(pib.triFace_), - triToFace_(pib.triToFace_), triCumulativeMagSf_(pib.triCumulativeMagSf_), sumTriMagSf_(pib.sumTriMagSf_) {} @@ -88,48 +87,68 @@ void Foam::patchInjectionBase::updateMesh(const polyMesh& mesh) cellOwners_ = patch.faceCells(); // Triangulate the patch faces and create addressing - DynamicList<label> triToFace(2*patch.size()); - DynamicList<scalar> triMagSf(2*patch.size()); - DynamicList<face> triFace(2*patch.size()); - DynamicList<face> tris(5); - - // Set zero value at the start of the tri area list - triMagSf.append(0.0); - - forAll(patch, facei) { - const face& f = patch[facei]; + label nTris = 0; + for (const face& f : patch) + { + nTris += f.nTriangles(); + } - tris.clear(); - f.triangles(points, tris); + DynamicList<labelledTri> dynTriFace(nTris); + DynamicList<face> tris(8); // work array - forAll(tris, i) + forAll(patch, facei) { - triToFace.append(facei); - triFace.append(tris[i]); - triMagSf.append(tris[i].mag(points)); + const face& f = patch[facei]; + + tris.clear(); + f.triangles(points, tris); + + for (const auto& t : tris) + { + dynTriFace.emplace_back(t[0], t[1], t[2], facei); + } } + + // Transfer to persistent storage + triFace_.transfer(dynTriFace); } - sumTriMagSf_ = Zero; - sumTriMagSf_[Pstream::myProcNo() + 1] = sum(triMagSf); - Pstream::listCombineReduce(sumTriMagSf_, maxEqOp<scalar>()); + const label myProci = UPstream::myProcNo(); + const label numProc = UPstream::nProcs(); - for (label i = 1; i < triMagSf.size(); i++) + // Calculate the cumulative triangle weights { - triMagSf[i] += triMagSf[i-1]; - } + triCumulativeMagSf_.resize_nocopy(triFace_.size()+1); - // Transfer to persistent storage - triFace_.transfer(triFace); - triToFace_.transfer(triToFace); - triCumulativeMagSf_.transfer(triMagSf); + auto iter = triCumulativeMagSf_.begin(); - // Convert sumTriMagSf_ into cumulative sum of areas per proc - for (label i = 1; i < sumTriMagSf_.size(); i++) - { - sumTriMagSf_[i] += sumTriMagSf_[i-1]; + // Set zero value at the start of the tri area/weight list + scalar patchArea = 0; + *iter++ = patchArea; + + // Calculate cumulative and total area + for (const auto& t : triFace_) + { + patchArea += t.mag(points); + *iter++ = patchArea; + } + + sumTriMagSf_.resize_nocopy(numProc+1); + sumTriMagSf_[0] = 0; + + { + scalarList::subList slice(sumTriMagSf_, numProc, 1); + slice[myProci] = patchArea; + Pstream::allGatherList(slice); + } + + // Convert to cumulative + for (label i = 1; i < sumTriMagSf_.size(); ++i) + { + sumTriMagSf_[i] += sumTriMagSf_[i-1]; + } } const scalarField magSf(mag(patch.faceAreas())); @@ -152,12 +171,12 @@ Foam::label Foam::patchInjectionBase::setPositionAndCell { label facei = -1; - if (cellOwners_.size() > 0) + if (!cellOwners_.empty()) { // Determine which processor to inject from const label proci = whichProc(fraction01); - if (Pstream::myProcNo() == proci) + if (UPstream::myProcNo() == proci) { const scalar areaFraction = fraction01*patchArea_; @@ -174,15 +193,13 @@ Foam::label Foam::patchInjectionBase::setPositionAndCell } // Set cellOwner - facei = triToFace_[trii]; + facei = triFace_[trii].index(); cellOwner = cellOwners_[facei]; // Find random point in triangle const polyPatch& patch = mesh.boundaryMesh()[patchId_]; const pointField& points = patch.points(); - const face& tf = triFace_[trii]; - const triPointRef tri(points[tf[0]], points[tf[1]], points[tf[2]]); - const point pf(tri.randomPoint(rnd)); + const point pf = triFace_[trii].tri(points).randomPoint(rnd); // Position perturbed away from face (into domain) const scalar a = rnd.position(scalar(0.1), scalar(0.5)); @@ -239,17 +256,9 @@ Foam::label Foam::patchInjectionBase::setPositionAndCell tetPti = cellTetIs[teti].tetPt(); } } - else - { - cellOwner = -1; - tetFacei = -1; - tetPti = -1; - - // Dummy position - position = pTraits<vector>::max; - } } - else + + if (facei == -1) { cellOwner = -1; tetFacei = -1; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.H b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.H index 6c2336670a693b645a2460b08f316e2dca7c9814..c7bb7f2ec4196fa275807cbe375a8b0f14cf3eea 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/PatchInjection/patchInjectionBase.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,21 +40,22 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef patchInjectionBase_H -#define patchInjectionBase_H +#ifndef Foam_patchInjectionBase_H +#define Foam_patchInjectionBase_H #include "word.H" #include "labelList.H" #include "scalarList.H" #include "vectorList.H" #include "faceList.H" +#include "labelledTri.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { -// Forward declarations +// Forward Declarations class polyMesh; class fvMesh; class Random; @@ -66,7 +68,7 @@ class patchInjectionBase { protected: - // Protected data + // Protected Data //- Patch name const word patchName_; @@ -83,13 +85,11 @@ protected: //- List of cell labels corresponding to injector positions labelList cellOwners_; - //- Decomposed patch faces as a list of triangles - faceList triFace_; + //- The polyPatch faces as triangles, the index of each corresponds + //- to the undecomposed patch face index. + List<labelledTri> triFace_; - //- Addressing from per triangle to patch face - labelList triToFace_; - - //- Cumulative triangle area per triangle face + //- Cumulative triangle area per triangle face (processor-local) scalarList triCumulativeMagSf_; //- Cumulative area fractions per processor diff --git a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/Coulomb/CoulombForce.C b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/Coulomb/CoulombForce.C index 36e4b0da6073b1facf2a66545066e98f19184001..97a9c55fc6f9f3408bfa3af46b2fd4094c65716a 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/Coulomb/CoulombForce.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/Coulomb/CoulombForce.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2023 OpenCFD Ltd. + Copyright (C) 2023-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,13 +46,14 @@ Foam::volVectorField& Foam::CoulombForce<CloudType>::getOrReadField ( fieldName, this->mesh().time().timeName(), - this->mesh(), + this->mesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh() ); - this->mesh().objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.C b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.C new file mode 100644 index 0000000000000000000000000000000000000000..09e953e4a8e1af77b62766ffa5cfddc2f5eb66fd --- /dev/null +++ b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.C @@ -0,0 +1,125 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "TomiyamaDragForce.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +template<class CloudType> +const Foam::Enum<typename Foam::TomiyamaDragForce<CloudType>::contaminationType> +Foam::TomiyamaDragForce<CloudType>::contaminationTypeNames +{ + { contaminationType::PURE, "pure" }, + { contaminationType::SLIGHT, "slight" }, + { contaminationType::FULL, "full" }, +}; + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +template<class CloudType> +Foam::scalar Foam::TomiyamaDragForce<CloudType>::CdRe(const scalar Re) const +{ + const scalar f = 1 + 0.15*pow(Re, 0.687); + + switch (contaminationType_) + { + case contaminationType::PURE: + { + // Eq. 31 pure system + return min(16*f, 48); + } + case contaminationType::SLIGHT: + { + // Eq. 32 slightly contaminated system + return min(24*f, 72); + } + case contaminationType::FULL: + { + // Eq. 33 fully contaminated system + return 24*f; + } + default: + {} + } + + return Zero; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +template<class CloudType> +Foam::TomiyamaDragForce<CloudType>::TomiyamaDragForce +( + CloudType& owner, + const fvMesh& mesh, + const dictionary& dict +) +: + ParticleForce<CloudType>(owner, mesh, dict, typeName, true), + sigma_(this->coeffs().getScalar("sigma")), + contaminationType_ + ( + contaminationTypeNames.get("contamination", this->coeffs()) + ) +{} + + +template<class CloudType> +Foam::TomiyamaDragForce<CloudType>::TomiyamaDragForce +( + const TomiyamaDragForce<CloudType>& df +) +: + ParticleForce<CloudType>(df), + sigma_(df.sigma_), + contaminationType_(df.contaminationType_) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +template<class CloudType> +Foam::forceSuSp Foam::TomiyamaDragForce<CloudType>::calcCoupled +( + const typename CloudType::parcelType& p, + const typename CloudType::parcelType::trackingData& td, + const scalar dt, + const scalar mass, + const scalar Re, + const scalar muc +) const +{ + const scalar Eo = p.Eo(td, sigma_); + const scalar CdRe = max(this->CdRe(Re), Re*8/3*Eo/(Eo + 4)); + + return forceSuSp(Zero, mass*0.75*muc*CdRe/(p.rho()*sqr(p.d()))); +} + + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.H b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.H new file mode 100644 index 0000000000000000000000000000000000000000..1ed29e7b039726b88ba680be7129151a8debfebb --- /dev/null +++ b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/TomiyamaDrag/TomiyamaDragForce.H @@ -0,0 +1,256 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::TomiyamaDragForce + +Group + grpLagrangianIntermediateForceSubModels + +Description + Particle-drag model wherein drag forces (per unit carrier-fluid + velocity) are dynamically computed using empirical expressions based on + their level of contamination. + + \f[ + \mathrm{F}_\mathrm{D} = + \frac{3}{4} + \frac{\mu_c\,\mathrm{C}_\mathrm{D}\,\mathrm{Re}_p}{\rho_p \, d_p^2} + \f] + + For pure systems: + \f[ + \mathrm{C}_\mathrm{D} = + \max\left[ + \min\left(\frac{16}{Re}(1+0.15Re^{0.687}), \frac{48}{Re}\right), + \frac{8}{3}\frac{Eo}{Eo+4} + \right] + \f] + + For slightly contaminated systems: + \f[ + \mathrm{C}_\mathrm{D} = + \max\left[ + \min\left(\frac{24}{Re}(1+0.15Re^{0.687}), \frac{72}{Re}\right), + \frac{8}{3}\frac{Eo}{Eo+4} + \right] + \f] + + For fully contaminated systems: + \f[ + \mathrm{C}_\mathrm{D} = + \max\left[ + \frac{24}{Re}(1+0.15Re^{0.687}), + \frac{8}{3}\frac{Eo}{Eo+4} + \right] + \f] + + where + \vartable + \mathrm{F}_\mathrm{D} | Drag force per carrier-fluid velocity [kg/s] + \mathrm{C}_\mathrm{D} | Particle drag coefficient + \mathrm{Re}_p | Particle Reynolds number + \rho_p | Particle mass density + \mu_c | Dynamic viscosity of carrier at the cell occupying particle + d_p | Particle diameter + \rho_c | Density of carrier at the cell occupying particle + \mathbf{u}_\mathrm{rel} | Relative velocity between particle and carrier + Eo | Eotvos number + \endvartable + + Constraints: + - Applicable to bubbles with a spatially homogeneous distribution. + + References: + \verbatim + Tomiyama, A., Kataoka, I., Zun, I., & Sakaguchi, T. (1998). + Drag coefficients of single bubbles under normal and micro gravity + conditions. + JSME International Journal Series B + Fluids and Thermal Engineering, 41(2), 472-479. + \endverbatim + +Usage + Minimal example by using \c constant/\<CloudProperties\>: + \verbatim + subModels + { + particleForces + { + tomiyamaDrag + { + // Mandatory entries + sigma <scalar>; + contamination <word>; // pure | slight | full + } + } + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + type | Type name: tomiyamaDrag | word | yes | - + sigma | Surface tension | scalar | yes | - + contamination | Contamination type | word | yes | - + \endtable + + Options for the \c contamination entry: + \verbatim + pure | Pure systems + slight | Slightly contaminated systems + full | Fully contaminated systems + \endverbatim + +Note + - \f$\mathrm{F}_\mathrm{D}\f$ is weighted with the particle mass/density + at the stage of a function return, so that it can later be normalised + with the effective mass, if necessary (e.g. when using virtual-mass forces). + +SourceFiles + TomiyamaDragForce.C + +\*---------------------------------------------------------------------------*/ + +#ifndef TomiyamaDragForce_H +#define TomiyamaDragForce_H + +#include "ParticleForce.H" +#include "Enum.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ +/*---------------------------------------------------------------------------*\ + Class TomiyamaDragForce Declaration +\*---------------------------------------------------------------------------*/ + +template<class CloudType> +class TomiyamaDragForce +: + public ParticleForce<CloudType> +{ +public: + + // Public Enumerations + + //- Options for the contamination types + enum contaminationType : char + { + PURE = 0, //!< "Pure systems" + SLIGHT, //!< "Slightly contaminated systems" + FULL //!< "Fully contaminated systems" + }; + + //- Names for the contaminationType options + static const Enum<contaminationType> contaminationTypeNames; + + +private: + + // Private Data + + //- Surface tension + const scalar sigma_; + + //- Contamination type option + const contaminationType contaminationType_; + + + // Private Member Functions + + //- Drag coefficient multiplied by Reynolds number + scalar CdRe(const scalar Re) const; + + +public: + + //- Runtime type information + TypeName("TomiyamaDrag"); + + + // Constructors + + //- Construct from mesh + TomiyamaDragForce + ( + CloudType& owner, + const fvMesh& mesh, + const dictionary& dict + ); + + //- Copy construct + TomiyamaDragForce(const TomiyamaDragForce<CloudType>& df); + + //- Construct and return a clone + virtual autoPtr<ParticleForce<CloudType>> clone() const + { + return autoPtr<ParticleForce<CloudType>> + ( + new TomiyamaDragForce<CloudType>(*this) + ); + } + + //- No copy assignment + void operator=(const TomiyamaDragForce<CloudType>&) = delete; + + + //- Destructor + virtual ~TomiyamaDragForce() = default; + + + // Member Functions + + // Evaluation + + //- Calculate the coupled force + virtual forceSuSp calcCoupled + ( + const typename CloudType::parcelType& p, + const typename CloudType::parcelType::trackingData& td, + const scalar dt, + const scalar mass, + const scalar Re, + const scalar muc + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "TomiyamaDragForce.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/LocalInteraction/LocalInteraction.C b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/LocalInteraction/LocalInteraction.C index 6bf4fd64df43c90fe4f6c2c528239a3d15625996..440103171a753c35acd36ce7845b15a4c91adcd4 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/LocalInteraction/LocalInteraction.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/LocalInteraction/LocalInteraction.C @@ -75,9 +75,9 @@ Foam::LocalInteraction<CloudType>::LocalInteraction if (writeFields_) { Info<< " Interaction fields will be written to " - << this->owner().name() << ":massEscape" + << IOobject::scopedName(this->owner().name(), "massEscape") << " and " - << this->owner().name() << ":massStick" << endl; + << IOobject::scopedName(this->owner().name(), "massStick") << endl; (void)massEscape(); (void)massStick(); @@ -164,11 +164,12 @@ Foam::volScalarField& Foam::LocalInteraction<CloudType>::massEscape() ( IOobject ( - this->owner().name() + ":massEscape", + IOobject::scopedName(this->owner().name(), "massEscape"), mesh.time().timeName(), - mesh, + mesh.thisDb(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimMass, Zero) @@ -193,11 +194,12 @@ Foam::volScalarField& Foam::LocalInteraction<CloudType>::massStick() ( IOobject ( - this->owner().name() + ":massStick", + IOobject::scopedName(this->owner().name(), "massStick"), mesh.time().timeName(), - mesh, + mesh.thisDb(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimMass, Zero) diff --git a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/RecycleInteraction/RecycleInteraction.C b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/RecycleInteraction/RecycleInteraction.C index 18d415733f2356047fb3ee44a8468d436e1ef573..78501a00a22a731c7101135fe8e9c966d37166e6 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/RecycleInteraction/RecycleInteraction.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/RecycleInteraction/RecycleInteraction.C @@ -208,7 +208,7 @@ void Foam::RecycleInteraction<CloudType>::postEvolve() // See comments in Cloud::move() about transfer particles handling // Allocate transfer buffers - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Cache of opened UOPstream wrappers PtrList<UOPstream> UOPstreamPtrs(Pstream::nProcs()); diff --git a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C index 08f575bdce82a16cf153099f1f5c3110177a40ff..6b4f324d42b6aea3c7c511aae29fe33d8fa9de26 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -146,50 +146,41 @@ bool Foam::AveragingMethod<Type>::write(const bool writeOnProc) const Field<scalar> pointVolume(mesh_.nPoints(), Zero); // output fields - GeometricField<Type, fvPatchField, volMesh> cellValue + auto tcellValue = GeometricField<Type, fvPatchField, volMesh>::New ( - IOobject - ( - this->name() + ":cellValue", - this->time().timeName(), - mesh_ - ), + IOobject::scopedName(this->name(), "cellValue"), + IOobject::NO_REGISTER, mesh_, dimensioned<Type>(dimless, Zero) ); - GeometricField<TypeGrad, fvPatchField, volMesh> cellGrad + auto& cellValue = tcellValue.ref(); + + auto tcellGrad = GeometricField<TypeGrad, fvPatchField, volMesh>::New ( - IOobject - ( - this->name() + ":cellGrad", - this->time().timeName(), - mesh_ - ), + IOobject::scopedName(this->name(), "cellGrad"), + IOobject::NO_REGISTER, mesh_, dimensioned<TypeGrad>(dimless, Zero) ); - GeometricField<Type, pointPatchField, pointMesh> pointValue + auto& cellGrad = tcellGrad.ref(); + + auto tpointValue = GeometricField<Type, pointPatchField, pointMesh>::New ( - IOobject - ( - this->name() + ":pointValue", - this->time().timeName(), - mesh_ - ), + IOobject::scopedName(this->name(), "pointValue"), + IOobject::NO_REGISTER, pointMesh_, dimensioned<Type>(dimless, Zero) ); - GeometricField<TypeGrad, pointPatchField, pointMesh> pointGrad + auto& pointValue = tpointValue.ref(); + + auto tpointGrad = GeometricField<TypeGrad, pointPatchField, pointMesh>::New ( - IOobject - ( - this->name() + ":pointGrad", - this->time().timeName(), - mesh_ - ), + IOobject::scopedName(this->name(), "pointGrad"), + IOobject::NO_REGISTER, pointMesh_, dimensioned<TypeGrad>(dimless, Zero) ); + auto& pointGrad = tpointGrad.ref(); // Barycentric coordinates of the tet vertices const FixedList<barycentric, 4> diff --git a/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/Relaxation/Relaxation.C b/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/Relaxation/Relaxation.C index c70614da6ed505fc9eacac4913e2e05844cded77..a44015eed7b7db44b2c3081ef4285e3eff325be1 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/Relaxation/Relaxation.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/Relaxation/Relaxation.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -72,30 +73,30 @@ void Foam::DampingModels::Relaxation<CloudType>::cacheFields(const bool store) const fvMesh& mesh = this->owner().mesh(); const word& cloudName = this->owner().name(); - const AveragingMethod<scalar>& volumeAverage = + const auto& volumeAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":volumeAverage" + IOobject::scopedName(cloudName, "volumeAverage") ); - const AveragingMethod<scalar>& radiusAverage = + const auto& radiusAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":radiusAverage" + IOobject::scopedName(cloudName, "radiusAverage") ); - const AveragingMethod<vector>& uAverage = + const auto& uAverage = mesh.lookupObject<AveragingMethod<vector>> ( - cloudName + ":uAverage" + IOobject::scopedName(cloudName, "uAverage") ); - const AveragingMethod<scalar>& uSqrAverage = + const auto& uSqrAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":uSqrAverage" + IOobject::scopedName(cloudName, "uSqrAverage") ); - const AveragingMethod<scalar>& frequencyAverage = + const auto& frequencyAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":frequencyAverage" + IOobject::scopedName(cloudName, "frequencyAverage") ); uAverage_ = &uAverage; @@ -106,7 +107,7 @@ void Foam::DampingModels::Relaxation<CloudType>::cacheFields(const bool store) ( IOobject ( - cloudName + ":oneByTimeScaleAverage", + IOobject::scopedName(cloudName, "oneByTimeScaleAverage"), this->owner().db().time().timeName(), mesh ), diff --git a/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/Stochastic/Stochastic.C b/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/Stochastic/Stochastic.C index 593fa3057afe190529fe321449bf2d9403db87ba..545ab63f487cc3f60af9311f9a38d0b5e2aa6c3a 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/Stochastic/Stochastic.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/Stochastic/Stochastic.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -105,35 +105,35 @@ void Foam::IsotropyModels::Stochastic<CloudType>::calculate() const scalar oneBySqrtThree = sqrt(1.0/3.0); - const AveragingMethod<scalar>& volumeAverage = + const auto& volumeAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - this->owner().name() + ":volumeAverage" + IOobject::scopedName(this->owner().name(), "volumeAverage") ); - const AveragingMethod<scalar>& radiusAverage = + const auto& radiusAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - this->owner().name() + ":radiusAverage" + IOobject::scopedName(this->owner().name(), "radiusAverage") ); - const AveragingMethod<vector>& uAverage = + const auto& uAverage = mesh.lookupObject<AveragingMethod<vector>> ( - this->owner().name() + ":uAverage" + IOobject::scopedName(this->owner().name(), "uAverage") ); - const AveragingMethod<scalar>& uSqrAverage = + const auto& uSqrAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - this->owner().name() + ":uSqrAverage" + IOobject::scopedName(this->owner().name(), "uSqrAverage") ); - const AveragingMethod<scalar>& frequencyAverage = + const auto& frequencyAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - this->owner().name() + ":frequencyAverage" + IOobject::scopedName(this->owner().name(), "frequencyAverage") ); - const AveragingMethod<scalar>& massAverage = + const auto& massAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - this->owner().name() + ":massAverage" + IOobject::scopedName(this->owner().name(), "massAverage") ); // calculate time scales and pdf exponent @@ -143,7 +143,7 @@ void Foam::IsotropyModels::Stochastic<CloudType>::calculate() ( IOobject ( - this->owner().name() + ":exponentAverage", + IOobject::scopedName(this->owner().name(), "exponentAverage"), this->owner().db().time().timeName(), mesh ), @@ -191,7 +191,7 @@ void Foam::IsotropyModels::Stochastic<CloudType>::calculate() ( IOobject ( - this->owner().name() + ":uTildeAverage", + IOobject::scopedName(this->owner().name(), "uTildeAverage"), this->owner().db().time().timeName(), mesh ), @@ -213,7 +213,7 @@ void Foam::IsotropyModels::Stochastic<CloudType>::calculate() ( IOobject ( - this->owner().name() + ":uTildeSqrAverage", + IOobject::scopedName(this->owner().name(), "uTildeSqrAverage"), this->owner().db().time().timeName(), mesh ), diff --git a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Explicit/Explicit.C b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Explicit/Explicit.C index 49ea02277de74ff67e7649bce4d752de5f8755ed..7170622fa813767a536ca33acfcf7e2c39a1c859 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Explicit/Explicit.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Explicit/Explicit.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,25 +83,25 @@ void Foam::PackingModels::Explicit<CloudType>::cacheFields(const bool store) const fvMesh& mesh = this->owner().mesh(); const word& cloudName = this->owner().name(); - const AveragingMethod<scalar>& volumeAverage = + const auto& volumeAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":volumeAverage" + IOobject::scopedName(cloudName, "volumeAverage") ); - const AveragingMethod<scalar>& rhoAverage = + const auto& rhoAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":rhoAverage" + IOobject::scopedName(cloudName, "rhoAverage") ); - const AveragingMethod<vector>& uAverage = + const auto& uAverage = mesh.lookupObject<AveragingMethod<vector>> ( - cloudName + ":uAverage" + IOobject::scopedName(cloudName, "uAverage") ); - const AveragingMethod<scalar>& uSqrAverage = + const auto& uSqrAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":uSqrAverage" + IOobject::scopedName(cloudName, "uSqrAverage") ); volumeAverage_ = &volumeAverage; @@ -113,7 +113,7 @@ void Foam::PackingModels::Explicit<CloudType>::cacheFields(const bool store) ( IOobject ( - cloudName + ":stressAverage", + IOobject::scopedName(cloudName, "stressAverage"), this->owner().db().time().timeName(), mesh ), diff --git a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Implicit/Implicit.C b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Implicit/Implicit.C index c811306bc4cab56107b6282ff97a2d96b2b2ef0d..822fb7fc069bdb4ef87a443a47ef449a88033ac7 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Implicit/Implicit.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/Implicit/Implicit.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,7 +49,7 @@ Foam::PackingModels::Implicit<CloudType>::Implicit ( IOobject ( - this->owner().name() + ":alpha", + IOobject::scopedName(this->owner().name(), "alpha"), this->owner().db().time().timeName(), this->owner().mesh(), IOobject::NO_READ, @@ -112,20 +113,20 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) const dimensionedVector& g = this->owner().g(); const volScalarField& rhoc = this->owner().rho(); - const AveragingMethod<scalar>& rhoAverage = + const auto& rhoAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":rhoAverage" + IOobject::scopedName(cloudName, "rhoAverage") ); - const AveragingMethod<vector>& uAverage = + const auto& uAverage = mesh.lookupObject<AveragingMethod<vector>> ( - cloudName + ":uAverage" + IOobject::scopedName(cloudName, "uAverage") ); - const AveragingMethod<scalar>& uSqrAverage = + const auto& uSqrAverage = mesh.lookupObject<AveragingMethod<scalar>> ( - cloudName + ":uSqrAverage" + IOobject::scopedName(cloudName, "uSqrAverage") ); mesh.setFluxRequired(alpha_.name()); @@ -138,20 +139,15 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) alpha_.correctBoundaryConditions(); // average density - volScalarField rho + auto trho = volScalarField::New ( - IOobject - ( - cloudName + ":rho", - this->owner().db().time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(cloudName, "rho"), mesh, dimensionedScalar(dimDensity, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& rho = trho.ref(); + rho.primitiveFieldRef() = max(rhoAverage.primitiveField(), rhoMin_); rho.correctBoundaryConditions(); @@ -159,20 +155,14 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) // ~~~~~~~~~~~~ // stress derivative wrt volume fraction - volScalarField tauPrime + auto ttauPrime = volScalarField::New ( - IOobject - ( - cloudName + ":tauPrime", - this->owner().db().time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(cloudName, "tauPrime"), mesh, dimensionedScalar(dimPressure, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& tauPrime = ttauPrime.ref(); tauPrime.primitiveFieldRef() = this->particleStressModel_->dTaudTheta @@ -191,27 +181,24 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) tmp<surfaceScalarField> phiGByA; if (applyGravity_) - ( - phiGByA = tmp<surfaceScalarField> + { + phiGByA = surfaceScalarField::New ( - new surfaceScalarField - ( - "phiGByA", - deltaT*(g & mesh.Sf())*fvc::interpolate(1.0 - rhoc/rho) - ) - ) - ); + "phiGByA", + IOobject::NO_REGISTER, + deltaT*(g & mesh.Sf())*fvc::interpolate(1.0 - rhoc/rho) + ); + } // Implicit solution for the volume fraction // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - surfaceScalarField - tauPrimeByRhoAf - ( - "tauPrimeByRhoAf", - fvc::interpolate(deltaT*tauPrime/rho) - ); + surfaceScalarField tauPrimeByRhoAf + ( + "tauPrimeByRhoAf", + fvc::interpolate(deltaT*tauPrime/rho) + ); fvScalarMatrix alphaEqn ( @@ -232,38 +219,32 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) // ~~~~~~~~~~~~~~~~~ // correction volumetric flux - phiCorrect_ = tmp<surfaceScalarField> + phiCorrect_ = surfaceScalarField::New ( - new surfaceScalarField - ( - cloudName + ":phiCorrect", - alphaEqn.flux()/fvc::interpolate(alpha_) - ) + IOobject::scopedName(cloudName, "phiCorrect"), + IOobject::NO_REGISTER, + alphaEqn.flux()/fvc::interpolate(alpha_) ); // limit the correction flux if (applyLimiting_) { - volVectorField U + auto tU = volVectorField::New ( - IOobject - ( - cloudName + ":U", - this->owner().db().time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(cloudName, "U"), + IOobject::NO_REGISTER, mesh, dimensionedVector(dimVelocity, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& U = tU.ref(); + U.primitiveFieldRef() = uAverage.primitiveField(); U.correctBoundaryConditions(); surfaceScalarField phi ( - cloudName + ":phi", + IOobject::scopedName(cloudName, "phi"), linearInterpolate(U) & mesh.Sf() ); @@ -303,14 +284,11 @@ void Foam::PackingModels::Implicit<CloudType>::cacheFields(const bool store) } // correction velocity - uCorrect_ = tmp<volVectorField> + uCorrect_ = volVectorField::New ( - new volVectorField - ( - cloudName + ":uCorrect", - fvc::reconstruct(phiCorrect_()) - ) - + IOobject::scopedName(cloudName, "uCorrect"), + IOobject::NO_REGISTER, + fvc::reconstruct(phiCorrect_()) ); uCorrect_->correctBoundaryConditions(); diff --git a/src/lagrangian/intermediate/submodels/MPPIC/ParticleStressModels/ParticleStressModel/ParticleStressModel.C b/src/lagrangian/intermediate/submodels/MPPIC/ParticleStressModels/ParticleStressModel/ParticleStressModel.C index 77db614098de6fcdd1cab71b700f6cf49392ff1c..8170bc9c827a4cd1deb08530025498ac23fa21a3 100644 --- a/src/lagrangian/intermediate/submodels/MPPIC/ParticleStressModels/ParticleStressModel/ParticleStressModel.C +++ b/src/lagrangian/intermediate/submodels/MPPIC/ParticleStressModels/ParticleStressModel/ParticleStressModel.C @@ -107,17 +107,15 @@ Foam::ParticleStressModel::tau const FieldField<Field, scalar>& uRms ) const { - tmp<FieldField<Field, scalar>> value - ( - new FieldField<Field, scalar>(alpha.size()) - ); + auto tvalue = tmp<FieldField<Field, scalar>>::New(alpha.size()); + auto& value = tvalue.ref(); forAll(alpha, i) { - value->set(i, tau(alpha[i], rho[i], uRms[i])); + value.set(i, tau(alpha[i], rho[i], uRms[i])); } - return value; + return tvalue; } diff --git a/src/lagrangian/intermediate/submodels/addOns/radiation/absorptionEmission/cloudAbsorptionEmission/cloudAbsorptionEmission.C b/src/lagrangian/intermediate/submodels/addOns/radiation/absorptionEmission/cloudAbsorptionEmission/cloudAbsorptionEmission.C index 4dc91ac10e335a726239dccd59bcb5167ae438b2..5b25c69154917c83ab34d5884d8ed7c3c3589ece 100644 --- a/src/lagrangian/intermediate/submodels/addOns/radiation/absorptionEmission/cloudAbsorptionEmission/cloudAbsorptionEmission.C +++ b/src/lagrangian/intermediate/submodels/addOns/radiation/absorptionEmission/cloudAbsorptionEmission/cloudAbsorptionEmission.C @@ -72,29 +72,19 @@ Foam::radiation::cloudAbsorptionEmission::~cloudAbsorptionEmission() Foam::tmp<Foam::volScalarField> Foam::radiation::cloudAbsorptionEmission::aDisp(const label) const { - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "a", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); - forAll(cloudNames_, i) + for (const word& cldName : cloudNames_) { const thermoCloud& tc ( - mesh_.objectRegistry::lookupObject<thermoCloud>(cloudNames_[i]) + mesh_.objectRegistry::lookupObject<thermoCloud>(cldName) ); ta.ref() += tc.ap(); @@ -107,17 +97,10 @@ Foam::radiation::cloudAbsorptionEmission::aDisp(const label) const Foam::tmp<Foam::volScalarField> Foam::radiation::cloudAbsorptionEmission::eDisp(const label bandI) const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "e", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "e", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless/dimLength, Zero) ); @@ -127,29 +110,19 @@ Foam::radiation::cloudAbsorptionEmission::eDisp(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::cloudAbsorptionEmission::EDisp(const label bandI) const { - tmp<volScalarField> tE + auto tE = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "E", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); - forAll(cloudNames_, i) + for (const word& cldName : cloudNames_) { const thermoCloud& tc ( - mesh_.objectRegistry::lookupObject<thermoCloud>(cloudNames_[i]) + mesh_.objectRegistry::lookupObject<thermoCloud>(cldName) ); tE.ref() += tc.Ep(); diff --git a/src/lagrangian/intermediate/submodels/addOns/radiation/scatter/cloudScatter/cloudScatter.C b/src/lagrangian/intermediate/submodels/addOns/radiation/scatter/cloudScatter/cloudScatter.C index 1a530c91fd033a60250fa5de6c80707e0d78ac0d..8696d74e9507b6b2e0937258dd036deb390cd763 100644 --- a/src/lagrangian/intermediate/submodels/addOns/radiation/scatter/cloudScatter/cloudScatter.C +++ b/src/lagrangian/intermediate/submodels/addOns/radiation/scatter/cloudScatter/cloudScatter.C @@ -72,30 +72,18 @@ Foam::radiation::cloudScatter::~cloudScatter() Foam::tmp<Foam::volScalarField> Foam::radiation::cloudScatter::sigmaEff() const { - tmp<volScalarField> tsigma + auto tsigma = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "sigma", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "sigma", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); - forAll(cloudNames_, i) + for (const word& cloudName : cloudNames_) { - const thermoCloud& tc - ( - mesh_.objectRegistry::lookupObject<thermoCloud>(cloudNames_[i]) - ); + const auto& tc = + mesh_.objectRegistry::lookupObject<thermoCloud>(cloudName); tsigma.ref() += tc.sigmap(); } diff --git a/src/lagrangian/molecularDynamics/molecule/molecule/molecule.H b/src/lagrangian/molecularDynamics/molecule/molecule/molecule.H index e11827c5c0340365d660434baa2c2956bb24d4fc..26dd41c15b4f7168106113aa14385f3b0c832b43 100644 --- a/src/lagrangian/molecularDynamics/molecule/molecule/molecule.H +++ b/src/lagrangian/molecularDynamics/molecule/molecule/molecule.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,7 +42,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" #include "diagTensor.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -283,14 +282,13 @@ public: bool newFormat = true ); - //- Construct and return a clone - autoPtr<particle> clone() const + //- Return a clone + virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new molecule(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C index e52aa5414598cb99ed0c9b37b57b0d18f3c10185..5818f23085aaea7927ed2b5c9ee1a478c9f46ef7 100644 --- a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C +++ b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C @@ -114,40 +114,40 @@ void Foam::molecule::readFields(Cloud<molecule>& mC) particle::readFields(mC); - IOField<tensor> Q(mC.fieldIOobject("Q", IOobject::MUST_READ), readOnProc); + IOField<tensor> Q(mC.newIOobject("Q", IOobject::MUST_READ), readOnProc); mC.checkFieldIOobject(mC, Q); - IOField<vector> v(mC.fieldIOobject("v", IOobject::MUST_READ), readOnProc); + IOField<vector> v(mC.newIOobject("v", IOobject::MUST_READ), readOnProc); mC.checkFieldIOobject(mC, v); - IOField<vector> a(mC.fieldIOobject("a", IOobject::MUST_READ), readOnProc); + IOField<vector> a(mC.newIOobject("a", IOobject::MUST_READ), readOnProc); mC.checkFieldIOobject(mC, a); - IOField<vector> pi(mC.fieldIOobject("pi", IOobject::MUST_READ), readOnProc); + IOField<vector> pi(mC.newIOobject("pi", IOobject::MUST_READ), readOnProc); mC.checkFieldIOobject(mC, pi); IOField<vector> tau ( - mC.fieldIOobject("tau", IOobject::MUST_READ), + mC.newIOobject("tau", IOobject::MUST_READ), readOnProc ); mC.checkFieldIOobject(mC, tau); IOField<vector> specialPosition ( - mC.fieldIOobject("specialPosition", IOobject::MUST_READ), + mC.newIOobject("specialPosition", IOobject::MUST_READ), readOnProc ); mC.checkFieldIOobject(mC, specialPosition); IOField<label> special ( - mC.fieldIOobject("special", IOobject::MUST_READ), + mC.newIOobject("special", IOobject::MUST_READ), readOnProc ); mC.checkFieldIOobject(mC, special); - IOField<label> id(mC.fieldIOobject("id", IOobject::MUST_READ), readOnProc); + IOField<label> id(mC.newIOobject("id", IOobject::MUST_READ), readOnProc); mC.checkFieldIOobject(mC, id); label i = 0; @@ -174,48 +174,48 @@ void Foam::molecule::writeFields(const Cloud<molecule>& mC) const label np = mC.size(); const bool writeOnProc = mC.size(); - IOField<tensor> Q(mC.fieldIOobject("Q", IOobject::NO_READ), np); - IOField<vector> v(mC.fieldIOobject("v", IOobject::NO_READ), np); - IOField<vector> a(mC.fieldIOobject("a", IOobject::NO_READ), np); - IOField<vector> pi(mC.fieldIOobject("pi", IOobject::NO_READ), np); - IOField<vector> tau(mC.fieldIOobject("tau", IOobject::NO_READ), np); + IOField<tensor> Q(mC.newIOobject("Q", IOobject::NO_READ), np); + IOField<vector> v(mC.newIOobject("v", IOobject::NO_READ), np); + IOField<vector> a(mC.newIOobject("a", IOobject::NO_READ), np); + IOField<vector> pi(mC.newIOobject("pi", IOobject::NO_READ), np); + IOField<vector> tau(mC.newIOobject("tau", IOobject::NO_READ), np); IOField<vector> specialPosition ( - mC.fieldIOobject("specialPosition", IOobject::NO_READ), + mC.newIOobject("specialPosition", IOobject::NO_READ), np ); - IOField<label> special(mC.fieldIOobject("special", IOobject::NO_READ), np); - IOField<label> id(mC.fieldIOobject("id", IOobject::NO_READ), np); + IOField<label> special(mC.newIOobject("special", IOobject::NO_READ), np); + IOField<label> id(mC.newIOobject("id", IOobject::NO_READ), np); // Post processing fields IOField<vector> piGlobal ( - mC.fieldIOobject("piGlobal", IOobject::NO_READ), + mC.newIOobject("piGlobal", IOobject::NO_READ), np ); IOField<vector> tauGlobal ( - mC.fieldIOobject("tauGlobal", IOobject::NO_READ), + mC.newIOobject("tauGlobal", IOobject::NO_READ), np ); IOField<vector> orientation1 ( - mC.fieldIOobject("orientation1", IOobject::NO_READ), + mC.newIOobject("orientation1", IOobject::NO_READ), np ); IOField<vector> orientation2 ( - mC.fieldIOobject("orientation2", IOobject::NO_READ), + mC.newIOobject("orientation2", IOobject::NO_READ), np ); IOField<vector> orientation3 ( - mC.fieldIOobject("orientation3", IOobject::NO_READ), + mC.newIOobject("orientation3", IOobject::NO_READ), np ); diff --git a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C index 9052b14a65f63e247a1400b46b3b36072bc39b5b..3c8670824a09b26ddcb34f371d4162e00cedb960 100644 --- a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C +++ b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C @@ -131,7 +131,7 @@ void Foam::moleculeCloud::buildCellOccupancy() void Foam::moleculeCloud::calculatePairForce() { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Start sending referred data label startOfRequests = Pstream::nRequests(); @@ -356,7 +356,7 @@ void Foam::moleculeCloud::removeHighEnergyOverlaps() buildCellOccupancy(); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Start sending referred data label startOfRequests = Pstream::nRequests(); diff --git a/src/lagrangian/solidParticle/solidParticle.H b/src/lagrangian/solidParticle/solidParticle.H index b82f7bc7e02fc37af16f5606c4c2e88718e26a9f..4f9375b91f36ef97b3e570b18784da6b96b7fc8a 100644 --- a/src/lagrangian/solidParticle/solidParticle.H +++ b/src/lagrangian/solidParticle/solidParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,7 +43,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" #include "interpolationCellPoint.H" #include "contiguous.H" @@ -185,10 +184,10 @@ public: bool newFormat = true ); - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new solidParticle(*this)); + return particle::Clone(*this); } //- Factory class to read-construct particles (for parallel transfer) diff --git a/src/lagrangian/solidParticle/solidParticleIO.C b/src/lagrangian/solidParticle/solidParticleIO.C index eab74deb740196803e0a2df8f7c942b1b03e2333..379b26d566a54b35ac9050efe0cd3cb438aaa877 100644 --- a/src/lagrangian/solidParticle/solidParticleIO.C +++ b/src/lagrangian/solidParticle/solidParticleIO.C @@ -82,10 +82,10 @@ void Foam::solidParticle::readFields(Cloud<solidParticle>& c) particle::readFields(c); - IOField<scalar> d(c.fieldIOobject("d", IOobject::MUST_READ), readOnProc); + IOField<scalar> d(c.newIOobject("d", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, d); - IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), readOnProc); + IOField<vector> U(c.newIOobject("U", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, U); label i = 0; @@ -105,8 +105,8 @@ void Foam::solidParticle::writeFields(const Cloud<solidParticle>& c) const label np = c.size(); const bool writeOnProc = c.size(); - IOField<scalar> d(c.fieldIOobject("d", IOobject::NO_READ), np); - IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np); + IOField<scalar> d(c.newIOobject("d", IOobject::NO_READ), np); + IOField<vector> U(c.newIOobject("U", IOobject::NO_READ), np); label i = 0; for (const solidParticle& p : c) diff --git a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcel.H b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcel.H index f77c4b2955ae0d9eb18af63ef4645165eba16fd5..eb47be3b227be3ba6f350abc8b71737bcb059065 100644 --- a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcel.H +++ b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcel.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -275,23 +275,19 @@ public: //- Construct as a copy SprayParcel(const SprayParcel& p); - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new SprayParcel<ParcelType>(*this)); + return particle::Clone(*this); } - //- Construct and return a (basic particle) clone + //- Return a (basic particle) clone virtual autoPtr<particle> clone(const polyMesh& mesh) const { - return autoPtr<particle> - ( - new SprayParcel<ParcelType>(*this, mesh) - ); + return particle::Clone(*this, mesh); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C index feb807b5ecea82cc11752db0003fcf6a11e9e663..59414e7d307726fa573125c136343c1f9cd11d5c 100644 --- a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C +++ b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C @@ -139,85 +139,85 @@ void Foam::SprayParcel<ParcelType>::readFields ParcelType::readFields(c, compModel); - IOField<scalar> d0(c.fieldIOobject("d0", IOobject::MUST_READ), readOnProc); + IOField<scalar> d0(c.newIOobject("d0", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, d0); IOField<vector> position0 ( - c.fieldIOobject("position0", IOobject::MUST_READ), + c.newIOobject("position0", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, position0); IOField<scalar> sigma ( - c.fieldIOobject("sigma", IOobject::MUST_READ), + c.newIOobject("sigma", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, sigma); - IOField<scalar> mu(c.fieldIOobject("mu", IOobject::MUST_READ), readOnProc); + IOField<scalar> mu(c.newIOobject("mu", IOobject::MUST_READ), readOnProc); c.checkFieldIOobject(c, mu); IOField<scalar> liquidCore ( - c.fieldIOobject("liquidCore", IOobject::MUST_READ), + c.newIOobject("liquidCore", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, liquidCore); IOField<scalar> KHindex ( - c.fieldIOobject("KHindex", IOobject::MUST_READ), + c.newIOobject("KHindex", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, KHindex); IOField<scalar> y ( - c.fieldIOobject("y", IOobject::MUST_READ), + c.newIOobject("y", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, y); IOField<scalar> yDot ( - c.fieldIOobject("yDot", IOobject::MUST_READ), + c.newIOobject("yDot", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, yDot); IOField<scalar> tc ( - c.fieldIOobject("tc", IOobject::MUST_READ), + c.newIOobject("tc", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, tc); IOField<scalar> ms ( - c.fieldIOobject("ms", IOobject::MUST_READ), + c.newIOobject("ms", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, ms); IOField<scalar> injector ( - c.fieldIOobject("injector", IOobject::MUST_READ), + c.newIOobject("injector", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, injector); IOField<scalar> tMom ( - c.fieldIOobject("tMom", IOobject::MUST_READ), + c.newIOobject("tMom", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, tMom); IOField<scalar> user ( - c.fieldIOobject("user", IOobject::MUST_READ), + c.newIOobject("user", IOobject::MUST_READ), readOnProc ); c.checkFieldIOobject(c, user); @@ -265,31 +265,31 @@ void Foam::SprayParcel<ParcelType>::writeFields const label np = c.size(); const bool writeOnProc = c.size(); - IOField<scalar> d0(c.fieldIOobject("d0", IOobject::NO_READ), np); + IOField<scalar> d0(c.newIOobject("d0", IOobject::NO_READ), np); IOField<vector> position0 ( - c.fieldIOobject("position0", IOobject::NO_READ), + c.newIOobject("position0", IOobject::NO_READ), np ); - IOField<scalar> sigma(c.fieldIOobject("sigma", IOobject::NO_READ), np); - IOField<scalar> mu(c.fieldIOobject("mu", IOobject::NO_READ), np); + IOField<scalar> sigma(c.newIOobject("sigma", IOobject::NO_READ), np); + IOField<scalar> mu(c.newIOobject("mu", IOobject::NO_READ), np); IOField<scalar> liquidCore ( - c.fieldIOobject("liquidCore", IOobject::NO_READ), + c.newIOobject("liquidCore", IOobject::NO_READ), np ); - IOField<scalar> KHindex(c.fieldIOobject("KHindex", IOobject::NO_READ), np); - IOField<scalar> y(c.fieldIOobject("y", IOobject::NO_READ), np); - IOField<scalar> yDot(c.fieldIOobject("yDot", IOobject::NO_READ), np); - IOField<scalar> tc(c.fieldIOobject("tc", IOobject::NO_READ), np); - IOField<scalar> ms(c.fieldIOobject("ms", IOobject::NO_READ), np); + IOField<scalar> KHindex(c.newIOobject("KHindex", IOobject::NO_READ), np); + IOField<scalar> y(c.newIOobject("y", IOobject::NO_READ), np); + IOField<scalar> yDot(c.newIOobject("yDot", IOobject::NO_READ), np); + IOField<scalar> tc(c.newIOobject("tc", IOobject::NO_READ), np); + IOField<scalar> ms(c.newIOobject("ms", IOobject::NO_READ), np); IOField<scalar> injector ( - c.fieldIOobject("injector", IOobject::NO_READ), + c.newIOobject("injector", IOobject::NO_READ), np ); - IOField<scalar> tMom(c.fieldIOobject("tMom", IOobject::NO_READ), np); - IOField<scalar> user(c.fieldIOobject("user", IOobject::NO_READ), np); + IOField<scalar> tMom(c.newIOobject("tMom", IOobject::NO_READ), np); + IOField<scalar> user(c.newIOobject("user", IOobject::NO_READ), np); label i = 0; for (const SprayParcel<ParcelType>& p : c) diff --git a/src/lumpedPointMotion/lumpedPointMovementDict b/src/lumpedPointMotion/lumpedPointMovementDict index 72f0d571090d69932304c8418eb7d00df68d47f8..3f176c4526f3efe1e43977ff199504aaf9edc3c8 100644 --- a/src/lumpedPointMotion/lumpedPointMovementDict +++ b/src/lumpedPointMotion/lumpedPointMovementDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/lumpedPointMotion/movement/lumpedPointMovement.C b/src/lumpedPointMotion/movement/lumpedPointMovement.C index c749c856a1a5f90b4dc8b8a7d2afcdf1929fe917..524e2be769fd92fd4f754f9f23c95aa6ad2f1f15 100644 --- a/src/lumpedPointMotion/movement/lumpedPointMovement.C +++ b/src/lumpedPointMotion/movement/lumpedPointMovement.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1291,7 +1291,7 @@ bool Foam::lumpedPointMovement::writeData const Tuple2<scalar, scalar>* timesWritten ) const { - if (!Pstream::master()) + if (!UPstream::master()) { return false; } @@ -1306,13 +1306,13 @@ bool Foam::lumpedPointMovement::writeData writeData(os, forces, moments, outputFormat_, timesWritten); } - // Log output + // Log output - simple append to existing { OFstream os ( coupler().resolveFile(logName_), IOstreamOption(), - IOstreamOption::APPEND + IOstreamOption::APPEND_ATE ); writeData(os, forces, moments, outputFormatType::PLAIN, timesWritten); diff --git a/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.C b/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.C index 6a6814fc6f2894a165f2041d9fe7f7035dd9275f..b10fe98d72dfa43196dd1498b0b77a67358fee73 100644 --- a/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.C +++ b/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -191,7 +191,7 @@ Foam::lumpedPointDisplacementPointPatchVectorField::movement() const // Create and register with this patch as the owner ptr = lumpedPointIOMovement::New(obr, this->patch().index()).ptr(); - objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; diff --git a/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.H b/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.H index 0afd14f059151e9ade76ead2b62ded7503be1ef6..0ce5845796d5178d56f9b4500d2d00164bcdc395 100644 --- a/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.H +++ b/src/lumpedPointMotion/pointPatchFields/lumpedPointDisplacementPointPatchVectorField.H @@ -138,18 +138,6 @@ public: const pointPatchFieldMapper& mapper ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new lumpedPointDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference lumpedPointDisplacementPointPatchVectorField ( @@ -157,20 +145,19 @@ public: const DimensionedField<vector, pointMesh>& iF ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new lumpedPointDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/mesh/blockMesh/PDRblockMesh/PDRblock.C b/src/mesh/blockMesh/PDRblockMesh/PDRblock.C index 5e27e5007516e90ccf368f7683dd98ad00df29f6..10db4aeb8af134402cee740cac1584165969b0c5 100644 --- a/src/mesh/blockMesh/PDRblockMesh/PDRblock.C +++ b/src/mesh/blockMesh/PDRblockMesh/PDRblock.C @@ -106,12 +106,6 @@ bool Foam::PDRblock::checkMonotonic } -const Foam::PDRblock& Foam::PDRblock::null() -{ - return NullObjectRef<PDRblock>(); -} - - // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // void Foam::PDRblock::addDefaultPatches() diff --git a/src/mesh/blockMesh/PDRblockMesh/PDRblock.H b/src/mesh/blockMesh/PDRblockMesh/PDRblock.H index 8df077c4f441949a71b2e06b450802551507de64..d0302b075b5515156a05cd3ebfe27a6f346486dd 100644 --- a/src/mesh/blockMesh/PDRblockMesh/PDRblock.H +++ b/src/mesh/blockMesh/PDRblockMesh/PDRblock.H @@ -429,8 +429,11 @@ public: // Static Member Functions - //- Return a PDRblock reference to a nullObject - static const PDRblock& null(); + //- Return a null PDRblock (reference to a nullObject). + static const PDRblock& null() noexcept + { + return NullObjectRef<PDRblock>(); + } // Constructors diff --git a/src/mesh/blockMesh/PDRblockMesh/PDRblockBlockMesh.C b/src/mesh/blockMesh/PDRblockMesh/PDRblockBlockMesh.C index 4a63d7a9a5abf355b93e2e814180407b54f5a2d2..783d6cb8e84f2d9517135d99ef3e7737e5117f7d 100644 --- a/src/mesh/blockMesh/PDRblockMesh/PDRblockBlockMesh.C +++ b/src/mesh/blockMesh/PDRblockMesh/PDRblockBlockMesh.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -814,8 +814,8 @@ void Foam::PDRblock::writeBlockMeshDict(const IOobject& io) const << "Generate blockMeshDict: " << iodict.db().time().relativePath(os.name()) << endl; - // Set precision for points to 10 - os.precision(max(10u, IOstream::defaultPrecision())); + // More precision (for points data) + os.precision(Foam::max(10u, IOstream::defaultPrecision())); iodict.writeHeader(os); diff --git a/src/mesh/blockMesh/blockMesh/blockMesh.C b/src/mesh/blockMesh/blockMesh/blockMesh.C index da0f958eb516be5cc81ab8e85d3f56146aa9befc..23dd0382d4fb903e067a0475d9d5f6af443a45e6 100644 --- a/src/mesh/blockMesh/blockMesh/blockMesh.C +++ b/src/mesh/blockMesh/blockMesh/blockMesh.C @@ -352,12 +352,16 @@ Foam::PtrList<Foam::dictionary> Foam::blockMesh::patchDicts() const PtrList<dictionary> patchDicts(topoPatches.size()); + OCharStream os; + ISpanStream is; + forAll(topoPatches, patchi) { - OStringStream os; + os.rewind(); topoPatches[patchi].write(os); - IStringStream is(os.str()); - patchDicts.set(patchi, new dictionary(is)); + + is.reset(os.view()); + patchDicts.emplace_set(patchi, is); } return patchDicts; } diff --git a/src/mesh/blockMesh/blockMeshTools/blockMeshTools.C b/src/mesh/blockMesh/blockMeshTools/blockMeshTools.C index 350635bc7cfe2b0d72266dd5931b99c1973ec8c6..e01d1050b7525e806f2981e6a0e8eb3b88e839e5 100644 --- a/src/mesh/blockMesh/blockMeshTools/blockMeshTools.C +++ b/src/mesh/blockMesh/blockMeshTools/blockMeshTools.C @@ -35,17 +35,11 @@ namespace Foam static inline const Foam::entry* resolveLabel(const entry& e, const label val) { - if (e.isStream()) - { - const tokenList& toks = e.stream(); - - if (!toks.empty() && toks[0].isLabel(val)) - { - return &e; - } - } - - return nullptr; + return + ( + (e.isStream() && e.stream().front().isLabel(val)) + ? &e : nullptr + ); } } // End namespace Foam diff --git a/src/mesh/extrudeModel/radial/radial.C b/src/mesh/extrudeModel/radial/radial.C index 812cf1f613b6693a484dbed82f760e56407e404b..6e73f32390db8067d4b56fac3dfa984efcc96233 100644 --- a/src/mesh/extrudeModel/radial/radial.C +++ b/src/mesh/extrudeModel/radial/radial.C @@ -66,8 +66,6 @@ point radial::operator() scalar r = R_->value(layer); -Pout<< "** for layer " << layer << " r:" << r << endl; - return r*rsHat; } diff --git a/src/mesh/snappyHexMesh/externalDisplacementMeshMover/zeroFixedValue/zeroFixedValuePointPatchField.H b/src/mesh/snappyHexMesh/externalDisplacementMeshMover/zeroFixedValue/zeroFixedValuePointPatchField.H index 41862edb7b7f3a7068d14166d5c15d008e2d7773..15379495a261eb5e6909a098fa7930b5173b14e0 100644 --- a/src/mesh/snappyHexMesh/externalDisplacementMeshMover/zeroFixedValue/zeroFixedValuePointPatchField.H +++ b/src/mesh/snappyHexMesh/externalDisplacementMeshMover/zeroFixedValue/zeroFixedValuePointPatchField.H @@ -99,18 +99,6 @@ public: const zeroFixedValuePointPatchField<Type>& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new zeroFixedValuePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference zeroFixedValuePointPatchField ( @@ -118,6 +106,11 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone @@ -125,14 +118,7 @@ public: const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new zeroFixedValuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } }; diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.C index 88b9ad42da37eeae2d5d19092eee92f21e5116e8..130845c1961c6e3fd6ff2c11d66703ea857d2621 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1364,11 +1364,7 @@ Foam::label Foam::meshRefinement::splitFacesUndo } { - Map<label> splitFaceToIndex(2*splitFaces.size()); - forAll(splitFaces, i) - { - splitFaceToIndex.insert(splitFaces[i], i); - } + Map<label> splitFaceToIndex(invertToMap(splitFaces)); forAll(map.faceMap(), facei) { @@ -1714,7 +1710,7 @@ Foam::meshRefinement::meshRefinement ( "surfaceIndex", mesh_.facesInstance(), - fvMesh::meshSubDir, + polyMesh::meshSubDir, mesh_, IOobject::NO_READ, IOobject::NO_WRITE, @@ -3437,11 +3433,12 @@ Foam::bitSet Foam::meshRefinement::getMasterPoints const labelList& meshPoints ) { + const label myProci = UPstream::myProcNo(); const globalIndex globalPoints(meshPoints.size()); labelList myPoints ( - identity(globalPoints.localSize(), globalPoints.localStart()) + Foam::identity(globalPoints.range(myProci)) ); syncTools::syncPointList @@ -3457,7 +3454,7 @@ Foam::bitSet Foam::meshRefinement::getMasterPoints bitSet isPatchMasterPoint(meshPoints.size()); forAll(meshPoints, pointi) { - if (myPoints[pointi] == globalPoints.toGlobal(pointi)) + if (myPoints[pointi] == globalPoints.toGlobal(myProci, pointi)) { isPatchMasterPoint.set(pointi); } @@ -3473,11 +3470,12 @@ Foam::bitSet Foam::meshRefinement::getMasterEdges const labelList& meshEdges ) { + const label myProci = UPstream::myProcNo(); const globalIndex globalEdges(meshEdges.size()); labelList myEdges ( - identity(globalEdges.localSize(), globalEdges.localStart()) + Foam::identity(globalEdges.range(myProci)) ); syncTools::syncEdgeList @@ -3493,7 +3491,7 @@ Foam::bitSet Foam::meshRefinement::getMasterEdges bitSet isMasterEdge(meshEdges.size()); forAll(meshEdges, edgei) { - if (myEdges[edgei] == globalEdges.toGlobal(edgei)) + if (myEdges[edgei] == globalEdges.toGlobal(myProci, edgei)) { isMasterEdge.set(edgei); } @@ -3805,26 +3803,27 @@ const Foam::dictionary& Foam::meshRefinement::subDict enum keyType::option matchOpt ) { - const auto finder(dict.csearch(keyword, matchOpt)); + const dictionary* dictptr = dict.findDict(keyword, matchOpt); - if (!finder.good()) + if (!dictptr) { - auto& err = FatalIOErrorInFunction(dict); - - err << "Entry '" << keyword << "' not found in dictionary " + FatalIOErrorInFunction(dict) + << "Entry '" << keyword + << "' not found (or not a dictionary) in dictionary " << dict.relativeName() << nl; if (noExit) { + // Dummy return return dictionary::null; } else { - err << exit(FatalIOError); + FatalIOError << exit(FatalIOError); } } - return finder.dict(); + return *dictptr; } @@ -3840,19 +3839,18 @@ Foam::ITstream& Foam::meshRefinement::lookup if (!eptr) { - auto& err = FatalIOErrorInFunction(dict); - - err << "Entry '" << keyword << "' not found in dictionary " + FatalIOErrorInFunction(dict) + << "Entry '" << keyword << "' not found in dictionary " << dict.relativeName() << nl; if (noExit) { - // Fake entry - return dict.first()->stream(); + // Dummy return + return ITstream::empty_stream(); } else { - err << exit(FatalIOError); + FatalIOError << exit(FatalIOError); } } diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.H b/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.H index 40607fbe18e99dbf0ba491860c80c2219318cdc1..7e3b43f9cbb60187d953aef979a333054d991cb3 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.H +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinement.H @@ -555,8 +555,21 @@ private: label& nRefine ) const; - //- Mark cells for surface proximity based refinement. - label markProximityRefinementWave + //- Mark faces for additional proximity based testing. Extends + // testFaces + void markProximityCandidateFaces + ( + const labelList& blockedSurfaces, + const List<scalarList>& regionToBlockSize, + const labelList& neiLevel, + const pointField& neiCc, + + labelList& testFaces + ) const; + + //- Mark cells for surface proximity based refinement. Uses + // ray-shooting from markInternalGapRefinement. + label markFakeGapRefinement ( const scalar planarCos, const labelList& blockedSurfaces, diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBlock.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBlock.C index fc27ab08afb82d0839f1e6a77aaf7f9ebf83cf3d..435cadd56d771b5d47dfeda706721b5ca6b6ba06 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBlock.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBlock.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -455,16 +455,14 @@ void Foam::meshRefinement::growSet //} -Foam::label Foam::meshRefinement::markProximityRefinementWave +void Foam::meshRefinement::markProximityCandidateFaces ( - const scalar planarCos, const labelList& blockedSurfaces, - const label nAllowRefine, + const List<scalarList>& regionToBlockSize, const labelList& neiLevel, const pointField& neiCc, - labelList& refineCell, - label& nRefine + labelList& testFaces ) const { labelListList faceZones(surfaces_.surfaces().size()); @@ -498,35 +496,6 @@ Foam::label Foam::meshRefinement::markProximityRefinementWave } - // Re-work the blockLevel of the blockedSurfaces into a length scale - // and a number of cells to cross - List<scalarList> regionToBlockSize(surfaces_.surfaces().size()); - for (const label surfi : blockedSurfaces) - { - const label geomi = surfaces_.surfaces()[surfi]; - const searchableSurface& s = surfaces_.geometry()[geomi]; - const label nRegions = s.regions().size(); - regionToBlockSize[surfi].setSize(nRegions); - for (label regioni = 0; regioni < nRegions; regioni++) - { - const label globalRegioni = surfaces_.globalRegion(surfi, regioni); - const label bLevel = surfaces_.blockLevel()[globalRegioni]; - regionToBlockSize[surfi][regioni] = - meshCutter_.level0EdgeLength()/pow(2.0, bLevel); - - //const label mLevel = surfaces_.maxLevel()[globalRegioni]; - //// TBD: check for higher cached level of surface due to vol - //// refinement. Problem: might still miss refinement bubble - //// fully inside thin channel - //if (isA<triSurfaceMesh>(s) && !isA<distributedTriSurfaceMesh>(s)) - //{ - // const triSurfaceMesh& surf = refCast<const triSurfaceMesh>(s); - //} - - //nIters = max(nIters, (2<<(mLevel-bLevel))); - } - } - // Clever limiting of the number of iterations (= max cells in the channel) // since it has too many problematic issues, e.g. with volume refinement // and the real check uses the proper distance anyway just disable. @@ -535,7 +504,7 @@ Foam::label Foam::meshRefinement::markProximityRefinementWave // Collect candidate faces (i.e. intersecting any surface and // owner/neighbour not yet refined) - const labelList testFaces(getRefineCandidateFaces(refineCell)); + //const labelList testFaces(getRefineCandidateFaces(refineCell)); // Collect segments pointField start(testFaces.size()); @@ -729,212 +698,313 @@ Foam::label Foam::meshRefinement::markProximityRefinementWave wallDistCalc.iterate(nIters); - if (debug&meshRefinement::MESH) + // Extract faces of visited cells + + bitSet isProximityFace(mesh_.nFaces(), false); + + // Make sure to include initial intersected ones + isProximityFace.set(testFaces); + + forAll(allCellInfo, celli) { - // Dump current nearest opposite surfaces - volScalarField distance + if (allCellInfo[celli].valid(wallDistCalc.data())) + { + isProximityFace.set(mesh_.cells()[celli]); + } + } + + syncTools::syncFaceList + ( + mesh_, + isProximityFace, + orEqOp<unsigned int>(), + 0u + ); + + testFaces = isProximityFace.toc(); +} + + +Foam::label Foam::meshRefinement::markFakeGapRefinement +( + const scalar planarCos, + const labelList& blockedSurfaces, + const label nAllowRefine, + const labelList& neiLevel, + const pointField& neiCc, + + labelList& refineCell, + label& nRefine +) const +{ + // Re-work the blockLevel of the blockedSurfaces into a length scale + // and a number of cells to cross + List<scalarList> regionToBlockSize(surfaces_.surfaces().size()); + scalar maxBlockSize(-1); + for (const label surfi : blockedSurfaces) + { + const label geomi = surfaces_.surfaces()[surfi]; + const searchableSurface& s = surfaces_.geometry()[geomi]; + const label nRegions = s.regions().size(); + + regionToBlockSize[surfi].setSize(nRegions, -1); + for (label regioni = 0; regioni < nRegions; regioni++) + { + const label globalRegioni = surfaces_.globalRegion(surfi, regioni); + const label bLevel = surfaces_.blockLevel()[globalRegioni]; + + // If valid blockLevel specified + if (bLevel != labelMax) + { + regionToBlockSize[surfi][regioni] = + meshCutter_.level0EdgeLength()/pow(2.0, bLevel); + } + + maxBlockSize = max(maxBlockSize, regionToBlockSize[surfi][regioni]); + + //const label mLevel = surfaces_.maxLevel()[globalRegioni]; + //// TBD: check for higher cached level of surface due to vol + //// refinement. Problem: might still miss refinement bubble + //// fully inside thin channel + //if (isA<triSurfaceMesh>(s) && !isA<distributedTriSurfaceMesh>(s)) + //{ + // const triSurfaceMesh& surf = refCast<const triSurfaceMesh>(s); + //} + } + } + + // Collect candidate faces (i.e. intersecting any surface and + // owner/neighbour not yet refined) and their cells + labelList cellMap; + { + labelList testFaces(getRefineCandidateFaces(refineCell)); + + // Extend the set by faceCellFace wave upto given 3*blockLevel size + markProximityCandidateFaces ( - IOobject - ( - "gapSize", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar - ( - "zero", - dimLength, //dimensionSet(0, 1, 0, 0, 0), - -1 - ) + blockedSurfaces, + regionToBlockSize, + neiLevel, + neiCc, + testFaces ); - forAll(allCellInfo, celli) + + bitSet isTestCell(mesh_.nCells()); + for (const label facei : testFaces) { - if (allCellInfo[celli].valid(wallDistCalc.data())) + const label own = mesh_.faceOwner()[facei]; + if (refineCell[own] == -1) { - const point& cc = mesh_.cellCentres()[celli]; - // Nearest surface points - const List<point>& origin = allCellInfo[celli].origin(); - - // Find 'opposite' pair with minimum distance - for (label i = 0; i < origin.size(); i++) + isTestCell.set(own); + } + if (mesh_.isInternalFace(facei)) + { + const label nei = mesh_.faceNeighbour()[facei]; + if (refineCell[nei] == -1) { - for (label j = i + 1; j < origin.size(); j++) - { - if (((cc-origin[i]) & (cc-origin[j])) < 0) - { - const scalar d(mag(origin[i]-origin[j])); - if (distance[celli] < 0) - { - distance[celli] = d; - } - else - { - distance[celli] = min(distance[celli], d); - } - } - } + isTestCell.set(nei); } } } - distance.correctBoundaryConditions(); - - Info<< "Writing measured gap distance to " - << distance.name() << endl; - distance.write(); + cellMap = isTestCell.sortedToc(); } + // Shoot rays in all 6 directions + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + // + // Almost exact copy of meshRefinement::markInternalGapRefinement. + // Difference is only in the length scale (now based on blockLevel) - // Detect tight gaps: - // - cell is inbetween the two surfaces - // - two surfaces are planarish - // - two surfaces are not too far apart - // (number of walking iterations is a too-coarse measure) - scalarField smallGapDistance(mesh_.nCells(), 0.0); - label nMulti = 0; - label nSmallGap = 0; + // Find per cell centre the nearest point and normal on the surfaces + List<pointIndexHit> nearInfo; + vectorField nearNormal; + labelList nearSurface; + labelList nearRegion; + { + surfaces_.findNearestRegion + ( + blockedSurfaces, + pointField(mesh_.cellCentres(), cellMap), + scalarField(cellMap.size(), maxBlockSize), // use uniform for now + nearSurface, + nearInfo, + nearRegion, + nearNormal + ); + } - //OBJstream str(mesh_.time().timePath()/"multiRegion.obj"); + DynamicList<label> map(nearInfo.size()); + DynamicField<point> rayStart(nearInfo.size()); + DynamicField<point> rayEnd(nearInfo.size()); + DynamicField<scalar> gapSize(nearInfo.size()); - forAll(allCellInfo, celli) + DynamicField<point> rayStart2(nearInfo.size()); + DynamicField<point> rayEnd2(nearInfo.size()); + DynamicField<scalar> gapSize2(nearInfo.size()); + + label nTestCells = 0; + + forAll(nearInfo, i) { - if (allCellInfo[celli].valid(wallDistCalc.data())) + if (nearInfo[i].hit()) { - const point& cc = mesh_.cellCentres()[celli]; - - const List<point>& origin = allCellInfo[celli].origin(); - const List<FixedList<label, 3>>& surface = - allCellInfo[celli].surface(); + const label globalRegioni = surfaces_.globalRegion + ( + nearSurface[i], + nearRegion[i] + ); - // Find pair with minimum distance - for (label i = 0; i < origin.size(); i++) + // Combine info from shell and surface + const label bLevel = surfaces_.blockLevel()[globalRegioni]; + const FixedList<label, 3> gapInfo + ({ + 100, + bLevel, + 100 + }); + const volumeType gapMode(volumeType::MIXED); + + // Store wanted number of cells in gap + const label celli = cellMap[i]; + const label cLevel = meshCutter_.cellLevel()[celli]; + + // Construct one or more rays to test for oppositeness + const label nRays = generateRays + ( + false, // ignore actual surface normal + nearInfo[i].hitPoint(), + nearNormal[i], + gapInfo, + gapMode, + + mesh_.cellCentres()[celli], + cLevel, + + rayStart, + rayEnd, + gapSize, + + rayStart2, + rayEnd2, + gapSize2 + ); + if (nRays > 0) { - for (label j = i + 1; j < origin.size(); j++) + nTestCells++; + for (label j = 0; j < nRays; j++) { - //if (isMultiRegion[celli]) - //{ - // // The intersection locations are too inaccurate - // // (since not proper nearest, just a cell-cell ray - // // intersection) so include always - // - // smallGapDistance[celli] = - // max(smallGapDistance[celli], maxDist); - // - // - // str.writeLine(cc, origin[i]); - // str.writeLine(cc, origin[j]); - // - // nMulti++; - //} - //else - if (((cc-origin[i]) & (cc-origin[j])) < 0) - { - const label surfi = surface[i][0]; - const label regioni = surface[i][1]; + map.append(i); + } + } + } + } - const label surfj = surface[j][0]; - const label regionj = surface[j][1]; + Info<< "Selected " << returnReduce(nTestCells, sumOp<label>()) + << " cells for testing out of " + << mesh_.globalData().nTotalCells() << endl; + map.shrink(); + rayStart.shrink(); + rayEnd.shrink(); + gapSize.shrink(); - const scalar maxSize = max - ( - regionToBlockSize[surfi][regioni], - regionToBlockSize[surfj][regionj] - ); + rayStart2.shrink(); + rayEnd2.shrink(); + gapSize2.shrink(); - if + cellMap = labelUIndList(cellMap, map)(); + nearNormal = UIndirectList<vector>(nearNormal, map)(); + nearInfo.clear(); + nearSurface.clear(); + nearRegion.clear(); + + + // Do intersections in pairs + labelList surf1; + labelList region1; + List<pointIndexHit> hit1; + vectorField normal1; + surfaces_.findNearestIntersection + ( + rayStart, + rayEnd, + surf1, + region1, + hit1, + normal1 + ); + + labelList surf2; + labelList region2; + List<pointIndexHit> hit2; + vectorField normal2; + surfaces_.findNearestIntersection + ( + rayStart2, + rayEnd2, + surf2, + region2, + hit2, + normal2 + ); + + // Extract cell based gap size + const label oldNRefine = nRefine; + forAll(surf1, i) + { + if (surf1[i] != -1 && surf2[i] != -1) + { + // Found intersections with surface. Check for + // - small gap + // - coplanar normals + + const label celli = cellMap[i]; + if (celli != -1 && refineCell[celli] == -1) + { + const scalar d2 = magSqr(hit1[i].hitPoint()-hit2[i].hitPoint()); + + const scalar maxGapSize + ( + max + ( + regionToBlockSize[surf1[i]][region1[i]], + regionToBlockSize[surf2[i]][region2[i]] + ) + ); + + if + ( + (mag(normal1[i]&normal2[i]) > planarCos) + && (d2 < Foam::sqr(maxGapSize)) + ) + { + if + ( + !markForRefine ( - magSqr(origin[i]-origin[j]) - < Foam::sqr(2*maxSize) + 0, // mark level + nAllowRefine, + refineCell[celli], + nRefine ) + ) + { + if (debug) { - const scalar maxDist - ( - max - ( - mag(cc-origin[i]), - mag(cc-origin[j]) - ) - ); - - smallGapDistance[celli] = - max(smallGapDistance[celli], maxDist); - nSmallGap++; + Pout<< "Stopped refining since reaching my cell" + << " limit of " << mesh_.nCells()+7*nRefine + << endl; } + break; } } } } } - - if (debug) - { - Info<< "Marked for blocking due to intersecting multiple surfaces : " - << returnReduce(nMulti, sumOp<label>()) << " cells." << endl; - Info<< "Marked for blocking due to close opposite surfaces : " - << returnReduce(nSmallGap, sumOp<label>()) << " cells." << endl; - } - - if (debug&meshRefinement::MESH) - { - volScalarField distance - ( - IOobject - ( - "smallGapDistance", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimLength, Zero) - ); - distance.field() = smallGapDistance; - distance.correctBoundaryConditions(); - - Info<< "Writing all small-gap cells to " - << distance.name() << endl; - distance.write(); - } - - - // Mark refinement - const label oldNRefine = nRefine; - forAll(smallGapDistance, celli) - { - if (smallGapDistance[celli] > SMALL) - { - if - ( - !markForRefine - ( - 0, // mark level - nAllowRefine, - refineCell[celli], - nRefine - ) - ) - { - if (debug) - { - Pout<< "Stopped refining since reaching my cell" - << " limit of " << mesh_.nCells()+7*nRefine - << endl; - } - break; - } - } - } - if ( returnReduce(nRefine, sumOp<label>()) @@ -1006,7 +1076,20 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::removeGapCells } - markProximityRefinementWave + //markProximityRefinementWave + //( + // Foam::cos(degToRad(planarAngle)), + // surfToBlockLevel.sortedToc(), + // + // labelMax/Pstream::nProcs(), //nAllowRefine, + // neiLevel, + // neiCc, + // + // refineCell, + // nRefine + //); + + markFakeGapRefinement ( Foam::cos(degToRad(planarAngle)), surfToBlockLevel.sortedToc(), @@ -1020,20 +1103,6 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::removeGapCells ); - //// Mark big-gap refinement - //markFakeGapRefinement - //( - // Foam::cos(degToRad(planarAngle)), - // - // labelMax/Pstream::nProcs(), //nAllowRefine, - // neiLevel, - // neiCc, - // - // refineCell, - // nRefine - //); - - Info<< "Marked for blocking due to close opposite surfaces : " << returnReduce(nRefine, sumOp<label>()) << " cells." << endl; @@ -2147,4 +2216,499 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::blockLeakFaces } + +/* +Foam::label Foam::meshRefinement::markProximityRefinementWave +( + const scalar planarCos, + const labelList& blockedSurfaces, + const label nAllowRefine, + const labelList& neiLevel, + const pointField& neiCc, + + labelList& refineCell, + label& nRefine +) const +{ + labelListList faceZones(surfaces_.surfaces().size()); + { + // If triSurface do additional zoning based on connectivity + for (const label surfi : blockedSurfaces) + { + const label geomi = surfaces_.surfaces()[surfi]; + const searchableSurface& s = surfaces_.geometry()[geomi]; + if (isA<triSurfaceMesh>(s) && !isA<distributedTriSurfaceMesh>(s)) + { + const triSurfaceMesh& surf = refCast<const triSurfaceMesh>(s); + const labelListList& edFaces = surf.edgeFaces(); + boolList isOpenEdge(edFaces.size(), false); + forAll(edFaces, i) + { + if (edFaces[i].size() == 1) + { + isOpenEdge[i] = true; + } + } + + labelList faceZone; + const label nZones = surf.markZones(isOpenEdge, faceZone); + if (nZones > 1) + { + faceZones[surfi].transfer(faceZone); + } + } + } + } + + + // Re-work the blockLevel of the blockedSurfaces into a length scale + // and a number of cells to cross + List<scalarList> regionToBlockSize(surfaces_.surfaces().size()); + for (const label surfi : blockedSurfaces) + { + const label geomi = surfaces_.surfaces()[surfi]; + const searchableSurface& s = surfaces_.geometry()[geomi]; + const label nRegions = s.regions().size(); + regionToBlockSize[surfi].setSize(nRegions); + for (label regioni = 0; regioni < nRegions; regioni++) + { + const label globalRegioni = surfaces_.globalRegion(surfi, regioni); + const label bLevel = surfaces_.blockLevel()[globalRegioni]; + regionToBlockSize[surfi][regioni] = + meshCutter_.level0EdgeLength()/pow(2.0, bLevel); + + //const label mLevel = surfaces_.maxLevel()[globalRegioni]; + //// TBD: check for higher cached level of surface due to vol + //// refinement. Problem: might still miss refinement bubble + //// fully inside thin channel + //if (isA<triSurfaceMesh>(s) && !isA<distributedTriSurfaceMesh>(s)) + //{ + // const triSurfaceMesh& surf = refCast<const triSurfaceMesh>(s); + //} + + //nIters = max(nIters, (2<<(mLevel-bLevel))); + } + } + + // Clever limiting of the number of iterations (= max cells in the channel) + // since it has too many problematic issues, e.g. with volume refinement + // and the real check uses the proper distance anyway just disable. + const label nIters = mesh_.globalData().nTotalCells(); + + + // Collect candidate faces (i.e. intersecting any surface and + // owner/neighbour not yet refined) + const labelList testFaces(getRefineCandidateFaces(refineCell)); + + // Collect segments + pointField start(testFaces.size()); + pointField end(testFaces.size()); + labelList minLevel(testFaces.size()); + + calcCellCellRays + ( + neiCc, + neiLevel, + testFaces, + start, + end, + minLevel + ); + // TBD. correct nIters for actual cellLevel (since e.g. volume refinement + // might add to cell level). Unfortunately we only have minLevel, + // not maxLevel. Problem: what if volume refinement only in middle of + // channel? Say channel 1m wide with a 0.1m sphere of refinement + // Workaround: have dummy surface with e.g. maxLevel 100 to + // force nIters to be high enough. + + + // Test for all intersections (with surfaces of higher gap level than + // minLevel) and cache per cell the max surface level and the local normal + // on that surface. + + labelList surface1; + List<pointIndexHit> hit1; + labelList region1; + vectorField normal1; + + labelList surface2; + List<pointIndexHit> hit2; + labelList region2; + vectorField normal2; + + surfaces_.findNearestIntersection + ( + blockedSurfaces, + start, + end, + + surface1, + hit1, + region1, // local region + normal1, + + surface2, + hit2, + region2, // local region + normal2 + ); + + + // Detect cells that are using multiple surface regions + //bitSet isMultiRegion; + //detectMultiRegionCells + //( + // faceZones, + // testFaces, + // + // surface1, + // hit1, + // region1, + // + // surface2, + // hit2, + // region2, + // + // isMultiRegion + //); + + + label n = 0; + forAll(testFaces, i) + { + if (hit1[i].hit()) + { + n++; + } + } + + List<wallPoints> faceDist(n); + labelList changedFaces(n); + n = 0; + + DynamicList<point> originLocation(2); + DynamicList<scalar> originDistSqr(2); + DynamicList<FixedList<label, 3>> originSurface(2); + //DynamicList<point> originNormal(2); + + + //- To avoid walking through surfaces we mark all faces that have been + // intersected. We can either mark only those faces intersecting + // blockedSurfaces (i.e. with a 'blockLevel') or mark faces intersecting + // any (refinement) surface (this includes e.g. faceZones). This is + // much easier since that information is already cached + // (meshRefinement::intersectedFaces()) + + //bitSet isBlockedFace(mesh_.nFaces()); + forAll(testFaces, i) + { + if (hit1[i].hit()) + { + const label facei = testFaces[i]; + //isBlockedFace.set(facei); + const point& fc = mesh_.faceCentres()[facei]; + const labelList& fz1 = faceZones[surface1[i]]; + + originLocation.clear(); + originDistSqr.clear(); + //originNormal.clear(); + originSurface.clear(); + + originLocation.append(hit1[i].point()); + originDistSqr.append(hit1[i].point().distSqr(fc)); + //originNormal.append(normal1[i]); + originSurface.append + ( + FixedList<label, 3> + ({ + surface1[i], + region1[i], + (fz1.size() ? fz1[hit1[i].index()] : region1[i]) + }) + ); + + if (hit2[i].hit() && hit1[i] != hit2[i]) + { + const labelList& fz2 = faceZones[surface2[i]]; + originLocation.append(hit2[i].point()); + originDistSqr.append(hit2[i].point().distSqr(fc)); + //originNormal.append(normal2[i]); + originSurface.append + ( + FixedList<label, 3> + ({ + surface2[i], + region2[i], + (fz2.size() ? fz2[hit2[i].index()] : region2[i]) + }) + ); + } + + // Collect all seed data. Currently walking does not look at + // surface direction - if so pass in surface normal as well + faceDist[n] = wallPoints + ( + originLocation, // origin + originDistSqr, // distance to origin + originSurface // surface+region+zone + //originNormal // normal at origin + ); + changedFaces[n] = facei; + n++; + } + } + + + // Clear intersection info + surface1.clear(); + hit1.clear(); + region1.clear(); + normal1.clear(); + surface2.clear(); + hit2.clear(); + region2.clear(); + normal2.clear(); + + + List<wallPoints> allFaceInfo(mesh_.nFaces()); + List<wallPoints> allCellInfo(mesh_.nCells()); + + // Any refinement surface (even a faceZone) should stop the gap walking. + // This is exactly the information which is cached in the surfaceIndex_ + // field. + const bitSet isBlockedFace(intersectedFaces()); + + wallPoints::trackData td(isBlockedFace, regionToBlockSize); + FaceCellWave<wallPoints, wallPoints::trackData> wallDistCalc + ( + mesh_, + changedFaces, + faceDist, + allFaceInfo, + allCellInfo, + 0, // max iterations + td + ); + wallDistCalc.iterate(nIters); + + + if (debug&meshRefinement::MESH) + { + // Dump current nearest opposite surfaces + volScalarField distance + ( + IOobject + ( + "gapSize", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + mesh_, + dimensionedScalar + ( + "zero", + dimLength, //dimensionSet(0, 1, 0, 0, 0), + -1 + ) + ); + + forAll(allCellInfo, celli) + { + if (allCellInfo[celli].valid(wallDistCalc.data())) + { + const point& cc = mesh_.cellCentres()[celli]; + // Nearest surface points + const List<point>& origin = allCellInfo[celli].origin(); + + // Find 'opposite' pair with minimum distance + for (label i = 0; i < origin.size(); i++) + { + for (label j = i + 1; j < origin.size(); j++) + { + if (((cc-origin[i]) & (cc-origin[j])) < 0) + { + const scalar d(mag(origin[i]-origin[j])); + if (distance[celli] < 0) + { + distance[celli] = d; + } + else + { + distance[celli] = min(distance[celli], d); + } + } + } + } + } + } + distance.correctBoundaryConditions(); + + Info<< "Writing measured gap distance to " + << distance.name() << endl; + distance.write(); + } + + + + // Detect tight gaps: + // - cell is inbetween the two surfaces + // - two surfaces are planarish + // - two surfaces are not too far apart + // (number of walking iterations is a too-coarse measure) + + scalarField smallGapDistance(mesh_.nCells(), 0.0); + label nMulti = 0; + label nSmallGap = 0; + + //OBJstream str(mesh_.time().timePath()/"multiRegion.obj"); + + + forAll(allCellInfo, celli) + { + if (allCellInfo[celli].valid(wallDistCalc.data())) + { + const point& cc = mesh_.cellCentres()[celli]; + + const List<point>& origin = allCellInfo[celli].origin(); + const List<FixedList<label, 3>>& surface = + allCellInfo[celli].surface(); + + // Find pair with minimum distance + for (label i = 0; i < origin.size(); i++) + { + for (label j = i + 1; j < origin.size(); j++) + { + //if (isMultiRegion[celli]) + //{ + // // The intersection locations are too inaccurate + // // (since not proper nearest, just a cell-cell ray + // // intersection) so include always + // + // smallGapDistance[celli] = + // max(smallGapDistance[celli], maxDist); + // + // + // str.writeLine(cc, origin[i]); + // str.writeLine(cc, origin[j]); + // + // nMulti++; + //} + //else + if (((cc-origin[i]) & (cc-origin[j])) < 0) + { + const label surfi = surface[i][0]; + const label regioni = surface[i][1]; + + const label surfj = surface[j][0]; + const label regionj = surface[j][1]; + + const scalar maxSize = max + ( + regionToBlockSize[surfi][regioni], + regionToBlockSize[surfj][regionj] + ); + + if + ( + magSqr(origin[i]-origin[j]) + < Foam::sqr(2*maxSize) + ) + { + const scalar maxDist + ( + max + ( + mag(cc-origin[i]), + mag(cc-origin[j]) + ) + ); + + smallGapDistance[celli] = + max(smallGapDistance[celli], maxDist); + nSmallGap++; + } + } + } + } + } + } + + + if (debug) + { + Info<< "Marked for blocking due to intersecting multiple surfaces : " + << returnReduce(nMulti, sumOp<label>()) << " cells." << endl; + Info<< "Marked for blocking due to close opposite surfaces : " + << returnReduce(nSmallGap, sumOp<label>()) << " cells." << endl; + } + + if (debug&meshRefinement::MESH) + { + volScalarField distance + ( + IOobject + ( + "smallGapDistance", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ), + mesh_, + dimensionedScalar(dimLength, Zero) + ); + distance.field() = smallGapDistance; + distance.correctBoundaryConditions(); + + Info<< "Writing all small-gap cells to " + << distance.name() << endl; + distance.write(); + } + + + // Mark refinement + const label oldNRefine = nRefine; + forAll(smallGapDistance, celli) + { + if (smallGapDistance[celli] > SMALL) + { + if + ( + !markForRefine + ( + 0, // mark level + nAllowRefine, + refineCell[celli], + nRefine + ) + ) + { + if (debug) + { + Pout<< "Stopped refining since reaching my cell" + << " limit of " << mesh_.nCells()+7*nRefine + << endl; + } + break; + } + } + } + + if + ( + returnReduce(nRefine, sumOp<label>()) + > returnReduce(nAllowRefine, sumOp<label>()) + ) + { + Info<< "Reached refinement limit." << endl; + } + + return returnReduce(nRefine-oldNRefine, sumOp<label>()); +} +*/ + // ************************************************************************* // diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementProblemCells.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementProblemCells.C index 0c1c50ba6954d1981817495313d3e955aa3cd554..61fa183e7d7d6c9f20fc73c8f10fefcabe6f856a 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementProblemCells.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementProblemCells.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -473,13 +473,16 @@ void Foam::meshRefinement::markFacesOnProblemCells // Baffle all faces of cells that need to be removed forAllConstIters(problemCells, iter) { - const cell& cFaces = mesh_.cells()[iter.key()]; - - forAll(cFaces, i) + for (const label facei : mesh_.cells()[iter.key()]) { - label facei = cFaces[i]; + const label patchi = patches.whichPatch(facei); - if (facePatch[facei] == -1 && mesh_.isInternalFace(facei)) + if + ( + facePatch[facei] == -1 + // && mesh_.isInternalFace(facei) + && (patchi == -1 || patches[patchi].coupled()) + ) { facePatch[facei] = nearestAdaptPatch[facei]; faceZone[facei] = nearestAdaptZone[facei]; @@ -719,14 +722,15 @@ void Foam::meshRefinement::markFacesOnProblemCells else { // Block all faces of cell - forAll(cFaces, cf) + for (const label facei : cFaces) { - label facei = cFaces[cf]; + const label patchi = patches.whichPatch(facei); if ( facePatch[facei] == -1 - && mesh_.isInternalFace(facei) + // && mesh_.isInternalFace(facei) + && (patchi == -1 || patches[patchi].coupled()) ) { facePatch[facei] = nearestAdaptPatch[facei]; @@ -805,10 +809,13 @@ void Foam::meshRefinement::markFacesOnProblemCells for (const label facei : cFaces) { + const label patchi = patches.whichPatch(facei); + if ( facePatch[facei] == -1 - && mesh_.isInternalFace(facei) + // && mesh_.isInternalFace(facei) + && (patchi == -1 || patches[patchi].coupled()) ) { facePatch[facei] = nearestAdaptPatch[facei]; diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementTemplates.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementTemplates.C index 324c6d2972b019a73c0b4c2fffba93a1048609e7..931e9ced31e9600fd5455440985851941424510c 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementTemplates.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementTemplates.C @@ -166,23 +166,8 @@ void Foam::meshRefinement::collectAndPrint { const globalIndex globalPoints(points.size()); - pointField allPoints; - globalPoints.gather - ( - points, - allPoints, - UPstream::msgType(), - Pstream::commsTypes::blocking - ); - - List<T> allData; - globalPoints.gather - ( - data, - allData, - UPstream::msgType(), - Pstream::commsTypes::blocking - ); + pointField allPoints(globalPoints.gather(points)); + List<T> allData(globalPoints.gather(data)); scalarField magAllPoints(mag(allPoints-point(-0.317, 0.117, 0.501))); diff --git a/src/mesh/snappyHexMesh/meshRefinement/wallPointsI.H b/src/mesh/snappyHexMesh/meshRefinement/wallPointsI.H index 4b2035131d79783ace75b9cee177129946cd5c58..61d01998b88238c8c86953655378314a5a9c2353 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/wallPointsI.H +++ b/src/mesh/snappyHexMesh/meshRefinement/wallPointsI.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -207,13 +207,25 @@ inline bool Foam::wallPoints::updateCell { const FixedList<label, 3>& nbrSurface = neighbourInfo.surface_[i]; - // Check distance from nbr origin to cc against max walking distance - const scalar blockSize = - td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; - const scalar d2 = magSqr(cc-neighbourInfo.origin_[i]); - if (d2 < Foam::sqr(3*blockSize)) + // Optionally check against surface-based block size + bool propagate = false; + if (nbrSurface[0] == labelMax) + { + // nbrSurface has special value to ignore regionToBlockSize + propagate = true; + } + else + { + // Check distance from nbr origin to cc against max walking distance + const scalar blockSize = + td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; + + propagate = (d2 < Foam::sqr(3*blockSize)); + } + + if (propagate) { // Real distance less than max gap distance. Note that it should // be at least 2 * blockSize (since gap is two cells across). @@ -280,13 +292,26 @@ inline bool Foam::wallPoints::updateFace { const FixedList<label, 3>& nbrSurface = neighbourInfo.surface_[i]; - // Check distance from nbr origin to cc against max walking distance - const scalar blockSize = - td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; - const scalar d2 = magSqr(fc-neighbourInfo.origin_[i]); - if (d2 < Foam::sqr(3*blockSize)) + // Optionally check against surface-based block size + bool propagate = false; + if (nbrSurface[0] == labelMax) + { + // nbrSurface has special value to ignore regionToBlockSize + propagate = true; + } + else + { + // Check distance from nbr origin to cc against max walking + // distance + const scalar blockSize = + td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; + + propagate = (d2 < Foam::sqr(3*blockSize)); + } + + if (propagate) { // Real distance less than max gap distance @@ -348,13 +373,26 @@ inline bool Foam::wallPoints::updateFace { const FixedList<label, 3>& nbrSurface = neighbourInfo.surface_[i]; - // Check distance from nbr origin to cc against max walking distance - const scalar blockSize = - td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; - const scalar d2 = magSqr(fc-neighbourInfo.origin_[i]); - if (d2 < Foam::sqr(3*blockSize)) + // Optionally check against surface-based block size + bool propagate = false; + if (nbrSurface[0] == labelMax) + { + // nbrSurface has special value to ignore regionToBlockSize + propagate = true; + } + else + { + // Check distance from nbr origin to cc against max walking + // distance + const scalar blockSize = + td.regionToBlockSize_[nbrSurface[0]][nbrSurface[1]]; + + propagate = (d2 < Foam::sqr(3*blockSize)); + } + + if (propagate) { // Real distance less than max gap distance diff --git a/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.C b/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.C index 81b70f72e94798dcc3ad340e986be4c8b019fb3b..5b32ac72cfc4335e6eebfa940e49ec108c1275fc 100644 --- a/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.C +++ b/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.C @@ -1954,6 +1954,59 @@ void Foam::refinementSurfaces::findNearestIntersection } +void Foam::refinementSurfaces::findNearestIntersection +( +// const labelList& surfacesToTest, + const pointField& start, + const pointField& end, + + labelList& surface1, + labelList& region1, + List<pointIndexHit>& hitInfo1, + vectorField& normal1 +) const +{ + // Initialize arguments + surface1.setSize(start.size()); + surface1 = -1; + region1.setSize(start.size()); + region1 = -1; + hitInfo1.setSize(start.size()); + hitInfo1 = pointIndexHit(); + normal1.setSize(start.size()); + normal1 = Zero; + + // Current end of segment to test. + pointField nearest(end); + // Work array + List<pointIndexHit> nearestInfo(start.size()); + labelList region; + vectorField normal; + + forAll(surfaces_, surfI) + { + const searchableSurface& geom = allGeometry_[surfaces_[surfI]]; + + // See if any intersection between start and current nearest + geom.findLine(start, nearest, nearestInfo); + geom.getRegion(nearestInfo, region); + geom.getNormal(nearestInfo, normal); + + forAll(nearestInfo, pointI) + { + if (nearestInfo[pointI].hit()) + { + surface1[pointI] = surfI; + region1[pointI] = region[pointI]; + hitInfo1[pointI] = nearestInfo[pointI]; + normal1[pointI] = normal[pointI]; + nearest[pointI] = nearestInfo[pointI].point(); + } + } + } +} + + void Foam::refinementSurfaces::findNearestIntersection ( const pointField& start, diff --git a/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.H b/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.H index 2c4ff38380ff71dde8ad1ab0db1d52d287e607bd..8f022033584f254f9f5ca46270280fdb1100d7de 100644 --- a/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.H +++ b/src/mesh/snappyHexMesh/refinementSurfaces/refinementSurfaces.H @@ -437,6 +437,17 @@ public: vectorField& normal ) const; + //- Find nearest (to start only) intersection of edge + void findNearestIntersection + ( + const pointField& start, + const pointField& end, + labelList& surfaces, + labelList& regions, + List<pointIndexHit>&, + vectorField& normal + ) const; + //- Find nearest (to start only) intersection of edge void findNearestIntersection ( diff --git a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappyLayerDriver.C b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappyLayerDriver.C index 2f857a3d56e2177c8bfc2542e0e6b4f470267a66..94365fc3670a0a13d312ce33efedc8447a85ebcb 100644 --- a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappyLayerDriver.C +++ b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappyLayerDriver.C @@ -113,8 +113,8 @@ Foam::tmp<Foam::scalarField> Foam::snappyLayerDriver::avgPointData const scalarField& pointFld ) { - tmp<scalarField> tfaceFld(new scalarField(pp.size(), Zero)); - scalarField& faceFld = tfaceFld.ref(); + auto tfaceFld = tmp<scalarField>::New(pp.size(), Zero); + auto& faceFld = tfaceFld.ref(); forAll(pp.localFaces(), facei) { @@ -4919,9 +4919,9 @@ void Foam::snappyLayerDriver::addLayers // Per cell 0 or number of layers in the cell column it is part of - labelList cellNLayers; + labelList cellNLayers(mesh.nCells(), Zero); // Per face actual overall layer thickness - scalarField faceRealThickness; + scalarField faceRealThickness(mesh.nFaces(), Zero); // Per face wanted overall layer thickness scalarField faceWantedThickness(mesh.nFaces(), Zero); { diff --git a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriver.C b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriver.C index 9667c05783780be1afd9592239c591752e653eaa..b38620a13f0a1f24ce4097181558c9987567bc49 100644 --- a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriver.C +++ b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriver.C @@ -257,8 +257,8 @@ Foam::tmp<Foam::pointField> Foam::snappySnapDriver::smoothInternalDisplacement // Add coupled contributions weightedPosition::syncPoints(mesh, sumLocation); - tmp<pointField> tdisplacement(new pointField(mesh.nPoints(), Zero)); - pointField& displacement = tdisplacement.ref(); + auto tdisplacement = tmp<pointField>::New(mesh.nPoints(), Zero); + auto& displacement = tdisplacement.ref(); label nAdapted = 0; @@ -490,8 +490,8 @@ Foam::tmp<Foam::pointField> Foam::snappySnapDriver::smoothPatchDisplacement // Displacement to calculate. - tmp<pointField> tpatchDisp(new pointField(meshPoints.size(), Zero)); - pointField& patchDisp = tpatchDisp.ref(); + auto tpatchDisp = tmp<pointField>::New(meshPoints.size(), Zero); + auto& patchDisp = tpatchDisp.ref(); forAll(pointFaces, i) { @@ -571,8 +571,8 @@ Foam::tmp<Foam::pointField> Foam::snappySnapDriver::smoothPatchDisplacement // const labelListList& pointEdges = pp.pointEdges(); // const edgeList& edges = pp.edges(); // -// tmp<pointField> tavg(new pointField(pointEdges.size(), Zero)); -// pointField& avg = tavg(); +// auto tavg = tmp<pointField>::New(pointEdges.size(), Zero); +// auto& avg = tavg.ref(); // // forAll(pointEdges, verti) // { @@ -658,8 +658,8 @@ Foam::tmp<Foam::scalarField> Foam::snappySnapDriver::edgePatchDist ); // Copy edge values into scalarField - tmp<scalarField> tedgeDist(new scalarField(mesh.nEdges())); - scalarField& edgeDist = tedgeDist.ref(); + auto tedgeDist = tmp<scalarField>::New(mesh.nEdges()); + auto& edgeDist = tedgeDist.ref(); forAll(allEdgeInfo, edgei) { @@ -1057,7 +1057,7 @@ Foam::tmp<Foam::pointField> Foam::snappySnapDriver::avgCellCentres // Add coupled contributions weightedPosition::syncPoints(mesh, pp.meshPoints(), avgBoundary); - tmp<pointField> tavgBoundary(new pointField(avgBoundary.size())); + auto tavgBoundary = tmp<pointField>::New(avgBoundary.size()); weightedPosition::getPoints(avgBoundary, tavgBoundary.ref()); return tavgBoundary; @@ -1073,8 +1073,8 @@ Foam::tmp<Foam::pointField> Foam::snappySnapDriver::avgCellCentres // // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // // (Ripped from snappyLayerDriver) // -// tmp<scalarField> tedgeLen(new scalarField(pp.nPoints())); -// scalarField& edgeLen = tedgeLen(); +// auto tedgeLen = tmp<scalarField>::New(pp.nPoints()); +// auto& edgeLen = tedgeLen.ref(); // { // const fvMesh& mesh = meshRefiner_.mesh(); // const scalar edge0Len = meshRefiner_.meshCutter().level0EdgeLength(); diff --git a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriverFeature.C b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriverFeature.C index 2e3b373f4fb4bc13163a974b80fe8703bb03e38b..e5e951c30dfcd99b6c033dfe02a69c1293197c1d 100644 --- a/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriverFeature.C +++ b/src/mesh/snappyHexMesh/snappyHexMeshDriver/snappySnapDriverFeature.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -513,7 +513,9 @@ void Foam::snappySnapDriver::calcNearestFacePointProperties forAll(pFaces, i) { label facei = pFaces[i]; - if (isMasterFace[facei] && faceSurfaceGlobalRegion[facei] != -1) + label globalRegioni = faceSurfaceGlobalRegion[facei]; + + if (isMasterFace[pp.addressing()[facei]] && globalRegioni != -1) { nFaces++; } @@ -535,7 +537,7 @@ void Foam::snappySnapDriver::calcNearestFacePointProperties label facei = pFaces[i]; label globalRegioni = faceSurfaceGlobalRegion[facei]; - if (isMasterFace[facei] && globalRegioni != -1) + if (isMasterFace[pp.addressing()[facei]] && globalRegioni != -1) { pNormals[nFaces] = faceSurfaceNormal[facei]; pDisp[nFaces] = faceDisp[facei]; diff --git a/src/mesh/snappyHexMesh/trackedParticle/trackedParticle.H b/src/mesh/snappyHexMesh/trackedParticle/trackedParticle.H index a4ae212678aef027839d2827ea9976f803f1b8fb..ce831e5238a07bae2a1dc4758cecf0069f5f114a 100644 --- a/src/mesh/snappyHexMesh/trackedParticle/trackedParticle.H +++ b/src/mesh/snappyHexMesh/trackedParticle/trackedParticle.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2019 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,7 +41,6 @@ SourceFiles #include "bitSet.H" #include "particle.H" -#include "autoPtr.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -164,14 +163,13 @@ public: bool newFormat = true ); - //- Construct and return a clone - autoPtr<particle> clone() const + //- Return a clone + virtual autoPtr<particle> clone() const { - return autoPtr<particle>::NewFrom<trackedParticle>(*this); + return particle::Clone(*this); } - //- Factory class to read-construct particles used for - // parallel transfer + //- Factory class to read-construct particles (for parallel transfer) class iNew { const polyMesh& mesh_; diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/AMIInterpolation.C b/src/meshTools/AMIInterpolation/AMIInterpolation/AMIInterpolation.C index 50a48a0e91d80b3c23c5e20eb7c8b153fedaba01..b71a9d4237cafe8213cfc7183c825cb6b04a3d12 100644 --- a/src/meshTools/AMIInterpolation/AMIInterpolation/AMIInterpolation.C +++ b/src/meshTools/AMIInterpolation/AMIInterpolation/AMIInterpolation.C @@ -837,6 +837,8 @@ bool Foam::AMIInterpolation::calculate << "AMI: no source faces present - no addressing constructed" << endl; + singlePatchProc_ = UPstream::myProcNo(comm_); + return false; } diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C index fc7344e0e234cb24ea09cb64857037281de7bd06..5d7e4573ec26fc88b741bea59087845f08c4cc68 100644 --- a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C +++ b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -335,9 +335,15 @@ Foam::label Foam::advancingFrontAMI::findTargetFace const point srcPt = srcFacePti == -1 ? bb.centre() : srcPts[srcFace[srcFacePti]]; - const pointIndexHit sample = + pointIndexHit sample = treePtr_->findNearest(srcPt, 0.25*bb.magSqr(), fnOp); + if (!sample.hit()) + { + // Fall-back for extreme cases. Should only occur sparsely + sample = treePtr_->findNearest(srcPt, Foam::sqr(GREAT), fnOp); + } + if (sample.hit() && isCandidate(srcFacei, sample.index())) { targetFacei = sample.index(); diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMIParallelOps.C b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMIParallelOps.C index 2df540432b28bd4f07bb8719771e253a45497e99..7bfa4688d6bfd6e22721329c5a9ae207b4a2b091 100644 --- a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMIParallelOps.C +++ b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMIParallelOps.C @@ -78,12 +78,7 @@ void Foam::advancingFrontAMI::distributePatches points.setSize(Pstream::nProcs(comm_)); faceIDs.setSize(Pstream::nProcs(comm_)); - PstreamBuffers pBufs - ( - Pstream::commsTypes::nonBlocking, - UPstream::msgType(), - comm_ - ); + PstreamBuffers pBufs(comm_); for (const int domain : Pstream::allProcs(comm_)) { diff --git a/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicACMIGAMGInterface/cyclicACMIGAMGInterface.C b/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicACMIGAMGInterface/cyclicACMIGAMGInterface.C index faacd652ec2b5f327b3706386fb14c2c96309bf9..0400a813eb265eef6302ce78b6be9c5c9b82676d 100644 --- a/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicACMIGAMGInterface/cyclicACMIGAMGInterface.C +++ b/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicACMIGAMGInterface/cyclicACMIGAMGInterface.C @@ -724,7 +724,7 @@ void Foam::cyclicACMIGAMGInterface::write(Ostream& os) const { GAMGInterface::write(os); - const bool hasAMI = amiPtr_.valid(); + const bool hasAMI = bool(amiPtr_); os << token::SPACE << neighbPatchID_ << token::SPACE << owner_ diff --git a/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicAMIGAMGInterface/cyclicAMIGAMGInterface.C b/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicAMIGAMGInterface/cyclicAMIGAMGInterface.C index bcb6146bfdb3e52efdd4704c43d6fb962b3aa8de..69dd64b6380598167798e0f864d9c65f84646aed 100644 --- a/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicAMIGAMGInterface/cyclicAMIGAMGInterface.C +++ b/src/meshTools/AMIInterpolation/GAMG/interfaces/cyclicAMIGAMGInterface/cyclicAMIGAMGInterface.C @@ -964,7 +964,7 @@ void Foam::cyclicAMIGAMGInterface::write(Ostream& os) const { GAMGInterface::write(os); - const bool hasAMI = amiPtr_.valid(); + const bool hasAMI = bool(amiPtr_); os << token::SPACE << neighbPatchID_ << token::SPACE << owner_ diff --git a/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPointPatchField/cyclicACMIPointPatchField.H b/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPointPatchField/cyclicACMIPointPatchField.H index 17755d529547fe6529d7d9858c8dd6f9234420d4..2dd4ed08e41abfb912666368fd4870c8063e7369 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPointPatchField/cyclicACMIPointPatchField.H +++ b/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPointPatchField/cyclicACMIPointPatchField.H @@ -138,18 +138,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new cyclicACMIPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference cyclicACMIPointPatchField ( @@ -157,19 +145,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new cyclicACMIPointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -211,7 +199,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch/cyclicACMIPolyPatch.C b/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch/cyclicACMIPolyPatch.C index 4a7452e93a01c19a178a0671aca628d5709d0ae6..404f19f671643ce23299052324300a6af1188554 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch/cyclicACMIPolyPatch.C +++ b/src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch/cyclicACMIPolyPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -217,10 +217,24 @@ void Foam::cyclicACMIPolyPatch::scalePatchFaceAreas return; } - forAll(noSf, facei) { - const scalar w = min(maxTol, max(tolerance_, mask[facei])); - noSf[facei] = noFaceArea[facei]*(scalar(1) - w); + tmp<scalarField> scale + ( + scalar(1) + - min + ( + max(mask, tolerance_), + maxTol + ) + ); + + // Scale area + forAll(noSf, facei) + { + noSf[facei] = noFaceArea[facei]*scale()[facei]; + } + // Cache scaling + const_cast<polyPatch&>(nonOverlapPatch).areaFraction(scale); } if (!createAMIFaces_) @@ -235,10 +249,15 @@ void Foam::cyclicACMIPolyPatch::scalePatchFaceAreas // Scale the coupled patch face areas vectorField::subField Sf = acmipp.faceAreas(); + tmp<scalarField> scale(max(tolerance_, mask)); + + // Scale area forAll(Sf, facei) { - Sf[facei] = faceArea[facei]*max(tolerance_, mask[facei]); + Sf[facei] = faceArea[facei]*scale()[facei]; } + // Cache scaling + const_cast<cyclicACMIPolyPatch&>(acmipp).areaFraction(scale); // Re-normalise the weights since the effect of overlap is already // accounted for in the area diff --git a/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPointPatchField/cyclicAMIPointPatchField.H b/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPointPatchField/cyclicAMIPointPatchField.H index 5840a30269529aa59b5b4203cc2d5adabec85303..35816cc5ac6512767ae3c461e30e0c1fcbaf47d4 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPointPatchField/cyclicAMIPointPatchField.H +++ b/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPointPatchField/cyclicAMIPointPatchField.H @@ -138,18 +138,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new cyclicAMIPointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference cyclicAMIPointPatchField ( @@ -157,19 +145,19 @@ public: const DimensionedField<Type, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new cyclicAMIPointPatchField<Type> - ( - *this, iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } @@ -215,7 +203,7 @@ public: virtual void evaluate ( const Pstream::commsTypes commsType = - Pstream::commsTypes::blocking + Pstream::commsTypes::buffered ) {} diff --git a/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPolyPatch/cyclicAMIPolyPatch.C b/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPolyPatch/cyclicAMIPolyPatch.C index 266dc991d7729b0ffd177b29143386c92fd04571..62a18bbc54a05066ec5283f48b93b2ee4f658b53 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPolyPatch/cyclicAMIPolyPatch.C +++ b/src/meshTools/AMIInterpolation/patches/cyclicAMI/cyclicAMIPolyPatch/cyclicAMIPolyPatch.C @@ -558,12 +558,12 @@ void Foam::cyclicAMIPolyPatch::movePoints polyPatch::movePoints -> primitivePatch::movePoints -> primitivePatch::clearGeom: - deleteDemandDrivenData(localPointsPtr_); - deleteDemandDrivenData(faceCentresPtr_); - deleteDemandDrivenData(faceAreasPtr_); - deleteDemandDrivenData(magFaceAreasPtr_); - deleteDemandDrivenData(faceNormalsPtr_); - deleteDemandDrivenData(pointNormalsPtr_); + localPointsPtr_.reset(nullptr); + faceCentresPtr_.reset(nullptr); + faceAreasPtr_.reset(nullptr); + magFaceAreasPtr_.reset(nullptr); + faceNormalsPtr_.reset(nullptr); + pointNormalsPtr_.reset(nullptr); */ } diff --git a/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.C b/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.C index 78e8877f6075068d1a4d136aee982a3e84aeb053..410a797230c29ecc9a28d51f67fa250b83a3237a 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.C +++ b/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.C @@ -273,16 +273,17 @@ void Foam::cyclicPeriodicAMIPolyPatch::resetAMI() const { const Time& runTime = boundaryMesh().mesh().time(); - fileName dir(runTime.globalPath()); - fileName postfix("_" + runTime.timeName()+"_expanded.obj"); + const fileName dir(runTime.globalPath()); + const fileName postfix("_" + runTime.timeName()+"_expanded.obj"); ownStr.reset(new OBJstream(dir/name() + postfix)); neiStr.reset(new OBJstream(dir/neighbPatch().name() + postfix)); InfoInFunction << "patch:" << name() - << " writing accumulated AMI to " << ownStr().name() - << " and " << neiStr().name() << endl; + << " writing accumulated AMI to " + << ownStr().name().relative(dir) + << " and " << neiStr().name().relative(dir) << endl; } // Create another copy diff --git a/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.H b/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.H index 00fa19cd6b424f76b1b6fcfd43cdd45aa18c9dac..40fce017e76d1488ebd6dc994816bc82200bdf45 100644 --- a/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.H +++ b/src/meshTools/AMIInterpolation/patches/cyclicPeriodicAMI/cyclicPeriodicAMIPolyPatch/cyclicPeriodicAMIPolyPatch.H @@ -29,6 +29,10 @@ Class Description Cyclic patch for periodic Arbitrary Mesh Interface (AMI) + Uses automated matching to fill all of the faces on owner and neighbour. + Can be used for translational periodic matching as well. Uses the + transforms from a specified periodic patch to transform the geometry. + SourceFiles cyclicPeriodicAMIPolyPatch.C @@ -59,7 +63,9 @@ private: // Private data - //- Current number of transformations (+ve forward, -ve backward) + //- Current number of transformations (+ve forward, -ve backward). + //- Used internally to stores the last state that gave a starting + //- match. Speeds up the automatic matching. mutable label nTransforms_; //- Number of sectors in a rotationally periodic geometry (optional) diff --git a/src/meshTools/Make/files b/src/meshTools/Make/files index 4a571b5fc28034d5f804073cc2099b7d1a5713a2..acbb97b1f1450d9d049b405db23fa669546b5b29 100644 --- a/src/meshTools/Make/files +++ b/src/meshTools/Make/files @@ -76,6 +76,7 @@ patchWave = $(algorithms)/PatchEdgeFaceWave $(patchWave)/PatchEdgeFaceWaveBase.C $(patchWave)/patchEdgeFaceInfo.C $(patchWave)/patchPatchDist.C +$(patchWave)/patchEdgeFaceRegion.C $(patchWave)/patchEdgeFaceRegions.C @@ -354,4 +355,18 @@ tetOverlapVolume/tetOverlapVolume.C triangulatedPatch/triangulatedPatch.C +solidBodyMotion = solidBodyMotionFunctions +$(solidBodyMotion)/solidBodyMotionFunction/solidBodyMotionFunction.C +$(solidBodyMotion)/solidBodyMotionFunction/solidBodyMotionFunctionNew.C +$(solidBodyMotion)/SDA/SDA.C +$(solidBodyMotion)/tabulated6DoFMotion/tabulated6DoFMotion.C +$(solidBodyMotion)/linearMotion/linearMotion.C +$(solidBodyMotion)/drivenLinearMotion/drivenLinearMotion.C +$(solidBodyMotion)/rotatingMotion/rotatingMotion.C +$(solidBodyMotion)/axisRotationMotion/axisRotationMotion.C +$(solidBodyMotion)/multiMotion/multiMotion.C +$(solidBodyMotion)/oscillatingLinearMotion/oscillatingLinearMotion.C +$(solidBodyMotion)/oscillatingRotatingMotion/oscillatingRotatingMotion.C + + LIB = $(FOAM_LIBBIN)/libmeshTools diff --git a/src/meshTools/Make/options b/src/meshTools/Make/options index 5b4f9ec84181988556c25393c12e10eb3e3b4531..9ee5884e5908ccdb6b1ba3acf323b8c524ec996a 100644 --- a/src/meshTools/Make/options +++ b/src/meshTools/Make/options @@ -1,7 +1,6 @@ EXE_INC = \ -I$(LIB_SRC)/fileFormats/lnInclude \ - -I$(LIB_SRC)/surfMesh/lnInclude \ - -I$(LIB_SRC)/dynamicMesh/lnInclude + -I$(LIB_SRC)/surfMesh/lnInclude LIB_LIBS = \ -lfileFormats \ diff --git a/src/meshTools/PatchFunction1/CodedField/CodedField.C b/src/meshTools/PatchFunction1/CodedField/CodedField.C index 8cea612466b573cfed98b885440837347645bb3e..d4a39fa793c11e55d5a9210c577b84eb5b30b8d9 100644 --- a/src/meshTools/PatchFunction1/CodedField/CodedField.C +++ b/src/meshTools/PatchFunction1/CodedField/CodedField.C @@ -168,24 +168,24 @@ Foam::PatchFunction1Types::CodedField<Type>::CodedField template<class Type> Foam::PatchFunction1Types::CodedField<Type>::CodedField ( - const CodedField<Type>& rhs + const CodedField<Type>& rhs, + const polyPatch& pp ) : - CodedField<Type>(rhs, rhs.patch()) + PatchFunction1<Type>(rhs, pp), + codedBase(), + dict_(rhs.dict_), + redirectName_(rhs.redirectName_) {} template<class Type> Foam::PatchFunction1Types::CodedField<Type>::CodedField ( - const CodedField<Type>& rhs, - const polyPatch& pp + const CodedField<Type>& rhs ) : - PatchFunction1<Type>(rhs, pp), - codedBase(), - dict_(rhs.dict_), - redirectName_(rhs.redirectName_) + CodedField<Type>(rhs, rhs.patch()) {} diff --git a/src/meshTools/PatchFunction1/CodedField/CodedField.H b/src/meshTools/PatchFunction1/CodedField/CodedField.H index 54cf23076e1f941b0503dd18a8731f5f197fdca2..ba3228d57115802c9d3b947865c7f2fdc16184c3 100644 --- a/src/meshTools/PatchFunction1/CodedField/CodedField.H +++ b/src/meshTools/PatchFunction1/CodedField/CodedField.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -181,9 +181,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit CodedField(const CodedField<Type>& rhs); - //- Copy construct, setting patch explicit CodedField ( @@ -191,22 +188,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit CodedField(const CodedField<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>> - ( - new CodedField<Type>(*this) - ); + return PatchFunction1<Type>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new CodedField<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/meshTools/PatchFunction1/ConstantField/ConstantField.C b/src/meshTools/PatchFunction1/ConstantField/ConstantField.C index 262fb5d7bf80ab3a11bf2cc8654f1932e0e454ee..abf183487acae505adbf2838dec9f618c6b05bbf 100644 --- a/src/meshTools/PatchFunction1/ConstantField/ConstantField.C +++ b/src/meshTools/PatchFunction1/ConstantField/ConstantField.C @@ -248,16 +248,6 @@ Foam::PatchFunction1Types::ConstantField<Type>::ConstantField {} -template<class Type> -Foam::PatchFunction1Types::ConstantField<Type>::ConstantField -( - const ConstantField<Type>& rhs -) -: - ConstantField<Type>(rhs, rhs.patch()) -{} - - template<class Type> Foam::PatchFunction1Types::ConstantField<Type>::ConstantField ( @@ -280,6 +270,16 @@ Foam::PatchFunction1Types::ConstantField<Type>::ConstantField } +template<class Type> +Foam::PatchFunction1Types::ConstantField<Type>::ConstantField +( + const ConstantField<Type>& rhs +) +: + ConstantField<Type>(rhs, rhs.patch()) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/meshTools/PatchFunction1/ConstantField/ConstantField.H b/src/meshTools/PatchFunction1/ConstantField/ConstantField.H index 267897593067751772057b10b87a6036d7a1b0b2..9d66bd343c49344205ac30ca24de2584f26dad0d 100644 --- a/src/meshTools/PatchFunction1/ConstantField/ConstantField.H +++ b/src/meshTools/PatchFunction1/ConstantField/ConstantField.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -147,9 +147,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit ConstantField(const ConstantField<Type>& rhs); - //- Copy construct setting patch explicit ConstantField ( @@ -157,19 +154,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit ConstantField(const ConstantField<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>>(new ConstantField<Type>(*this)); + return PatchFunction1<Type>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new ConstantField<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/meshTools/PatchFunction1/MappedFile/MappedFile.C b/src/meshTools/PatchFunction1/MappedFile/MappedFile.C index 6d6138017aac29615a66739457e94d2bfbe6287f..16d7fbc850bc2c10b565d2009922cc3a89bab0bb 100644 --- a/src/meshTools/PatchFunction1/MappedFile/MappedFile.C +++ b/src/meshTools/PatchFunction1/MappedFile/MappedFile.C @@ -60,7 +60,15 @@ Foam::PatchFunction1Types::MappedFile<Type>::MappedFile sampleIndex_(-1, -1), sampleAverage_(Zero, Zero), sampleValues_(), - offset_(Function1<Type>::NewIfPresent("offset", dict)) + offset_ + ( + Function1<Type>::NewIfPresent + ( + "offset", + dict, + patchFunction1Base::whichDb() + ) + ) { if (fieldTableName_.empty()) { @@ -167,16 +175,6 @@ Foam::PatchFunction1Types::MappedFile<Type>::MappedFile {} -template<class Type> -Foam::PatchFunction1Types::MappedFile<Type>::MappedFile -( - const MappedFile<Type>& rhs -) -: - MappedFile<Type>(rhs, rhs.patch()) -{} - - template<class Type> Foam::PatchFunction1Types::MappedFile<Type>::MappedFile ( @@ -214,6 +212,16 @@ Foam::PatchFunction1Types::MappedFile<Type>::MappedFile } +template<class Type> +Foam::PatchFunction1Types::MappedFile<Type>::MappedFile +( + const MappedFile<Type>& rhs +) +: + MappedFile<Type>(rhs, rhs.patch()) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/meshTools/PatchFunction1/MappedFile/MappedFile.H b/src/meshTools/PatchFunction1/MappedFile/MappedFile.H index 7a87184340448b1fa7c9e7c9eb167526d1bbcefa..3116b04abab33bacf263661ff7e8e63e0eefb146 100644 --- a/src/meshTools/PatchFunction1/MappedFile/MappedFile.H +++ b/src/meshTools/PatchFunction1/MappedFile/MappedFile.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -219,9 +219,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit MappedFile(const MappedFile<Type>& rhs); - //- Copy construct setting patch explicit MappedFile ( @@ -229,22 +226,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit MappedFile(const MappedFile<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>> - ( - new MappedFile<Type>(*this) - ); + return PatchFunction1<Type>::Clone(*this, this->patch()); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new MappedFile<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.C b/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.C index 2e6c728f58805d6ec04c0be2191d1a8806d57367..f5ce15c8cdb546770b3b99d1a0a318b93d9a8fe7 100644 --- a/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.C +++ b/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.C @@ -58,13 +58,6 @@ Foam::PatchFunction1<Type>::PatchFunction1 {} -template<class Type> -Foam::PatchFunction1<Type>::PatchFunction1(const PatchFunction1<Type>& rhs) -: - PatchFunction1<Type>(rhs, rhs.patch()) -{} - - template<class Type> Foam::PatchFunction1<Type>::PatchFunction1 ( @@ -77,6 +70,13 @@ Foam::PatchFunction1<Type>::PatchFunction1 {} +template<class Type> +Foam::PatchFunction1<Type>::PatchFunction1(const PatchFunction1<Type>& rhs) +: + PatchFunction1<Type>(rhs, rhs.patch()) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.H b/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.H index b8e075e5f590466b0d486ec9f96a9abf1b88af84..3c9754674335c9582180f24a15921b03df05ddb2 100644 --- a/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.H +++ b/src/meshTools/PatchFunction1/PatchFunction1/PatchFunction1.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -147,9 +147,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit PatchFunction1(const PatchFunction1<Type>& rhs); - //- Copy construct setting patch explicit PatchFunction1 ( @@ -157,6 +154,9 @@ public: const polyPatch& pp ); + //- Copy construct + explicit PatchFunction1(const PatchFunction1<Type>& rhs); + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const = 0; @@ -164,7 +164,24 @@ public: virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const = 0; - // Selectors + // Factory Methods + + //- Clone a PatchFunction1 + template<class Derived> + static tmp<PatchFunction1<Type>> + Clone(const Derived& fun) + { + return tmp<PatchFunction1<Type>>(new Derived(fun)); + } + + //- Clone a PatchFunction1 with a patch + template<class Derived> + static tmp<PatchFunction1<Type>> + Clone(const Derived& fun, const polyPatch& pp) + { + return tmp<PatchFunction1<Type>>(new Derived(fun, pp)); + } + //- Selector static autoPtr<PatchFunction1<Type>> New diff --git a/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.C b/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.C index aafc6abdc2e467d2f87558480bc3854c5939d8ef..7204c9ed67b6f48b6c102326013a70d8ab72ced7 100644 --- a/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.C +++ b/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.C @@ -54,16 +54,6 @@ Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField {} -template<class Type> -Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField -( - const UniformValueField<Type>& rhs -) -: - UniformValueField<Type>(rhs, rhs.patch()) -{} - - template<class Type> Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField ( @@ -81,6 +71,16 @@ Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField } +template<class Type> +Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField +( + const UniformValueField<Type>& rhs +) +: + UniformValueField<Type>(rhs, rhs.patch()) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type> diff --git a/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.H b/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.H index 789aa3d70dad42f90964d9e133a464a0870f29dc..01a107c0852b13af5394b15a3c6112045e4f3b5c 100644 --- a/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.H +++ b/src/meshTools/PatchFunction1/UniformValueField/UniformValueField.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2021 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,8 +40,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef PatchFunction1Types_UniformValueField_H -#define PatchFunction1Types_UniformValueField_H +#ifndef Foam_PatchFunction1Types_UniformValueField_H +#define Foam_PatchFunction1Types_UniformValueField_H #include "PatchFunction1.H" #include "Function1.H" @@ -92,9 +92,6 @@ public: const bool faceValues = true ); - //- Copy construct - explicit UniformValueField(const UniformValueField<Type>& rhs); - //- Copy construct setting patch explicit UniformValueField ( @@ -102,22 +99,19 @@ public: const polyPatch& pp ); - //- Construct and return a clone + //- Copy construct + explicit UniformValueField(const UniformValueField<Type>& rhs); + + //- Return a clone virtual tmp<PatchFunction1<Type>> clone() const { - return tmp<PatchFunction1<Type>> - ( - new UniformValueField<Type>(*this) - ); + return PatchFunction1<Type>::Clone(*this); } - //- Construct and return a clone setting patch + //- Return a clone, setting the patch virtual tmp<PatchFunction1<Type>> clone(const polyPatch& pp) const { - return tmp<PatchFunction1<Type>> - ( - new UniformValueField<Type>(*this, pp) - ); + return PatchFunction1<Type>::Clone(*this, pp); } diff --git a/src/meshTools/PatchFunction1/coordinateScaling/coordinateScaling.C b/src/meshTools/PatchFunction1/coordinateScaling/coordinateScaling.C index 6badd8d9e4efdc9b7312f447dae73ee65e0eb836..e24f7ac804f5e869e787c3a86ea3dc82f34a701a 100644 --- a/src/meshTools/PatchFunction1/coordinateScaling/coordinateScaling.C +++ b/src/meshTools/PatchFunction1/coordinateScaling/coordinateScaling.C @@ -51,7 +51,7 @@ Foam::coordinateScaling<Type>::coordinateScaling { const word key("scale" + Foam::name(dir+1)); - auto scaling = Function1<Type>::NewIfPresent(key, dict); + auto scaling = Function1<Type>::NewIfPresent(key, dict, &obr); if (scaling) { diff --git a/src/meshTools/algorithms/MeshWave/FaceCellWave.C b/src/meshTools/algorithms/MeshWave/FaceCellWave.C index a5487c290ab224b8ed3dd18095fc758a395ba3c6..6123f5c6bcff3fdc973316fe0f506264b570105d 100644 --- a/src/meshTools/algorithms/MeshWave/FaceCellWave.C +++ b/src/meshTools/algorithms/MeshWave/FaceCellWave.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -821,8 +821,17 @@ void Foam::FaceCellWave<Type, TrackingData>::handleAMICyclicPatches() } // Merge into global storage + + const auto areaFraction(patch.areaFraction()); + forAll(receiveInfo, i) { + if (areaFraction && areaFraction()[i] <= 0.5) + { + // not coupled + continue; + } + const label meshFacei = cycPatch.start()+i; const Type& newInfo = receiveInfo[i]; diff --git a/src/meshTools/cellDist/cellDistFuncs.C b/src/meshTools/cellDist/cellDistFuncs.C index 301354bc6019eda1bf5cfb3fec121c4d209fff0d..86cfdd1588084f5da532f06fae647b509184346f 100644 --- a/src/meshTools/cellDist/cellDistFuncs.C +++ b/src/meshTools/cellDist/cellDistFuncs.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -235,6 +235,8 @@ void Foam::cellDistFuncs::correctBoundaryFaceCells Map<label>& nearestFace ) const { + const auto& pbm = mesh().boundaryMesh(); + // Size neighbours array for maximum possible (= size of largest patch) DynamicList<label> neighbours(maxPatchSize(patchIDs)); @@ -242,15 +244,22 @@ void Foam::cellDistFuncs::correctBoundaryFaceCells const vectorField& cellCentres = mesh().cellCentres(); const labelList& faceOwner = mesh().faceOwner(); - forAll(mesh().boundaryMesh(), patchi) + forAll(pbm, patchi) { if (patchIDs.found(patchi)) { - const polyPatch& patch = mesh().boundaryMesh()[patchi]; + const polyPatch& patch = pbm[patchi]; + const auto areaFraction(patch.areaFraction()); // Check cells with face on wall forAll(patch, patchFacei) { + if (areaFraction && (areaFraction()[patchFacei] <= 0.5)) + { + // is mostly coupled + continue; + } + getPointNeighbours(patch, patchFacei, neighbours); label celli = faceOwner[patch.start() + patchFacei]; @@ -283,20 +292,42 @@ void Foam::cellDistFuncs::correctBoundaryPointCells { // Correct all (non-visited) cells with point on wall + const auto& pbm = mesh().boundaryMesh(); const vectorField& cellCentres = mesh().cellCentres(); - forAll(mesh().boundaryMesh(), patchi) + forAll(pbm, patchi) { if (patchIDs.found(patchi)) { - const polyPatch& patch = mesh().boundaryMesh()[patchi]; - + const polyPatch& patch = pbm[patchi]; + const auto& localFaces = patch.localFaces(); const labelList& meshPoints = patch.meshPoints(); const labelListList& pointFaces = patch.pointFaces(); - forAll(meshPoints, meshPointi) + bitSet isWallPoint(meshPoints.size(), true); { - const label vertI = meshPoints[meshPointi]; + const auto areaFraction(patch.areaFraction()); + + // Check cells with face on wall + forAll(patch, patchFacei) + { + if (!areaFraction || (areaFraction()[patchFacei] <= 0.5)) + { + // face mostly coupled + isWallPoint.unset(localFaces[patchFacei]); + } + } + } + + + forAll(meshPoints, patchPointi) + { + const label vertI = meshPoints[patchPointi]; + + if (!isWallPoint[patchPointi]) + { + continue; + } const labelList& neighbours = mesh().pointCells(vertI); @@ -304,7 +335,7 @@ void Foam::cellDistFuncs::correctBoundaryPointCells { if (!nearestFace.found(celli)) { - const labelList& wallFaces = pointFaces[meshPointi]; + const labelList& wallFaces = pointFaces[patchPointi]; label minFacei = -1; diff --git a/src/meshTools/cellDist/patchWave/patchDataWave.C b/src/meshTools/cellDist/patchWave/patchDataWave.C index dfa48df725e17cf41f50ff56f7ec3ecca346f867..9f943225c3e90476870f2db550b9813bca889549 100644 --- a/src/meshTools/cellDist/patchWave/patchDataWave.C +++ b/src/meshTools/cellDist/patchWave/patchDataWave.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,37 +41,45 @@ template<class TransferType, class TrackingData> void Foam::patchDataWave<TransferType, TrackingData>::setChangedFaces ( const labelHashSet& patchIDs, - labelList& changedFaces, - List<TransferType>& faceDist + DynamicList<label>& changedFaces, + DynamicList<TransferType>& faceDist ) const { const polyMesh& mesh = cellDistFuncs::mesh(); - label nChangedFaces = 0; - forAll(mesh.boundaryMesh(), patchi) { if (patchIDs.found(patchi)) { const polyPatch& patch = mesh.boundaryMesh()[patchi]; - const Field<Type>& patchField = initialPatchValuePtrs_[patchi]; + const auto areaFraction(patch.areaFraction()); - forAll(patch.faceCentres(), patchFacei) - { - label meshFacei = patch.start() + patchFacei; + const auto faceCentres(patch.faceCentres()); - changedFaces[nChangedFaces] = meshFacei; + const Field<Type>& patchField = initialPatchValuePtrs_[patchi]; - faceDist[nChangedFaces] = - TransferType + forAll(faceCentres, patchFacei) + { + if + ( + !areaFraction + || (areaFraction()[patchFacei] > 0.5) // mostly wall + ) + { + label meshFacei = patch.start() + patchFacei; + changedFaces.append(meshFacei); + + faceDist.append ( - patch.faceCentres()[patchFacei], - patchField[patchFacei], - 0.0 + TransferType + ( + faceCentres[patchFacei], + patchField[patchFacei], + 0.0 + ) ); - - nChangedFaces++; + } } } } @@ -222,8 +230,8 @@ void Foam::patchDataWave<TransferType, TrackingData>::correct() // Count walls label nWalls = sumPatchSize(patchIDs_); - List<TransferType> faceDist(nWalls); - labelList changedFaces(nWalls); + DynamicList<TransferType> faceDist(nWalls); + DynamicList<label> changedFaces(nWalls); setChangedFaces(patchIDs_, changedFaces, faceDist); diff --git a/src/meshTools/cellDist/patchWave/patchDataWave.H b/src/meshTools/cellDist/patchWave/patchDataWave.H index f7f79707e5746d12f43260f2b44ad96b1b85e345..764efcd46b86145bd1b4b40cc3d5dd06dd8d5b50 100644 --- a/src/meshTools/cellDist/patchWave/patchDataWave.H +++ b/src/meshTools/cellDist/patchWave/patchDataWave.H @@ -115,8 +115,8 @@ private: void setChangedFaces ( const labelHashSet& patchIDs, - labelList&, - List<TransferType>& + DynamicList<label>& changedFaces, + DynamicList<TransferType>& faceDist ) const; //- Copy MeshWave values into *this diff --git a/src/meshTools/cellDist/patchWave/patchWave.C b/src/meshTools/cellDist/patchWave/patchWave.C index 6f07859038f7e965f8c90b7b6477b9a52d77d8db..deeb062d40757a08fa4876427a7411017b68c8db 100644 --- a/src/meshTools/cellDist/patchWave/patchWave.C +++ b/src/meshTools/cellDist/patchWave/patchWave.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,50 +36,49 @@ License void Foam::patchWave::setChangedFaces ( const labelHashSet& patchIDs, - labelList& changedFaces, - List<wallPoint>& faceDist + DynamicList<label>& changedFaces, + DynamicList<wallPoint>& faceDist ) const { const polyMesh& mesh = cellDistFuncs::mesh(); - label nChangedFaces = 0; - forAll(mesh.boundaryMesh(), patchi) { if (patchIDs.found(patchi)) { const polyPatch& patch = mesh.boundaryMesh()[patchi]; - forAll(patch.faceCentres(), patchFacei) - { - label meshFacei = patch.start() + patchFacei; - - changedFaces[nChangedFaces] = meshFacei; + const auto areaFraction(patch.areaFraction()); - faceDist[nChangedFaces] = - wallPoint - ( - patch.faceCentres()[patchFacei], - 0.0 - ); + const auto faceCentres(patch.faceCentres()); - nChangedFaces++; + forAll(faceCentres, patchFacei) + { + if + ( + !areaFraction + || (areaFraction()[patchFacei] > 0.5) // mostly wall + ) + { + changedFaces.append(patch.start() + patchFacei); + faceDist.append(wallPoint(faceCentres[patchFacei], 0.0)); + } } } } for (const label facei : sourceIDs_) { - changedFaces[nChangedFaces] = facei; + changedFaces.append(facei); - faceDist[nChangedFaces] = + faceDist.append + ( wallPoint ( mesh.faceCentres()[facei], 0.0 - ); - - nChangedFaces++; + ) + ); } } @@ -181,8 +181,8 @@ void Foam::patchWave::correct() label nPatch = sumPatchSize(patchIDs_) + sourceIDs_.size(); - List<wallPoint> faceDist(nPatch); - labelList changedFaces(nPatch); + DynamicList<wallPoint> faceDist(nPatch); + DynamicList<label> changedFaces(nPatch); // Set to faceDist information to facecentre on walls. setChangedFaces(patchIDs_, changedFaces, faceDist); diff --git a/src/meshTools/cellDist/patchWave/patchWave.H b/src/meshTools/cellDist/patchWave/patchWave.H index d7259d78a184077df2c58d8a55c5d72962aa855f..a99f05aa564fdb77afcb7817319ffc32afaca8e6 100644 --- a/src/meshTools/cellDist/patchWave/patchWave.H +++ b/src/meshTools/cellDist/patchWave/patchWave.H @@ -89,8 +89,8 @@ class patchWave void setChangedFaces ( const labelHashSet& patchIDs, - labelList& changedFaces, - List<wallPoint>& changedInfo + DynamicList<label>& changedFaces, + DynamicList<wallPoint>& faceDist ) const; //- Copy MeshWave cell values. Return number of illegal/unset diff --git a/src/meshTools/cellQuality/cellQuality.C b/src/meshTools/cellQuality/cellQuality.C index 2ee6a6c4c3d63c46af240a9917b128e8dba711e3..fc5f7df520000a8a89f880e3ea75b9b3af55c1e1 100644 --- a/src/meshTools/cellQuality/cellQuality.C +++ b/src/meshTools/cellQuality/cellQuality.C @@ -41,15 +41,8 @@ Foam::cellQuality::cellQuality(const polyMesh& mesh) Foam::tmp<Foam::scalarField> Foam::cellQuality::nonOrthogonality() const { - tmp<scalarField> tresult - ( - new scalarField - ( - mesh_.nCells(), 0.0 - ) - ); - - scalarField& result = tresult.ref(); + auto tresult = tmp<scalarField>::New(mesh_.nCells(), Zero); + auto& result = tresult.ref(); scalarField sumArea(mesh_.nCells(), Zero); @@ -103,14 +96,8 @@ Foam::tmp<Foam::scalarField> Foam::cellQuality::nonOrthogonality() const Foam::tmp<Foam::scalarField> Foam::cellQuality::skewness() const { - tmp<scalarField> tresult - ( - new scalarField - ( - mesh_.nCells(), 0.0 - ) - ); - scalarField& result = tresult.ref(); + auto tresult = tmp<scalarField>::New(mesh_.nCells(), Zero); + auto& result = tresult.ref(); scalarField sumArea(mesh_.nCells(), Zero); @@ -182,15 +169,8 @@ Foam::tmp<Foam::scalarField> Foam::cellQuality::skewness() const Foam::tmp<Foam::scalarField> Foam::cellQuality::faceNonOrthogonality() const { - tmp<scalarField> tresult - ( - new scalarField - ( - mesh_.nFaces(), 0.0 - ) - ); - scalarField& result = tresult.ref(); - + auto tresult = tmp<scalarField>::New(mesh_.nFaces(), Zero); + auto& result = tresult.ref(); const vectorField& centres = mesh_.cellCentres(); const vectorField& areas = mesh_.faceAreas(); @@ -242,15 +222,8 @@ Foam::tmp<Foam::scalarField> Foam::cellQuality::faceNonOrthogonality() const Foam::tmp<Foam::scalarField> Foam::cellQuality::faceSkewness() const { - tmp<scalarField> tresult - ( - new scalarField - ( - mesh_.nFaces(), 0.0 - ) - ); - scalarField& result = tresult.ref(); - + auto tresult = tmp<scalarField>::New(mesh_.nFaces(), Zero); + auto& result = tresult.ref(); const vectorField& cellCtrs = mesh_.cellCentres(); const vectorField& faceCtrs = mesh_.faceCentres(); diff --git a/src/meshTools/coordSet/writers/common/coordSetWriterTemplates.C b/src/meshTools/coordSet/writers/common/coordSetWriterTemplates.C index 28e8f08de59e1a182e9524c7c1d59ba81e730ead..d1ea1d8564e64c04fc7001b0a9c76382a11a8b54 100644 --- a/src/meshTools/coordSet/writers/common/coordSetWriterTemplates.C +++ b/src/meshTools/coordSet/writers/common/coordSetWriterTemplates.C @@ -105,8 +105,8 @@ Foam::tmp<Foam::Field<Type>> Foam::coordSetWriter::adjustFieldTemplate // Rotate fields (vector and non-spherical tensors) if ( - (pTraits<Type>::rank != 0 && pTraits<Type>::nComponents > 1) - && geometryTransform_.valid() + (is_vectorspace<Type>::value && pTraits<Type>::nComponents > 1) + && geometryTransform_.good() && !geometryTransform_.R().is_identity() ) { diff --git a/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterCollated.C b/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterCollated.C index 3e378c2933c88909de956a47b6a132f2c0e05cd8..1a1ff7ae2c5c4ef206c1afd159667f76167711d5 100644 --- a/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterCollated.C +++ b/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterCollated.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022-2023 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -92,9 +92,9 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated merge(); { - if (!isDir(outputFile.path())) + if (!Foam::isDir(outputFile.path())) { - mkDir(outputFile.path()); + Foam::mkDir(outputFile.path()); } const bool stateChanged = @@ -131,12 +131,12 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated ); // As per mkdir -p "data/00000000" - mkDir(dataDir); + Foam::mkDir(dataDir); const fileName geomFile(baseDir/geometryName); - if (!exists(geomFile)) + if (!Foam::exists(geomFile)) { if (verbose_) { @@ -151,6 +151,7 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated caseOpts_.format() ); + osGeom.beginGeometry(); writeGeometry(osGeom, elemOutput); } @@ -176,7 +177,12 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated // Update case file if (stateChanged) { - OFstream osCase(outputFile, IOstreamOption::ASCII); + OFstream osCase + ( + IOstreamOption::ATOMIC, + outputFile, + IOstreamOption::ASCII + ); ensightCase::setTimeFormat(osCase, caseOpts_); // time-format if (verbose_) @@ -222,7 +228,7 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated { const dictionary& subDict = dEntry.dict(); - const word varType(subDict.get<word>("type")); + const string varType(subDict.get<string>("type")); const word varName ( subDict.getOrDefault<word> @@ -233,7 +239,7 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeCollated ); osCase - << varType + << varType.c_str() << ( true // this->isPointData() diff --git a/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterUncollated.C b/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterUncollated.C index f4a56dcce842811bd05c9d9e6a91cfcc0c2285b1..d133314e9676d5e233af4f14e2c8a4c6148d69f2 100644 --- a/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterUncollated.C +++ b/src/meshTools/coordSet/writers/ensight/ensightCoordSetWriterUncollated.C @@ -91,9 +91,9 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeUncollated merge(); { - if (!isDir(outputFile.path())) + if (!Foam::isDir(outputFile.path())) { - mkDir(outputFile.path()); + Foam::mkDir(outputFile.path()); } // Two-argument form for path-name to avoid validating base-dir @@ -110,6 +110,7 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeUncollated caseOpts_.format() ); + osGeom.beginGeometry(); writeGeometry(osGeom, elemOutput); // Write field (serial only) @@ -118,7 +119,12 @@ Foam::fileName Foam::coordSetWriters::ensightWriter::writeUncollated // Update case file { - OFstream osCase(outputFile, IOstreamOption::ASCII); + OFstream osCase + ( + IOstreamOption::ATOMIC, + outputFile, + IOstreamOption::ASCII + ); ensightCase::setTimeFormat(osCase, caseOpts_); // time-format osCase diff --git a/src/meshTools/coordSet/writers/vtk/foamVtkCoordSetWriter.C b/src/meshTools/coordSet/writers/vtk/foamVtkCoordSetWriter.C index 0321875fb331706cc007aa5123d567e6accc393d..294987fb2e12d5873f00fd3384ad09cdd90fe770 100644 --- a/src/meshTools/coordSet/writers/vtk/foamVtkCoordSetWriter.C +++ b/src/meshTools/coordSet/writers/vtk/foamVtkCoordSetWriter.C @@ -244,7 +244,7 @@ void Foam::vtk::coordSetWriter::writeVerts() /// label off = /// ( - /// parallel_ ? globalIndex(nLocalConns).localStart() : 0 + /// parallel_ ? globalIndex::calcOffset(nLocalConns) : 0 /// ); auto iter = vertOffsets.begin(); @@ -356,7 +356,7 @@ void Foam::vtk::coordSetWriter::writeLines() /// label off = /// ( - /// parallel_ ? globalIndex(nLocalConns).localStart() : 0 + /// parallel_ ? globalIndex::calcOffset(nLocalConns) : 0 /// ); auto iter = vertOffsets.begin(); @@ -539,7 +539,7 @@ bool Foam::vtk::coordSetWriter::writeGeometry() //const label pointOffset = //( - // parallel_ ? globalIndex(nLocalPoints_).localStart() : 0 + // parallel_ ? globalIndex::calcOffset(nLocalPoints_) : 0 //); if (legacy()) diff --git a/src/meshTools/edgeMesh/edgeFormats/edgeMesh/edgeMeshFormat.H b/src/meshTools/edgeMesh/edgeFormats/edgeMesh/edgeMeshFormat.H index 8380c6f92745c00edb8f99694e3848e8b9ebdc19..8636c4526c90dccab722f57840dd16564fedf163 100644 --- a/src/meshTools/edgeMesh/edgeFormats/edgeMesh/edgeMeshFormat.H +++ b/src/meshTools/edgeMesh/edgeFormats/edgeMesh/edgeMeshFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,8 +38,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef edgeMeshFormat_H -#define edgeMeshFormat_H +#ifndef Foam_edgeMeshFormat_H +#define Foam_edgeMeshFormat_H #include "edgeMesh.H" #include "Ostream.H" @@ -60,15 +60,6 @@ class edgeMeshFormat : public edgeMesh { - // Private Member Functions - - //- No copy construct - edgeMeshFormat(const edgeMeshFormat&) = delete; - - //- No copy assignment - void operator=(const edgeMeshFormat&) = delete; - - protected: // Protected Member Functions @@ -87,7 +78,7 @@ public: // Constructors //- Construct from file name - explicit edgeMeshFormat(const fileName&); + explicit edgeMeshFormat(const fileName& filename); // Selectors @@ -134,15 +125,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& name); + virtual bool read(const fileName& filename) override; + + //- Write edge mesh to file + virtual void write + ( + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, *this, streamOpt, options); + } //- Write edge mesh to file virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, *this, streamOpt, options); } diff --git a/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.C b/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.C index 9940ccf093cfff6617faa18abe939b5021718a48..916d898cd65dbc23aff2556e19184d2c3a721068 100644 --- a/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.C +++ b/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -165,15 +165,8 @@ bool Foam::fileFormats::NASedgeFormat::read // transfer to normal lists storedPoints().transfer(dynPoints); - pointId.shrink(); - dynEdges.shrink(); - // Build inverse mapping (NASTRAN pointId -> index) - Map<label> mapPointId(2*pointId.size()); - forAll(pointId, i) - { - mapPointId.insert(pointId[i], i); - } + Map<label> mapPointId(invertToMap(pointId)); // note which points were really used and which can be culled bitSet usedPoints(points().size()); diff --git a/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.H b/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.H index e86c5b2c14808fb536b99af83481957b7de3cc26..fa8abef3ab1b3b193f245d5f4be4b5609a4fe512 100644 --- a/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.H +++ b/src/meshTools/edgeMesh/edgeFormats/nastran/NASedgeFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -42,8 +42,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef NASedgeFormat_H -#define NASedgeFormat_H +#ifndef Foam_NASedgeFormat_H +#define Foam_NASedgeFormat_H #include "edgeMesh.H" #include "NASCore.H" @@ -64,14 +64,6 @@ class NASedgeFormat public edgeMesh, public NASCore { - // Private Member Functions - - //- No copy construct - NASedgeFormat(const NASedgeFormat&) = delete; - - //- No copy assignment - void operator=(const NASedgeFormat&) = delete; - public: // Constructors @@ -96,7 +88,7 @@ public: // Member Functions //- Read from a file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; }; diff --git a/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.C b/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.C index c349c566cba121d3bb61cb70a7074b8641bbc0eb..0c771c74e5e08ad5d5d73ce6bbfd2662d5f958fb 100644 --- a/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.C +++ b/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.C @@ -120,7 +120,7 @@ bool Foam::fileFormats::OBJedgeFormat::read(const fileName& filename) line += this->getLineNoComment(is); } - const SubStrings<string> tokens = stringOps::splitSpace(line); + const auto tokens = stringOps::splitSpace(line); // Require command and some arguments if (tokens.size() < 2) diff --git a/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.H b/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.H index 331eaed156679dd2bbc13747761bfc4a6fd9bdb0..69e295254c8d10b8dc3c4aae98d8def113623399 100644 --- a/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.H +++ b/src/meshTools/edgeMesh/edgeFormats/obj/OBJedgeFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef OBJedgeFormat_H -#define OBJedgeFormat_H +#ifndef Foam_OBJedgeFormat_H +#define Foam_OBJedgeFormat_H #include "edgeMesh.H" #include "Fstream.H" @@ -59,21 +59,12 @@ class OBJedgeFormat : public edgeMesh { - // Private Member Functions - - //- No copy construct - OBJedgeFormat(const OBJedgeFormat&) = delete; - - //- No copy assignment - void operator=(const OBJedgeFormat&) = delete; - - public: // Constructors //- Construct from file name - OBJedgeFormat(const fileName&); + explicit OBJedgeFormat(const fileName& filename); // Selectors @@ -89,9 +80,9 @@ public: virtual ~OBJedgeFormat() = default; - // Member Functions + // Static Functions - //- Write edge mesh to file + //- Write edge mesh to file in OBJ format static void write ( const fileName& filename, @@ -104,15 +95,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& name); + virtual bool read(const fileName& filename) override; + + //- Write to file + virtual void write + ( + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, *this, streamOpt, options); + } //- Write to file virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, *this, streamOpt, options); } diff --git a/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.C b/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.C index 9dda97df8b1ead76c86c36d1223f6575cee45ada..bab726a6b397cd70896a474dbebc8ad4472609e7 100644 --- a/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.C +++ b/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -128,11 +128,7 @@ bool Foam::fileFormats::STARCDedgeFormat::read ); // Build inverse mapping (STARCD pointId -> index) - Map<label> mapPointId(2*pointId.size()); - forAll(pointId, i) - { - mapPointId.insert(pointId[i], i); - } + Map<label> mapPointId(invertToMap(pointId)); pointId.clear(); // Note which points were really used and which can be culled diff --git a/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.H b/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.H index 2a522a23a37e1c0af6a02b8892861422b43fb5e6..9b2d0167ab1394ad2e60e46f8ce927a69b1799d2 100644 --- a/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.H +++ b/src/meshTools/edgeMesh/edgeFormats/starcd/STARCDedgeFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,8 +41,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef STARCDedgeFormat_H -#define STARCDedgeFormat_H +#ifndef Foam_STARCDedgeFormat_H +#define Foam_STARCDedgeFormat_H #include "edgeMesh.H" #include "STARCDCore.H" @@ -75,14 +75,6 @@ class STARCDedgeFormat label starCellId = 1 // 1-based cellId ); - - //- No copy construct - STARCDedgeFormat(const STARCDedgeFormat&) = delete; - - //- No copy assignment - void operator=(const STARCDedgeFormat&) = delete; - - protected: // Protected Member Functions @@ -118,7 +110,7 @@ public: // Static Functions - //- Write edge mesh to file + //- Write edge mesh to file in STARCD format static void write ( const fileName& filename, @@ -131,15 +123,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& name); + virtual bool read(const fileName& name) override; + + //- Write to file + virtual void write + ( + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, *this, streamOpt, options); + } //- Write to file virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, *this, streamOpt, options); } diff --git a/src/meshTools/edgeMesh/edgeFormats/vtk/VTKedgeFormat.H b/src/meshTools/edgeMesh/edgeFormats/vtk/VTKedgeFormat.H index 3f7ac6ec83faae5017527ff9d53deacf3c18a443..438c425dc760a9167a8da24b607f3b25701f6274 100644 --- a/src/meshTools/edgeMesh/edgeFormats/vtk/VTKedgeFormat.H +++ b/src/meshTools/edgeMesh/edgeFormats/vtk/VTKedgeFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef VTKedgeFormat_H -#define VTKedgeFormat_H +#ifndef Foam_VTKedgeFormat_H +#define Foam_VTKedgeFormat_H #include "edgeMesh.H" @@ -78,7 +78,7 @@ public: // Static Functions - //- Write edge mesh to file + //- Write edge mesh to file in legacy VTK format static void write ( const fileName& filename, @@ -91,7 +91,7 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& name); + virtual bool read(const fileName& filename) override; //- Write to file virtual void write @@ -99,7 +99,19 @@ public: const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, *this, streamOpt, options); + } + + //- Write to file + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, *this, streamOpt, options); } diff --git a/src/meshTools/edgeMesh/edgeMesh.H b/src/meshTools/edgeMesh/edgeMesh.H index 57f066ea35fc367c55e4c25641c71b5a7f41b802..95397c379aeab0afbbcb08a6d9f5ba67baed644b 100644 --- a/src/meshTools/edgeMesh/edgeMesh.H +++ b/src/meshTools/edgeMesh/edgeMesh.H @@ -41,8 +41,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef edgeMesh_H -#define edgeMesh_H +#ifndef Foam_edgeMesh_H +#define Foam_edgeMesh_H #include "pointField.H" #include "edgeList.H" diff --git a/src/meshTools/edgeMesh/edgeMeshTools/edgeMeshFeatureProximity.C b/src/meshTools/edgeMesh/edgeMeshTools/edgeMeshFeatureProximity.C index fbb851e4b377f14d4509a0b7e5079f7fea4b3b9a..6458779c7f6321c3cbe210ff45e51ebc18d7d10c 100644 --- a/src/meshTools/edgeMesh/edgeMeshTools/edgeMeshFeatureProximity.C +++ b/src/meshTools/edgeMesh/edgeMeshTools/edgeMeshFeatureProximity.C @@ -143,8 +143,8 @@ Foam::tmp<Foam::scalarField> Foam::edgeMeshTools::featureProximity const scalar searchDistance ) { - tmp<scalarField> tfld(new scalarField(surf.size(), searchDistance)); - scalarField& featureProximity = tfld.ref(); + auto tfld = tmp<scalarField>::New(surf.size(), searchDistance); + auto& featureProximity = tfld.ref(); Info<< "Extracting proximity of close feature points and " << "edges to the surface" << endl; diff --git a/src/meshTools/fields/pointPatchFields/uniformFixedValue/uniformFixedValuePointPatchField.H b/src/meshTools/fields/pointPatchFields/uniformFixedValue/uniformFixedValuePointPatchField.H index c98e567de39491eb6acb2a781956f842888d5a01..9cf2a5c27efc5136ceb572db716db072ce76cf78 100644 --- a/src/meshTools/fields/pointPatchFields/uniformFixedValue/uniformFixedValuePointPatchField.H +++ b/src/meshTools/fields/pointPatchFields/uniformFixedValue/uniformFixedValuePointPatchField.H @@ -130,18 +130,6 @@ public: const uniformFixedValuePointPatchField<Type>& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<Type>> clone() const - { - return autoPtr<pointPatchField<Type>> - ( - new uniformFixedValuePointPatchField<Type> - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference uniformFixedValuePointPatchField ( @@ -150,20 +138,19 @@ public: ); + //- Return a clone + virtual autoPtr<pointPatchField<Type>> clone() const + { + return pointPatchField<Type>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<Type>> clone ( const DimensionedField<Type, pointMesh>& iF ) const { - return autoPtr<pointPatchField<Type>> - ( - new uniformFixedValuePointPatchField<Type> - ( - *this, - iF - ) - ); + return pointPatchField<Type>::Clone(*this, iF); } diff --git a/src/meshTools/fields/volume/polyMeshFieldsFwd.H b/src/meshTools/fields/volume/polyMeshFieldsFwd.H index 448e43e0c9bd05b32a8e8831bd497742fa1b9ac8..1438b531ad6936e80486c68c408f579427897ac9 100644 --- a/src/meshTools/fields/volume/polyMeshFieldsFwd.H +++ b/src/meshTools/fields/volume/polyMeshFieldsFwd.H @@ -42,12 +42,25 @@ template<class Type, class GeoMesh> class DimensionedField; class polyGeoMesh; -typedef DimensionedField<scalar, polyGeoMesh> polyMeshScalarField; -typedef DimensionedField<vector, polyGeoMesh> polyMeshVectorField; -typedef DimensionedField<sphericalTensor, polyGeoMesh> +typedef + DimensionedField<scalar, polyGeoMesh> + polyMeshScalarField; + +typedef + DimensionedField<vector, polyGeoMesh> + polyMeshVectorField; + +typedef + DimensionedField<sphericalTensor, polyGeoMesh> polyMeshSphericalTensorField; -typedef DimensionedField<symmTensor, polyGeoMesh> polyMeshSymmTensorField; -typedef DimensionedField<tensor, polyGeoMesh> polyMeshTensorField; + +typedef + DimensionedField<symmTensor, polyGeoMesh> + polyMeshSymmTensorField; + +typedef + DimensionedField<tensor, polyGeoMesh> + polyMeshTensorField; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.C b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.C index e1b457edd05607462c877b3c5aa1b6201e3d67d7..26afc27e3a3b2175c8539e3d240119eb033ef695 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.C +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -86,6 +86,12 @@ Foam::mappedPatchBase::offsetModeNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // +void Foam::mappedPatchBase::updateMesh(PstreamBuffers& pBufs) +{ + clearOut(); +} + + Foam::autoPtr<Foam::fileName> Foam::mappedPatchBase::readDatabase ( const dictionary& dict @@ -1569,8 +1575,9 @@ Foam::mappedPatchBase::~mappedPatchBase() void Foam::mappedPatchBase::clearOut() { mapPtr_.reset(nullptr); - surfPtr_.reset(nullptr); AMIPtr_->upToDate(false); + + //Note: no need to clear out surface since not mesh related } @@ -1674,6 +1681,85 @@ const Foam::polyPatch& Foam::mappedPatchBase::samplePolyPatch() const } +bool Foam::mappedPatchBase::upToDate() const +{ + const polyMesh& thisMesh = patch_.boundaryMesh().mesh(); + + bool thisUpToDate = thisMesh.upToDatePoints(updateMeshTime()); + bool sampleUpToDate = + ( + sameWorld() + ? sampleMesh().upToDatePoints(updateSampleMeshTime()) + : true + ); + + + // Lambda to check for points on the patch being the same + auto checkPointMovement = [] + ( + const polyMesh& mesh, + const polyPatch& patch, + regIOobject& state + ) -> bool + { + bool upToDate = true; + const auto& oldPoints = mesh.oldPoints(); + const auto& points = mesh.points(); + + for (const label pointi : patch.meshPoints()) + { + const point& oldPt = oldPoints[pointi]; + const point& currentPt = points[pointi]; + + if (mag(oldPt - currentPt) > SMALL) + { + upToDate = false; + break; + } + } + + Pstream::reduceAnd(upToDate); + + if (upToDate) + { + state.setUpToDate(); + } + + return upToDate; + }; + + + if (!thisUpToDate && thisMesh.moving()) + { + // Moving (but not topoChanging mesh) : do more accurate check: + // compare actual patch point position + + thisUpToDate = checkPointMovement(thisMesh, patch_, updateMeshTime()); + } + + if + ( + !sampleUpToDate + && sampleMesh().moving() + && ( + mode_ == NEARESTPATCHFACE + || mode_ == NEARESTPATCHFACEAMI + || mode_ == NEARESTPATCHPOINT + ) + ) + { + sampleUpToDate = checkPointMovement + ( + sampleMesh(), + samplePolyPatch(), + updateSampleMeshTime() + ); + } + + return (thisUpToDate && sampleUpToDate); +} + + Foam::tmp<Foam::pointField> Foam::mappedPatchBase::samplePoints ( const pointField& fc diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.H b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.H index f2a90f90917877bec69a129dab6d12cad1e51472..b0d0d1fcab784ef453983c3bea67f725db2d175a 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.H +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBase.H @@ -301,6 +301,32 @@ protected: // Protected Member Functions + // polyPatch callbacks + + //- Initialise the calculation of the patch geometry + virtual void initGeometry(PstreamBuffers&) + {} + + //- Calculate the patch geometry + virtual void calcGeometry(PstreamBuffers&) + {} + + //- Initialise the patches for moving points + virtual void initMovePoints(PstreamBuffers&, const pointField&) + {} + + //- Correct patches after moving points + virtual void movePoints(PstreamBuffers&, const pointField&) + {} + + //- Initialise the update of the patch topology + virtual void initUpdateMesh(PstreamBuffers&) + {} + + //- Update of the patch topology + virtual void updateMesh(PstreamBuffers&); + + //- Add a world-world connection bool addWorldConnection(); @@ -532,7 +558,7 @@ public: //- Sample mesh upate time inline uniformDimensionedScalarField& updateMeshTime() const; - inline bool upToDate() const; + bool upToDate() const; //- Return reference to the parallel distribution map inline const mapDistribute& map() const; diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseI.H b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseI.H index bdb2732b34d10bf96f21683e829134f0a4841fed..d4becd2851c1f3d0c487d25033c85df73879fb97 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseI.H +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseI.H @@ -255,25 +255,6 @@ Foam::mappedPatchBase::updateMeshTime() const } -inline bool Foam::mappedPatchBase::upToDate() const -{ - const polyMesh& thisMesh = patch_.boundaryMesh().mesh(); - - if (sameWorld()) - { - return - sampleMesh().upToDatePoints(updateSampleMeshTime()) - && thisMesh.upToDatePoints(updateMeshTime()); - } - else - { - // If not the same world we do not know what the other side is doing - // so only check our local side - return thisMesh.upToDatePoints(updateMeshTime()); - } -} - - inline const Foam::mapDistribute& Foam::mappedPatchBase::map() const { if (!upToDate()) diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseTemplates.C b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseTemplates.C index 924afa2b5a84dbe5c0a99823766970f3fbb8c1b3..c7fc110b1191906d42ce5b74a355ca7079a09244 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseTemplates.C +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPatchBaseTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -281,9 +281,7 @@ bool Foam::mappedPatchBase::constructIOField objectRegistry& obr ) { - const word tag("List<" + word(pTraits<Type>::typeName) + '>'); - - if (tok.isCompound(tag)) + if (tok.isCompound<List<Type>>()) { auto* fldPtr = obr.getObjectPtr<IOField<Type>>(name); if (!fldPtr) @@ -300,7 +298,7 @@ bool Foam::mappedPatchBase::constructIOField ), Foam::zero{} ); - objectRegistry::store(fldPtr); + regIOobject::store(fldPtr); } fldPtr->transfer @@ -340,7 +338,7 @@ void Foam::mappedPatchBase::storeField ), Foam::zero{} ); - objectRegistry::store(fldPtr); + regIOobject::store(fldPtr); } *fldPtr = values; diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPolyPatch.C b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPolyPatch.C index 76d7f2bb827b8d7c3232b44f475bc5b785d72cb2..79ccb0a79bd465175ddb4cb7072028087df9bc0c 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedPolyPatch.C +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedPolyPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -169,9 +169,7 @@ Foam::mappedPolyPatch::mappedPolyPatch // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::mappedPolyPatch::~mappedPolyPatch() -{ - mappedPatchBase::clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -179,13 +177,14 @@ Foam::mappedPolyPatch::~mappedPolyPatch() void Foam::mappedPolyPatch::initGeometry(PstreamBuffers& pBufs) { polyPatch::initGeometry(pBufs); + mappedPatchBase::initGeometry(pBufs); } void Foam::mappedPolyPatch::calcGeometry(PstreamBuffers& pBufs) { polyPatch::calcGeometry(pBufs); - mappedPatchBase::clearOut(); + mappedPatchBase::calcGeometry(pBufs); } @@ -196,6 +195,7 @@ void Foam::mappedPolyPatch::initMovePoints ) { polyPatch::initMovePoints(pBufs, p); + mappedPatchBase::initMovePoints(pBufs, p); } @@ -206,20 +206,21 @@ void Foam::mappedPolyPatch::movePoints ) { polyPatch::movePoints(pBufs, p); - mappedPatchBase::clearOut(); + mappedPatchBase::movePoints(pBufs, p); } void Foam::mappedPolyPatch::initUpdateMesh(PstreamBuffers& pBufs) { polyPatch::initUpdateMesh(pBufs); + mappedPatchBase::initUpdateMesh(pBufs); } void Foam::mappedPolyPatch::updateMesh(PstreamBuffers& pBufs) { polyPatch::updateMesh(pBufs); - mappedPatchBase::clearOut(); + mappedPatchBase::updateMesh(pBufs); } diff --git a/src/meshTools/mappedPatches/mappedPolyPatch/mappedWallPolyPatch.C b/src/meshTools/mappedPatches/mappedPolyPatch/mappedWallPolyPatch.C index 759e07aaa13e4fcd00581a419d18f11077f87a92..223bfc0aeec7473015858a287a52a3ce44e3dd74 100644 --- a/src/meshTools/mappedPatches/mappedPolyPatch/mappedWallPolyPatch.C +++ b/src/meshTools/mappedPatches/mappedPolyPatch/mappedWallPolyPatch.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2013 OpenFOAM Foundation - Copyright (C) 2021-2023 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -175,9 +175,7 @@ Foam::mappedWallPolyPatch::mappedWallPolyPatch // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::mappedWallPolyPatch::~mappedWallPolyPatch() -{ - mappedPatchBase::clearOut(); -} +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -191,7 +189,7 @@ void Foam::mappedWallPolyPatch::initGeometry(PstreamBuffers& pBufs) void Foam::mappedWallPolyPatch::calcGeometry(PstreamBuffers& pBufs) { wallPolyPatch::calcGeometry(pBufs); - mappedPatchBase::clearOut(); + mappedPatchBase::calcGeometry(pBufs); } @@ -202,6 +200,7 @@ void Foam::mappedWallPolyPatch::initMovePoints ) { wallPolyPatch::initMovePoints(pBufs, p); + mappedPatchBase::initMovePoints(pBufs, p); } @@ -212,20 +211,21 @@ void Foam::mappedWallPolyPatch::movePoints ) { wallPolyPatch::movePoints(pBufs, p); - mappedPatchBase::clearOut(); + mappedPatchBase::movePoints(pBufs, p); } void Foam::mappedWallPolyPatch::initUpdateMesh(PstreamBuffers& pBufs) { wallPolyPatch::initUpdateMesh(pBufs); + mappedPatchBase::initUpdateMesh(pBufs); } void Foam::mappedWallPolyPatch::updateMesh(PstreamBuffers& pBufs) { wallPolyPatch::updateMesh(pBufs); - mappedPatchBase::clearOut(); + mappedPatchBase::updateMesh(pBufs); } diff --git a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/distributedDILUPreconditioner.C b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/distributedDILUPreconditioner.C index 0128fa3c6ae46cb0823bc0554f5604ab0452ff91..2759e5dafa9dadd87e2e409dfa3cd3c8c798071d 100644 --- a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/distributedDILUPreconditioner.C +++ b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/distributedDILUPreconditioner.C @@ -189,7 +189,7 @@ void Foam::distributedDILUPreconditioner::receive for (const label inti : selectedInterfaces) { const auto& intf = interfaces[inti].interface(); - const auto* ppp = isA<const processorLduInterface>(intf); + const auto* ppp = isA<processorLduInterface>(intf); auto& recvBuf = recvBufs_[inti]; recvBuf.resize_nocopy(interfaceBouCoeffs[inti].size()); @@ -221,7 +221,7 @@ void Foam::distributedDILUPreconditioner::send for (const label inti : selectedInterfaces) { const auto& intf = interfaces[inti].interface(); - const auto* ppp = isA<const processorLduInterface>(intf); + const auto* ppp = isA<processorLduInterface>(intf); const auto& faceCells = intf.faceCells(); auto& sendBuf = sendBufs_[inti]; @@ -581,7 +581,7 @@ Foam::distributedDILUPreconditioner::distributedDILUPreconditioner if (interfaces.set(inti)) { const auto& intf = interfaces[inti].interface(); - const auto* ppp = isA<const processorLduInterface>(intf); + const auto* ppp = isA<processorLduInterface>(intf); if (ppp) { const label nbrColour = procColours[ppp->neighbProcNo()]; @@ -603,11 +603,11 @@ Foam::distributedDILUPreconditioner::distributedDILUPreconditioner << endl; } } - else //if (isA<const cyclicAMILduInterface>(intf)) + else //if (isA<cyclicAMILduInterface>(intf)) { haveGlobalCoupled = true; - const auto* AMIpp = isA<const cyclicAMILduInterface>(intf); + const auto* AMIpp = isA<cyclicAMILduInterface>(intf); if (AMIpp) { //const auto& AMI = @@ -681,12 +681,12 @@ Foam::distributedDILUPreconditioner::distributedDILUPreconditioner const auto& intf = interfaces[inti].interface(); label nbrInti = -1; - const auto* AMIpp = isA<const cyclicAMILduInterface>(intf); + const auto* AMIpp = isA<cyclicAMILduInterface>(intf); if (AMIpp) { nbrInti = AMIpp->neighbPatchID(); } - const auto* cycpp = isA<const cyclicLduInterface>(intf); + const auto* cycpp = isA<cyclicLduInterface>(intf); if (cycpp) { nbrInti = cycpp->neighbPatchID(); diff --git a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.C b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.C index b852dd5c1034f3fbe1ff624c1e4b2ee3559e1506..9406b83b0f72bc57b9695bb4b59639889fe0a08f 100644 --- a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.C +++ b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.C @@ -149,12 +149,12 @@ Foam::label Foam::processorColour::colour // mesh.time().timeName(), // mesh, // IOobject::NO_READ, - // IOobject::AUTO_WRITE, - // false + // IOobject::NO_WRITE, + // IOobject::NO_REGISTER // ), // mesh, // dimensionedScalar(dimless, procColour[Pstream::myProcNo()]), - // zeroGradientFvPatchScalarField::typeName + // fvPatchFieldBase::zeroGradientType() // ); // volColour.write(); //} @@ -279,7 +279,7 @@ Foam::label Foam::processorColour::cellColour if ( patches.set(inti) - && !isA<const processorLduInterface>(patches[inti]) + && !isA<processorLduInterface>(patches[inti]) ) { // 'global' interface. Seed faceCells with patch index @@ -330,7 +330,7 @@ Foam::label Foam::processorColour::cellColour Foam::processorColour::processorColour(const lduMesh& mesh) : - MeshObject<lduMesh, Foam::MoveableMeshObject, processorColour>(mesh) + MeshObject_type(mesh) { nColours_ = colour(mesh, *this); } @@ -340,23 +340,21 @@ Foam::processorColour::processorColour(const lduMesh& mesh) const Foam::processorColour& Foam::processorColour::New(const lduMesh& mesh) { - const processorColour* ptr = - mesh.thisDb().objectRegistry::template cfindObject<processorColour> + auto* ptr = + mesh.thisDb().objectRegistry::template getObjectPtr<processorColour> ( processorColour::typeName ); - if (ptr) + if (!ptr) { - return *ptr; - } - - processorColour* objectPtr = new processorColour(mesh); + ptr = new processorColour(mesh); - //regIOobject::store(static_cast<MoveableMeshObject<lduMesh>*>(objectPtr)); - regIOobject::store(objectPtr); + //regIOobject::store(static_cast<MoveableMeshObject<lduMesh>*>(ptr)); + regIOobject::store(ptr); + } - return *objectPtr; + return *ptr; } diff --git a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.H b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.H index e4fe4857cae1ad66ac70385ea4e95d4817e393e7..b7b85d70af118ba29379ee838879ee27658e0963 100644 --- a/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.H +++ b/src/meshTools/matrices/lduMatrix/preconditioners/distributedDILUPreconditioner/processorColour.H @@ -58,6 +58,25 @@ class processorColour public MeshObject<lduMesh, MoveableMeshObject, processorColour>, public labelList { + // Private Typedefs + + typedef MeshObject + < + lduMesh, + MoveableMeshObject, + processorColour + > MeshObject_type; + + + // Private Member Functions + + //- No copy construct + processorColour(const processorColour&) = delete; + + //- No copy assignment + void operator=(const processorColour&) = delete; + + protected: // Protected data @@ -75,16 +94,6 @@ protected: labelList& cellColour ); - -private: - - //- No copy construct - processorColour(const processorColour&) = delete; - - //- No copy assignment - void operator=(const processorColour&) = delete; - - public: //- Runtime type information @@ -94,7 +103,7 @@ public: // Constructors //- Construct given mesh - processorColour(const lduMesh& mesh); + explicit processorColour(const lduMesh& mesh); // Selectors diff --git a/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.C b/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.C index fe6fe7502edd081b387bfcedc0ae984c55be7c73..22b1bffc6b627b202959fe55a04dd7ae99dc02d6 100644 --- a/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.C +++ b/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.C @@ -35,21 +35,4 @@ namespace Foam } -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::meshSearchFACE_CENTRE_TRISMeshObject::meshSearchFACE_CENTRE_TRISMeshObject -( - const polyMesh& mesh -) -: - MeshObject - < - polyMesh, - Foam::GeometricMeshObject, - meshSearchFACE_CENTRE_TRISMeshObject - >(mesh), - meshSearch(mesh, polyMesh::FACE_CENTRE_TRIS) -{} - - // ************************************************************************* // diff --git a/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.H b/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.H index 1b80305ba8f11522a1cb1c0838d1b93132c3aa13..bdeb3e46374bb4f5c0be31ea367c896ae64a73d6 100644 --- a/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.H +++ b/src/meshTools/meshSearch/meshSearchFACE_CENTRE_TRISMeshObject.H @@ -59,6 +59,14 @@ class meshSearchFACE_CENTRE_TRISMeshObject >, public meshSearch { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + GeometricMeshObject, + meshSearchFACE_CENTRE_TRISMeshObject + > MeshObject_type; public: @@ -68,8 +76,13 @@ public: // Constructors - //- Constructor given polyMesh - explicit meshSearchFACE_CENTRE_TRISMeshObject(const polyMesh& mesh); + //- Construct given polyMesh + explicit meshSearchFACE_CENTRE_TRISMeshObject(const polyMesh& mesh) + : + MeshObject_type(mesh), + meshSearch(mesh, polyMesh::FACE_CENTRE_TRIS) + {} + //- Destructor virtual ~meshSearchFACE_CENTRE_TRISMeshObject() = default; diff --git a/src/meshTools/meshSearch/meshSearchMeshObject.C b/src/meshTools/meshSearch/meshSearchMeshObject.C index 0782d9aaa0b914e116c59049c6395f990369c7e6..e979ffc142626505b8b6743894f7af76e832296d 100644 --- a/src/meshTools/meshSearch/meshSearchMeshObject.C +++ b/src/meshTools/meshSearch/meshSearchMeshObject.C @@ -35,13 +35,4 @@ namespace Foam } -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::meshSearchMeshObject::meshSearchMeshObject(const polyMesh& mesh) -: - MeshObject<polyMesh, Foam::GeometricMeshObject, meshSearchMeshObject>(mesh), - meshSearch(mesh) -{} - - // ************************************************************************* // diff --git a/src/meshTools/meshSearch/meshSearchMeshObject.H b/src/meshTools/meshSearch/meshSearchMeshObject.H index 81e3359ea950087f27960363d5a8035a9ec0092c..65b31a4ce242314ba8bf966e12023f3ee4cd3acf 100644 --- a/src/meshTools/meshSearch/meshSearchMeshObject.H +++ b/src/meshTools/meshSearch/meshSearchMeshObject.H @@ -54,6 +54,14 @@ class meshSearchMeshObject public MeshObject<polyMesh, GeometricMeshObject, meshSearchMeshObject>, public meshSearch { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + GeometricMeshObject, + meshSearchMeshObject + > MeshObject_type; public: @@ -63,8 +71,13 @@ public: // Constructors - //- Constructor given polyMesh - explicit meshSearchMeshObject(const polyMesh& mesh); + //- Construct given polyMesh + explicit meshSearchMeshObject(const polyMesh& mesh) + : + MeshObject_type(mesh), + meshSearch(mesh) + {} + //- Destructor virtual ~meshSearchMeshObject() = default; diff --git a/src/meshTools/momentOfInertia/momentOfInertia.C b/src/meshTools/momentOfInertia/momentOfInertia.C index 3ea48e847237bd3c0f614db89c1b2190397ccfff..ffb296a3a02e874d52fb349fd3166dd77d849539 100644 --- a/src/meshTools/momentOfInertia/momentOfInertia.C +++ b/src/meshTools/momentOfInertia/momentOfInertia.C @@ -354,9 +354,8 @@ Foam::tmp<Foam::tensorField> Foam::momentOfInertia::meshInertia const polyMesh& mesh ) { - tmp<tensorField> tTf = tmp<tensorField>(new tensorField(mesh.nCells())); - - tensorField& tf = tTf.ref(); + auto tTf = tmp<tensorField>::New(mesh.nCells()); + auto& tf = tTf.ref(); forAll(tf, cI) { diff --git a/src/meshTools/multiWorld/multiWorldConnectionsObject.C b/src/meshTools/multiWorld/multiWorldConnectionsObject.C index 0e5c9e14b3d4a2b9f069d8c8205aefe5c727ce70..caa05034311033daf93bf28f3ab78a446d49f24e 100644 --- a/src/meshTools/multiWorld/multiWorldConnectionsObject.C +++ b/src/meshTools/multiWorld/multiWorldConnectionsObject.C @@ -181,7 +181,7 @@ Foam::label Foam::multiWorldConnections::createCommunicator(const edge& worlds) Foam::multiWorldConnections::multiWorldConnections(const Time& runTime) : - MeshObjectType(runTime) + MeshObject_type(runTime) {} @@ -190,16 +190,10 @@ Foam::multiWorldConnections::multiWorldConnections(const Time& runTime) const Foam::multiWorldConnections& Foam::multiWorldConnections::New(const Time& runTime) { - return MeshObjectType::New(runTime); + return MeshObject_type::New(runTime); } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::multiWorldConnections::~multiWorldConnections() -{} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::multiWorldConnections::empty() const noexcept diff --git a/src/meshTools/multiWorld/multiWorldConnectionsObject.H b/src/meshTools/multiWorld/multiWorldConnectionsObject.H index d0c0bb7616cda260c44bc06dce2c2a6dd1000eda..5f69f2398e2326ada9f03c184c169d116818571d 100644 --- a/src/meshTools/multiWorld/multiWorldConnectionsObject.H +++ b/src/meshTools/multiWorld/multiWorldConnectionsObject.H @@ -69,7 +69,7 @@ class multiWorldConnections Time, TopologicalMeshObject, multiWorldConnections - > MeshObjectType; + > MeshObject_type; // Private Data @@ -111,7 +111,7 @@ public: //- Destructor - ~multiWorldConnections(); + ~multiWorldConnections() = default; // Member Functions diff --git a/src/meshTools/output/vtk/mesh/foamVtkInternalMeshWriter.C b/src/meshTools/output/vtk/mesh/foamVtkInternalMeshWriter.C index adae39e5609da16ef13c760b86320d628ee5615d..ea1601d0a428e8e161a94949eaeeef6d2e4a63e8 100644 --- a/src/meshTools/output/vtk/mesh/foamVtkInternalMeshWriter.C +++ b/src/meshTools/output/vtk/mesh/foamVtkInternalMeshWriter.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -262,7 +262,7 @@ void Foam::vtk::internalMeshWriter::writeCellsConnectivity // processor-local connectivity offsets const globalIndex procOffset ( - vertOffsets.empty() ? 0 : vertOffsets.last() + vertOffsets.empty() ? 0 : vertOffsets.back() ); vtk::writeListParallel(format_.ref(), vertOffsets, procOffset); @@ -431,17 +431,19 @@ void Foam::vtk::internalMeshWriter::writeCellsFaces const List<uint8_t>& cellTypes = vtuCells_.cellTypes(); const label nLocalCells = cellTypes.size(); - const globalIndex procOffset(faceLabels.size()); + // processor-local offsets for faceLabels + const label labelsOffset = + globalIndex::calcOffset(faceLabels.size()); labelList faceOffsetsRenumber; - if (faceOffsets.size()) // Or check procOffset.localSize() + if (faceOffsets.size()) // Or check faceLabels.size() { faceOffsetsRenumber = vtk::vtuSizing::copyFaceOffsetsXml ( faceOffsets, - procOffset.localStart() + labelsOffset ); } else @@ -567,7 +569,7 @@ bool Foam::vtk::internalMeshWriter::writeGeometry() // Include addPointCellLabels for the point offsets const label pointOffset = ( - parallel_ ? globalIndex(vtuCells_.nFieldPoints()).localStart() : 0 + parallel_ ? globalIndex::calcOffset(vtuCells_.nFieldPoints()) : 0 ); if (legacy()) @@ -670,13 +672,13 @@ void Foam::vtk::internalMeshWriter::writePointIDs() // Point offset for regular mesh points (without decomposed) const label pointOffset = ( - parallel_ ? globalIndex(vtuCells_.nPoints()).localStart() : 0 + parallel_ ? globalIndex::calcOffset(vtuCells_.nPoints()) : 0 ); // Cell offset for *regular* mesh cells (without decomposed) const label cellOffset = ( - parallel_ ? globalIndex(vtuCells_.nCells()).localStart() : 0 + parallel_ ? globalIndex::calcOffset(vtuCells_.nCells()) : 0 ); diff --git a/src/meshTools/output/vtk/patch/foamVtkPatchMeshWriter.C b/src/meshTools/output/vtk/patch/foamVtkPatchMeshWriter.C index fce8474d658ceb08ec9645efb34ec81367f6bf17..296050fc184f0c866f4e7a439123641c5494b78e 100644 --- a/src/meshTools/output/vtk/patch/foamVtkPatchMeshWriter.C +++ b/src/meshTools/output/vtk/patch/foamVtkPatchMeshWriter.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2023 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -87,7 +87,7 @@ void Foam::vtk::patchMeshWriter::writePoints() this->beginPoints(numberOfPoints_); - if (parallel_ ? Pstream::master() : true) + if (parallel_ ? UPstream::master() : true) { for (const label patchId : patchIDs_) { @@ -103,14 +103,14 @@ void Foam::vtk::patchMeshWriter::writePoints() // Patch Ids are identical across all processes const label nPatches = patchIDs_.size(); - if (Pstream::master()) + if (UPstream::master()) { pointField recv; // Receive each point field and write - for (const int subproci : Pstream::subProcs()) + for (const int subproci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); for (label i=0; i < nPatches; ++i) { @@ -125,8 +125,8 @@ void Foam::vtk::patchMeshWriter::writePoints() // Send each point field OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); for (const label patchId : patchIDs_) @@ -312,7 +312,7 @@ void Foam::vtk::patchMeshWriter::writePolys(const label pointOffset) // processor-local connectivity offsets label off = ( - parallel_ ? globalIndex(nLocalPolyConn_).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalPolyConn_) : 0 ); @@ -470,7 +470,7 @@ bool Foam::vtk::patchMeshWriter::writeGeometry() const label pointOffset = ( - parallel_ ? globalIndex(nLocalPoints_).localStart() : 0 + parallel_ ? globalIndex::calcOffset(nLocalPoints_) : 0 ); if (legacy()) @@ -523,7 +523,7 @@ void Foam::vtk::patchMeshWriter::writePatchIDs() this->beginDataArray<label>("patchID", nPolys); - if (parallel_ ? Pstream::master() : true) + if (parallel_ ? UPstream::master() : true) { for (const label patchId : patchIDs_) { @@ -533,14 +533,14 @@ void Foam::vtk::patchMeshWriter::writePatchIDs() if (parallel_) { - if (Pstream::master()) + if (UPstream::master()) { labelList recv; // Receive each pair - for (const int subproci : Pstream::subProcs()) + for (const int subproci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); fromProc >> recv; @@ -559,8 +559,8 @@ void Foam::vtk::patchMeshWriter::writePatchIDs() // Send OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); // Encode as [size, id] pairs @@ -595,7 +595,7 @@ bool Foam::vtk::patchMeshWriter::writeProcIDs() bool Foam::vtk::patchMeshWriter::writeNeighIDs() { - if (!Pstream::parRun()) + if (!UPstream::parRun()) { // Skip in non-parallel return false; @@ -626,7 +626,7 @@ bool Foam::vtk::patchMeshWriter::writeNeighIDs() bool good = false; - if (parallel_ ? Pstream::master() : true) + if (parallel_ ? UPstream::master() : true) { for (const label patchId : patchIDs_) { @@ -642,14 +642,14 @@ bool Foam::vtk::patchMeshWriter::writeNeighIDs() if (parallel_) { - if (Pstream::master()) + if (UPstream::master()) { labelList recv; // Receive each pair - for (const int subproci : Pstream::subProcs()) + for (const int subproci : UPstream::subProcs()) { - IPstream fromProc(Pstream::commsTypes::blocking, subproci); + IPstream fromProc(UPstream::commsTypes::scheduled, subproci); fromProc >> recv; @@ -668,8 +668,8 @@ bool Foam::vtk::patchMeshWriter::writeNeighIDs() // Send OPstream toProc ( - Pstream::commsTypes::blocking, - Pstream::masterNo() + UPstream::commsTypes::scheduled, + UPstream::masterNo() ); // Encode as [size, id] pairs diff --git a/src/meshTools/output/vtk/topoSet/foamVtkWriteCellSetFaces.C b/src/meshTools/output/vtk/topoSet/foamVtkWriteCellSetFaces.C index d5101225c37294a7c29d90ebd3b698a515b70161..8038f4b550e69c8ddf9a2fd522fadb1322f0615c 100644 --- a/src/meshTools/output/vtk/topoSet/foamVtkWriteCellSetFaces.C +++ b/src/meshTools/output/vtk/topoSet/foamVtkWriteCellSetFaces.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2019 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -112,7 +112,7 @@ bool Foam::vtk::writeCellSetFaces // processor-local cellID offset const label cellIdOffset = ( - writer.parallel() ? globalIndex(mesh.nCells()).localStart() : 0 + writer.parallel() ? globalIndex::calcOffset(mesh.nCells()) : 0 ); forAll(faceValues, facei) diff --git a/src/meshTools/output/vtk/topoSet/foamVtkWriteFaceSet.C b/src/meshTools/output/vtk/topoSet/foamVtkWriteFaceSet.C index 13e7293e475dbb6eabced31557295a5696232401..6254ce873fe825e904768bfaf1c5a68653f4daaf 100644 --- a/src/meshTools/output/vtk/topoSet/foamVtkWriteFaceSet.C +++ b/src/meshTools/output/vtk/topoSet/foamVtkWriteFaceSet.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2019 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -73,7 +73,7 @@ bool Foam::vtk::writeFaceSet // processor-local faceID offset const label faceIdOffset = ( - writer.parallel() ? globalIndex(mesh.nFaces()).localStart() : 0 + writer.parallel() ? globalIndex::calcOffset(mesh.nFaces()) : 0 ); if (faceIdOffset) diff --git a/src/meshTools/polyTopoChange/polyTopoChange.C b/src/meshTools/polyTopoChange/polyTopoChange.C index 9d63159f40c30e192f4e83ae5cf085db506627c6..ff2cc6f9846b25a5a110387f32550bf64c8f65fb 100644 --- a/src/meshTools/polyTopoChange/polyTopoChange.C +++ b/src/meshTools/polyTopoChange/polyTopoChange.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -202,11 +202,33 @@ void Foam::polyTopoChange::writeMeshStats(const polyMesh& mesh, Ostream& os) patchStarts[patchi] = patches[patchi].start(); } + const auto& czs = mesh.cellZones(); + labelList cellZoneSizes(czs.size(), 0); + for (const auto& cz : czs) + { + cellZoneSizes[cz.index()] = cz.size(); + } + const auto& fzs = mesh.faceZones(); + labelList faceZoneSizes(fzs.size(), 0); + for (const auto& fz : fzs) + { + faceZoneSizes[fz.index()] = fz.size(); + } + const auto& pzs = mesh.pointZones(); + labelList pointZoneSizes(pzs.size(), 0); + for (const auto& pz : pzs) + { + pointZoneSizes[pz.index()] = pz.size(); + } + os << " Points : " << mesh.nPoints() << nl << " Faces : " << mesh.nFaces() << nl << " Cells : " << mesh.nCells() << nl - << " PatchSizes : " << patchSizes << nl - << " PatchStarts : " << patchStarts << nl + << " PatchSizes : " << flatOutput(patchSizes) << nl + << " PatchStarts : " << flatOutput(patchStarts) << nl + << " cZoneSizes : " << flatOutput(cellZoneSizes) << nl + << " fZoneSizes : " << flatOutput(faceZoneSizes) << nl + << " pZoneSizes : " << flatOutput(pointZoneSizes) << nl << endl; } @@ -905,6 +927,13 @@ void Foam::polyTopoChange::reorderCompactFaces renumberKey(oldToNew, faceZone_); inplaceReorder(oldToNew, faceZoneFlip_); faceZoneFlip_.setCapacity(newSize); + if (faceAdditionalZones_.size()) + { + // Extend to number of faces so oldToNew can be used + faceAdditionalZones_.setSize(newSize); + inplaceReorder(oldToNew, faceAdditionalZones_); + //faceAdditionalZones_.setCapacity(newSize); + } } @@ -913,6 +942,7 @@ void Foam::polyTopoChange::shrink() points_.shrink(); pointMap_.shrink(); reversePointMap_.shrink(); + pointAdditionalZones_.shrink(); faces_.shrink(); region_.shrink(); @@ -920,10 +950,12 @@ void Foam::polyTopoChange::shrink() faceNeighbour_.shrink(); faceMap_.shrink(); reverseFaceMap_.shrink(); + faceAdditionalZones_.shrink(); cellMap_.shrink(); reverseCellMap_.shrink(); cellZone_.shrink(); + cellAdditionalZones_.shrink(); } @@ -1091,6 +1123,10 @@ void Foam::polyTopoChange::compact renumberKey(localPointMap, pointZone_); renumber(localPointMap, retiredPoints_); + if (pointAdditionalZones_.size()) + { + reorder(localPointMap, pointAdditionalZones_); + } // Use map to relabel face vertices forAll(faces_, facei) @@ -1191,6 +1227,11 @@ void Foam::polyTopoChange::compact reorder(localCellMap, cellZone_); cellZone_.setCapacity(newCelli); + if (cellAdditionalZones_.size()) + { + reorder(localCellMap, cellAdditionalZones_); + cellAdditionalZones_.setCapacity(newCelli); + } renumberKey(localCellMap, cellFromPoint_); renumberKey(localCellMap, cellFromEdge_); @@ -1224,6 +1265,14 @@ void Foam::polyTopoChange::compact std::swap(faceOwner_[facei], faceNeighbour_[facei]); flipFaceFlux_.flip(facei); faceZoneFlip_.flip(facei); + if (facei < faceAdditionalZones_.size()) + { + for (auto& zas : faceAdditionalZones_[facei]) + { + // Flip sign + zas = -zas; + } + } } } } @@ -1582,6 +1631,19 @@ void Foam::polyTopoChange::resetZones } nPoints[zonei]++; } + forAll(pointAdditionalZones_, pointi) + { + for (const label zonei : pointAdditionalZones_[pointi]) + { + if (zonei < 0 || zonei >= pointZones.size()) + { + FatalErrorInFunction + << "Illegal zoneID " << zonei << " for point " + << pointi << abort(FatalError); + } + nPoints[zonei]++; + } + } // Distribute points per zone @@ -1599,6 +1661,13 @@ void Foam::polyTopoChange::resetZones addressing[zonei][nPoints[zonei]++] = pointi; } + forAll(pointAdditionalZones_, pointi) + { + for (const label zonei : pointAdditionalZones_[pointi]) + { + addressing[zonei][nPoints[zonei]++] = pointi; + } + } // Sort the addressing forAll(addressing, zonei) { @@ -1668,6 +1737,20 @@ void Foam::polyTopoChange::resetZones } nFaces[zonei]++; } + forAll(faceAdditionalZones_, facei) + { + for (const label zoneAndSign : faceAdditionalZones_[facei]) + { + const label zonei = mag(zoneAndSign)-1; + if (zonei < 0 || zonei >= faceZones.size()) + { + FatalErrorInFunction + << "Illegal zoneID " << zonei << " for face " + << facei << abort(FatalError); + } + nFaces[zonei]++; + } + } labelListList addressing(faceZones.size()); boolListList flipMode(faceZones.size()); @@ -1685,9 +1768,21 @@ void Foam::polyTopoChange::resetZones const label zonei = iter.val(); const label index = nFaces[zonei]++; - addressing[zonei][index] = facei; flipMode[zonei][index] = faceZoneFlip_.test(facei); + + if (facei < faceAdditionalZones_.size()) + { + for (const label zoneAndSign : faceAdditionalZones_[facei]) + { + const label zonei = mag(zoneAndSign)-1; + const bool flip = (zoneAndSign > 0); + + const label index = nFaces[zonei]++; + addressing[zonei][index] = facei; + flipMode[zonei][index] = flip; + } + } } // Sort the addressing @@ -1784,6 +1879,20 @@ void Foam::polyTopoChange::resetZones nCells[zonei]++; } } + forAll(cellAdditionalZones_, celli) + { + for (const label zonei : cellAdditionalZones_[celli]) + { + if (zonei < 0 || zonei >= cellZones.size()) + { + FatalErrorInFunction + << "Illegal zoneID " << zonei << " for cell " + << celli << abort(FatalError); + } + nCells[zonei]++; + } + } + labelListList addressing(cellZones.size()); forAll(addressing, zonei) @@ -1801,6 +1910,13 @@ void Foam::polyTopoChange::resetZones addressing[zonei][nCells[zonei]++] = celli; } } + forAll(cellAdditionalZones_, celli) + { + for (const label zonei : cellAdditionalZones_[celli]) + { + addressing[zonei][nCells[zonei]++] = celli; + } + } // Sort the addressing forAll(addressing, zonei) { @@ -1910,7 +2026,7 @@ void Foam::polyTopoChange::reorderCoupledFaces // Rotation on new faces. labelList rotation(faces_.size(), Zero); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send ordering forAll(patchMap, patchi) @@ -2236,6 +2352,7 @@ void Foam::polyTopoChange::clear() pointMap_.clearStorage(); reversePointMap_.clearStorage(); pointZone_.clearStorage(); + pointAdditionalZones_.clearStorage(); retiredPoints_.clearStorage(); faces_.clearStorage(); @@ -2249,11 +2366,13 @@ void Foam::polyTopoChange::clear() flipFaceFlux_.clearStorage(); faceZone_.clearStorage(); faceZoneFlip_.clearStorage(); + faceAdditionalZones_.clearStorage(); nActiveFaces_ = 0; cellMap_.clearStorage(); reverseCellMap_.clearStorage(); cellZone_.clearStorage(); + cellAdditionalZones_.clearStorage(); cellFromPoint_.clearStorage(); cellFromEdge_.clearStorage(); cellFromFace_.clearStorage(); @@ -2288,30 +2407,43 @@ void Foam::polyTopoChange::addMesh reversePointMap_.setCapacity(reversePointMap_.size() + points.size()); pointZone_.resize(pointZone_.size() + points.size()/128); - // Precalc offset zones - labelList newZoneID(points.size(), -1); - - forAll(pointZones, zonei) - { - const labelList& pointLabels = pointZones[zonei]; - - for (const label pointi : pointLabels) - { - newZoneID[pointi] = pointZoneMap[zonei]; - } - } - - // Add points in mesh order - for (label pointi = 0; pointi < mesh.nPoints(); pointi++) + // Add points without pointZone + labelList newPointID(points.size()); + forAll(newPointID, pointi) { - addPoint + // Add point from point + newPointID[pointi] = addPoint ( points[pointi], pointi, - newZoneID[pointi], + -1, true ); } + + // Modify for pointZones + DynamicList<label> zones; + forAll(pointZones, zonei) + { + for (const label pointi : pointZones[zonei]) + { + // Get previous zones + this->pointZones(newPointID[pointi], zones); + for (auto& zonei : zones) + { + zonei = pointZoneMap[zonei]; + } + // Add new zone + zones.append(pointZoneMap[zonei]); + modifyPoint + ( + newPointID[pointi], + points_[newPointID[pointi]], + zones, + true + ); + } + } } // Add cells @@ -2332,39 +2464,31 @@ void Foam::polyTopoChange::addMesh cellZone_.setCapacity(cellZone_.size() + nAllCells); - // Precalc offset zones - labelList newZoneID(nAllCells, -1); + // Add cells without cellZone + labelList newCellID(nAllCells); + for (label celli = 0; celli < nAllCells; celli++) + { + // Add cell from cell + newCellID[celli] = addCell(-1, -1, -1, celli, -1); + } + // Modify for cellZones + DynamicList<label> zones; forAll(cellZones, zonei) { - const labelList& cellLabels = cellZones[zonei]; - - for (const label celli : cellLabels) + for (const label celli : cellZones[zonei]) { - if (newZoneID[celli] != -1) - { - WarningInFunction - << "Cell:" << celli - << " centre:" << mesh.cellCentres()[celli] - << " is in two zones:" - << cellZones[newZoneID[celli]].name() - << " and " << cellZones[zonei].name() << endl - << " This is not supported." - << " Continuing with first zone only." << endl; - } - else + // Get previous zones + this->cellZones(newCellID[celli], zones); + for (auto& zonei : zones) { - newZoneID[celli] = cellZoneMap[zonei]; + zonei = cellZoneMap[zonei]; } + // Add new zone + zones.append(cellZoneMap[zonei]); + modifyCell(newCellID[celli], zones); } } - - // Add cells in mesh order - for (label celli = 0; celli < nAllCells; celli++) - { - // Add cell from cell - addCell(-1, -1, -1, celli, newZoneID[celli]); - } } // Add faces @@ -2388,31 +2512,16 @@ void Foam::polyTopoChange::addMesh faceFromEdge_.resize(faceFromEdge_.size() + nAllFaces/128); flipFaceFlux_.setCapacity(faces_.size() + nAllFaces); faceZone_.resize(faceZone_.size() + nAllFaces/128); - faceZoneFlip_.setCapacity(faces_.size() + nAllFaces); - - - // Precalc offset zones - labelList newZoneID(nAllFaces, -1); - boolList zoneFlip(nAllFaces, false); + faceZoneFlip_.setCapacity(faceMap_.capacity()); - forAll(faceZones, zonei) - { - const labelList& faceLabels = faceZones[zonei]; - const boolList& flipMap = faceZones[zonei].flipMap(); - - forAll(faceLabels, facei) - { - newZoneID[faceLabels[facei]] = faceZoneMap[zonei]; - zoneFlip[faceLabels[facei]] = flipMap[facei]; - } - } - // Add faces in mesh order + // Add faces (in mesh order) without faceZone + labelList newFaceID(nAllFaces); // 1. Internal faces for (label facei = 0; facei < mesh.nInternalFaces(); facei++) { - addFace + newFaceID[facei] = addFace ( faces[facei], faceOwner[facei], @@ -2422,8 +2531,8 @@ void Foam::polyTopoChange::addMesh facei, // masterFaceID false, // flipFaceFlux -1, // patchID - newZoneID[facei], // zoneID - zoneFlip[facei] // zoneFlip + -1, // zoneID + false // zoneFlip ); } @@ -2446,7 +2555,7 @@ void Foam::polyTopoChange::addMesh { const label facei = pp.start() + patchFacei; - addFace + newFaceID[facei] = addFace ( faces[facei], faceOwner[facei], @@ -2456,8 +2565,49 @@ void Foam::polyTopoChange::addMesh facei, // masterFaceID false, // flipFaceFlux patchMap[patchi], // patchID - newZoneID[facei], // zoneID - zoneFlip[facei] // zoneFlip + -1, // zoneID + false // zoneFlip + ); + } + } + + + // Modify for faceZones + + DynamicList<label> zones; + DynamicList<bool> flips; + forAll(faceZones, zonei) + { + const auto& fz = faceZones[zonei]; + + forAll(fz, i) + { + const label facei = fz[i]; + const bool flip = fz.flipMap()[i]; + + // Modify face index for combined zones + const label newFacei = newFaceID[facei]; + + // Get previous zones + this->faceZones(newFacei, zones, flips); + for (auto& zonei : zones) + { + zonei = faceZoneMap[zonei]; + } + // Add new zone + zones.append(faceZoneMap[zonei]); + flips.append(flip); + + modifyFace + ( + faces_[newFacei], + newFacei, + faceOwner_[newFacei], + faceNeighbour_[newFacei], + flipFaceFlux_(newFacei), + region_[newFacei], + zones, + flips ); } } @@ -2644,6 +2794,57 @@ Foam::label Foam::polyTopoChange::addPoint { pointZone_.insert(pointi, zoneID); } + // Delay extending the pointAdditionalZones + + if (!inCell) + { + retiredPoints_.insert(pointi); + } + + return pointi; +} + + +Foam::label Foam::polyTopoChange::addPoint +( + const point& pt, + const label masterPointID, + const labelUList& zoneIDs, + const bool inCell +) +{ + const label pointi = points_.size(); + + points_.append(pt); + pointMap_.append(masterPointID); + reversePointMap_.append(pointi); + + if (zoneIDs.size()) + { + const label minIndex = findMin(zoneIDs); + + pointZone_.set(pointi, zoneIDs[minIndex]); + + // Clear any additional storage + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } + // (auto-vivify and) store additional zones + forAll(zoneIDs, i) + { + if (i != minIndex) + { + if (zoneIDs[i] == zoneIDs[minIndex]) + { + FatalErrorInFunction << "Duplicates in zones " + << flatOutput(zoneIDs) << " for point " << pointi + << exit(FatalError); + } + pointAdditionalZones_(pointi).push_uniq(zoneIDs[i]); + } + } + } if (!inCell) { @@ -2659,6 +2860,88 @@ void Foam::polyTopoChange::modifyPoint const label pointi, const point& pt, const label zoneID, + const bool inCell, + const bool multiZone +) +{ + if (pointi < 0 || pointi >= points_.size()) + { + FatalErrorInFunction + << "illegal point label " << pointi << endl + << "Valid point labels are 0 .. " << points_.size()-1 + << abort(FatalError); + } + if (pointRemoved(pointi) || pointMap_[pointi] == -1) + { + FatalErrorInFunction + << "point " << pointi << " already marked for removal" + << abort(FatalError); + } + points_[pointi] = pt; + + if (!multiZone) + { + if (zoneID >= 0) + { + pointZone_.set(pointi, zoneID); + } + else + { + pointZone_.erase(pointi); + } + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } + } + else + { + auto fnd = pointZone_.find(pointi); + if (!fnd) + { + pointZone_.set(pointi, zoneID); + + // Check that no leftover additional zones + if (pointAdditionalZones_(pointi).size()) + { + FatalErrorInFunction + << "Additional zones for point:" + << pointAdditionalZones_(pointi) + << abort(FatalError); + } + } + else if (zoneID == -1) + { + // Clear + pointZone_.erase(fnd); + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } + } + else if (zoneID != fnd()) + { + // New zone. Store in additional storage. + pointAdditionalZones_(pointi).push_uniq(zoneID); + } + } + + if (inCell) + { + retiredPoints_.erase(pointi); + } + else + { + retiredPoints_.insert(pointi); + } +} + + +void Foam::polyTopoChange::modifyPoint +( + const label pointi, + const point& pt, + const labelUList& zoneIDs, const bool inCell ) { @@ -2677,13 +2960,33 @@ void Foam::polyTopoChange::modifyPoint } points_[pointi] = pt; - if (zoneID >= 0) + if (zoneIDs.size()) { - pointZone_.set(pointi, zoneID); + if (zoneIDs.found(-1)) + { + FatalErrorInFunction + << "zones cannot contain -1 : " << flatOutput(zoneIDs) + << " for point:" << pointi + << abort(FatalError); + } + + pointZone_.set(pointi, zoneIDs[0]); + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } + for (label i = 1; i < zoneIDs.size(); ++i) + { + pointAdditionalZones_(pointi).push_uniq(zoneIDs[i]); + } } else { pointZone_.erase(pointi); + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } } if (inCell) @@ -2696,7 +2999,6 @@ void Foam::polyTopoChange::modifyPoint } } - void Foam::polyTopoChange::movePoints(const pointField& newPoints) { if (newPoints.size() != points_.size()) @@ -2759,6 +3061,10 @@ void Foam::polyTopoChange::removePoint reversePointMap_[pointi] = -1; } pointZone_.erase(pointi); + if (pointi < pointAdditionalZones_.size()) + { + pointAdditionalZones_[pointi].clear(); + } retiredPoints_.erase(pointi); } @@ -2822,46 +3128,259 @@ Foam::label Foam::polyTopoChange::addFace faceZone_.insert(facei, zoneID); } faceZoneFlip_.set(facei, zoneFlip); + // Delay extending the faceAdditionalZones return facei; } -void Foam::polyTopoChange::modifyFace +Foam::label Foam::polyTopoChange::addFace ( const face& f, - const label facei, const label own, const label nei, + const label masterPointID, + const label masterEdgeID, + const label masterFaceID, const bool flipFaceFlux, const label patchID, - const label zoneID, - const bool zoneFlip + const labelUList& zoneIDs, + const UList<bool>& zoneFlips ) { // Check validity if (debug) { - checkFace(f, facei, own, nei, patchID, zoneID); + // Note: no check on zones + checkFace(f, -1, own, nei, patchID, -1); } - faces_[facei] = f; - faceOwner_[facei] = own; - faceNeighbour_[facei] = nei; - region_[facei] = patchID; + label facei = faces_.size(); - flipFaceFlux_.set(facei, flipFaceFlux); - faceZoneFlip_.set(facei, zoneFlip); + faces_.append(f); + region_.append(patchID); + faceOwner_.append(own); + faceNeighbour_.append(nei); - if (zoneID >= 0) + if (masterPointID >= 0) + { + faceMap_.append(-1); + faceFromPoint_.insert(facei, masterPointID); + } + else if (masterEdgeID >= 0) { - faceZone_.set(facei, zoneID); + faceMap_.append(-1); + faceFromEdge_.insert(facei, masterEdgeID); + } + else if (masterFaceID >= 0) + { + faceMap_.append(masterFaceID); } else { - faceZone_.erase(facei); + // Allow inflate-from-nothing? + //FatalErrorInFunction + // << "Need to specify a master point, edge or face" + // << "face:" << f << " own:" << own << " nei:" << nei + // << abort(FatalError); + faceMap_.append(-1); } -} + reverseFaceMap_.append(facei); + + flipFaceFlux_.set(facei, flipFaceFlux); + + if (zoneIDs.size()) + { + const label minIndex = findMin(zoneIDs); + + faceZone_.set(facei, zoneIDs[minIndex]); + faceZoneFlip_.set(facei, zoneFlips[minIndex]); + + // Clear any additional storage + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } + // (auto-vivify and) store additional zones + forAll(zoneIDs, i) + { + if (i != minIndex) + { + if (zoneIDs[i] == zoneIDs[minIndex]) + { + FatalErrorInFunction << "Duplicates in zones " + << flatOutput(zoneIDs) << " for face " << facei + << exit(FatalError); + } + const label zoneAndSign + ( + zoneFlips[i] + ? zoneIDs[i]+1 + : -(zoneIDs[i]+1) + ); + faceAdditionalZones_(facei).push_uniq(zoneAndSign); + } + } + } + + return facei; +} + + +void Foam::polyTopoChange::modifyFace +( + const face& f, + const label facei, + const label own, + const label nei, + const bool flipFaceFlux, + const label patchID, + const label zoneID, + const bool zoneFlip, + const bool multiZone +) +{ + // Check validity + if (debug) + { + checkFace(f, facei, own, nei, patchID, zoneID); + } + + faces_[facei] = f; + faceOwner_[facei] = own; + faceNeighbour_[facei] = nei; + region_[facei] = patchID; + + flipFaceFlux_.set(facei, flipFaceFlux); + + // Note: same logic as modifyCell except storage is now sparse instead + // of marked with -1 + + if (!multiZone) + { + if (zoneID == -1) + { + faceZone_.erase(facei); + faceZoneFlip_.set(facei, zoneFlip); + } + else + { + faceZone_.set(facei, zoneID); + faceZoneFlip_.set(facei, zoneFlip); + } + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } + } + else + { + auto fnd = faceZone_.find(facei); + if (!fnd) + { + faceZone_.set(facei, zoneID); + faceZoneFlip_.set(facei, zoneFlip); + + // Check that no leftover additional zones + if (faceAdditionalZones_(facei).size()) + { + FatalErrorInFunction + << "Additional zones for face:" + << faceAdditionalZones_(facei) + << abort(FatalError); + } + } + else if (zoneID == -1) + { + // Clear + faceZone_.erase(fnd); + faceZoneFlip_.set(facei, false); + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } + } + else if (zoneID != fnd()) + { + // New zone. Store in additional storage. + const label zoneAndSign + ( + zoneFlip + ? zoneID+1 + : -(zoneID+1) + ); + faceAdditionalZones_(facei).push_uniq(zoneAndSign); + } + } +} + + +void Foam::polyTopoChange::modifyFace +( + const face& f, + const label facei, + const label own, + const label nei, + const bool flipFaceFlux, + const label patchID, + const labelUList& zoneIDs, + const UList<bool>& zoneFlips +) +{ + // Check validity + if (debug) + { + // Note: no check on zones + checkFace(f, facei, own, nei, patchID, -1); + } + + faces_[facei] = f; + faceOwner_[facei] = own; + faceNeighbour_[facei] = nei; + region_[facei] = patchID; + + flipFaceFlux_.set(facei, flipFaceFlux); + + // Note: same logic as modifyCell except storage is now sparse instead + // of marked with -1 + + if (zoneIDs.size()) + { + if (zoneIDs.found(-1)) + { + FatalErrorInFunction + << "zones cannot contain -1 : " << flatOutput(zoneIDs) + << " for face:" << facei + << abort(FatalError); + } + + faceZone_.set(facei, zoneIDs[0]); + faceZoneFlip_.set(facei, zoneFlips[0]); + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } + for (label i = 1; i < zoneIDs.size(); ++i) + { + const label zoneAndSign + ( + zoneFlips[i] + ? zoneIDs[i]+1 + : -(zoneIDs[i]+1) + ); + faceAdditionalZones_(facei).push_uniq(zoneAndSign); + } + } + else + { + faceZone_.erase(facei); + faceZoneFlip_.set(facei, false); + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } + } +} void Foam::polyTopoChange::removeFace @@ -2908,6 +3427,10 @@ void Foam::polyTopoChange::removeFace flipFaceFlux_.unset(facei); faceZoneFlip_.unset(facei); faceZone_.erase(facei); + if (facei < faceAdditionalZones_.size()) + { + faceAdditionalZones_[facei].clear(); + } } @@ -2942,7 +3465,65 @@ Foam::label Foam::polyTopoChange::addCell cellMap_.append(masterCellID); } reverseCellMap_.append(celli); + cellZone_.append(zoneID); + // Delay extending the cellAdditionalZones + + return celli; +} + + +Foam::label Foam::polyTopoChange::addCell +( + const label masterPointID, + const label masterEdgeID, + const label masterFaceID, + const label masterCellID, + const labelUList& zoneIDs +) +{ + label celli = cellMap_.size(); + + if (masterPointID >= 0) + { + cellMap_.append(-1); + cellFromPoint_.insert(celli, masterPointID); + } + else if (masterEdgeID >= 0) + { + cellMap_.append(-1); + cellFromEdge_.insert(celli, masterEdgeID); + } + else if (masterFaceID >= 0) + { + cellMap_.append(-1); + cellFromFace_.insert(celli, masterFaceID); + } + else + { + cellMap_.append(masterCellID); + } + reverseCellMap_.append(celli); + + if (zoneIDs.size()) + { + cellZone_.append(zoneIDs[0]); + + // Clear any additional storage + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } + // (auto-vivify and) store additional zones + for (label i = 1; i < zoneIDs.size(); ++i) + { + cellAdditionalZones_(celli).push_uniq(zoneIDs[i]); + } + } + else + { + cellZone_.append(-1); + } return celli; } @@ -2951,10 +3532,96 @@ Foam::label Foam::polyTopoChange::addCell void Foam::polyTopoChange::modifyCell ( const label celli, - const label zoneID + const label zoneID, + const bool multiZone ) { - cellZone_[celli] = zoneID; + if (!multiZone) + { + cellZone_[celli] = zoneID; + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } + } + else + { + if (cellZone_[celli] == -1) + { + cellZone_[celli] = zoneID; + + // Check that no leftover additional zones + if (cellAdditionalZones_(celli).size()) + { + FatalErrorInFunction + << "Additional zones for cell:" + << cellAdditionalZones_(celli) + << abort(FatalError); + } + } + else + { + if (zoneID == -1) + { + // Clear + cellZone_[celli] = zoneID; + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } + } + else if (zoneID != cellZone_[celli]) + { + // New zone. Store in additional storage. + cellAdditionalZones_(celli).push_uniq(zoneID); + } + } + } +} + + +void Foam::polyTopoChange::modifyCell +( + const label celli, + const labelUList& zoneIDs +) +{ + if (celli < 0 || celli >= cellMap_.size()) + { + FatalErrorInFunction + << "illegal cell label " << celli << endl + << "Valid cell labels are 0 .. " << cellMap_.size()-1 + << abort(FatalError); + } + + if (zoneIDs.size()) + { + if (zoneIDs.found(-1)) + { + FatalErrorInFunction + << "zones cannot contain -1 : " << flatOutput(zoneIDs) + << " for cell:" << celli + << abort(FatalError); + } + + cellZone_[celli] = zoneIDs[0]; + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } + for (label i = 1; i < zoneIDs.size(); ++i) + { + cellAdditionalZones_(celli).push_uniq(zoneIDs[i]); + } + } + else + { + cellZone_[celli] = -1; + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } + } } @@ -2993,6 +3660,109 @@ void Foam::polyTopoChange::removeCell cellFromEdge_.erase(celli); cellFromFace_.erase(celli); cellZone_[celli] = -1; + if (celli < cellAdditionalZones_.size()) + { + cellAdditionalZones_[celli].clear(); + } +} + + +Foam::label Foam::polyTopoChange::pointZones +( + const label pointi, + DynamicList<label>& zones +) const +{ + if (pointi < 0 || pointi >= pointMap_.size()) + { + FatalErrorInFunction + << "illegal point label " << pointi << endl + << "Valid point labels are 0 .. " << pointMap_.size()-1 + << abort(FatalError); + } + zones.clear(); + + const auto fnd = pointZone_.find(pointi); + if (fnd) + { + zones.push_back(fnd()); + if (pointi < pointAdditionalZones_.size()) + { + for (const label zonei : pointAdditionalZones_[pointi]) + { + zones.push_uniq(zonei); + } + } + } + return zones.size(); +} + + +Foam::label Foam::polyTopoChange::faceZones +( + const label facei, + DynamicList<label>& zones, + DynamicList<bool>& flips +) const +{ + if (facei < 0 || facei >= faceMap_.size()) + { + FatalErrorInFunction + << "illegal face label " << facei << endl + << "Valid face labels are 0 .. " << faceMap_.size()-1 + << abort(FatalError); + } + zones.clear(); + flips.clear(); + + const auto fnd = faceZone_.find(facei); + if (fnd) + { + zones.push_back(fnd()); + flips.push_back(flipFaceFlux_[facei]); + if (facei < faceAdditionalZones_.size()) + { + for (const label zoneAndSign : faceAdditionalZones_[facei]) + { + const label zonei = mag(zoneAndSign)-1; + if (!zones.found(zonei)) + { + zones.push_back(zonei); + flips.push_back((zoneAndSign > 0)); + } + } + } + } + return zones.size(); +} + + +Foam::label Foam::polyTopoChange::cellZones +( + const label celli, + DynamicList<label>& zones +) const +{ + if (celli < 0 || celli >= cellMap_.size()) + { + FatalErrorInFunction + << "illegal cell label " << celli << endl + << "Valid cell labels are 0 .. " << cellMap_.size()-1 + << abort(FatalError); + } + zones.clear(); + if (cellZone_[celli] != -1) + { + zones.push_back(cellZone_[celli]); + } + if (celli < cellAdditionalZones_.size()) + { + for (const label zonei : cellAdditionalZones_[celli]) + { + zones.push_uniq(zonei); + } + } + return zones.size(); } @@ -3167,13 +3937,6 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::polyTopoChange::changeMesh << endl; } - if (debug) - { - Pout<< "New mesh:" << nl; - writeMeshStats(mesh, Pout); - } - - // Zones // ~~~~~ @@ -3186,6 +3949,12 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::polyTopoChange::changeMesh resetZones(mesh, mesh, pointZoneMap, faceZoneFaceMap, cellZoneMap); + if (debug) + { + Pout<< "New mesh:" << nl; + writeMeshStats(mesh, Pout); + } + // Clear zone info { pointZone_.clearStorage(); diff --git a/src/meshTools/polyTopoChange/polyTopoChange.H b/src/meshTools/polyTopoChange/polyTopoChange.H index 9ad146d575b45776b454a3bc5629b8e954d3908b..318142f9da7ce63ef7ad006e4c167c04f7f34d62 100644 --- a/src/meshTools/polyTopoChange/polyTopoChange.H +++ b/src/meshTools/polyTopoChange/polyTopoChange.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,6 +55,14 @@ Description - coupled patches: the reorderCoupledFaces routine (borrowed from the couplePatches utility) reorders coupled patch faces and uses the cyclicPolyPatch,processorPolyPatch functionality. + - zones are assumed to be non-overlapping by default. If desired to be + overlapping either set the multiZone to true when calling + modifyCell|Face|Point or use the variants of addCell|Face|Point + and modifyCell|Face|Point that take a list of zones. + - if overlapping zones: + - 'main' zone is the lowest numbered zone. -1 means no zones. + - 'additional' zones are stored in incremental ordering (and cannot + contain -1) SourceFiles polyTopoChange.C @@ -127,6 +135,9 @@ class polyTopoChange //- Zone of point Map<label> pointZone_; + //- Additional zones of points + DynamicList<labelList> pointAdditionalZones_; + //- Retired points labelHashSet retiredPoints_; @@ -170,6 +181,9 @@ class polyTopoChange //- Orientation of face in zone bitSet faceZoneFlip_; + //- Additional zones of face (stored as signed face) + DynamicList<labelList> faceAdditionalZones_; + //- Active faces label nActiveFaces_; @@ -193,9 +207,12 @@ class polyTopoChange //- Cells added from face Map<label> cellFromFace_; - //- Zone of cell + //- First zone of cell (or -1) DynamicList<label> cellZone_; + //- Additional zones of cell + DynamicList<labelList> cellAdditionalZones_; + // Private Member Functions @@ -207,13 +224,6 @@ class polyTopoChange DynamicList<Type>& lst ); - template<class Type> - static void reorder - ( - const labelUList& oldToNew, - List<DynamicList<Type>>& lst - ); - template<class Type> static void renumberKey ( @@ -533,6 +543,18 @@ public: const bool inCell ); + //- Add point. Return new point label. + // Notes: + // - masterPointID can be < 0 (appended points) + // - inCell = false: add retired point (to end of point list) + label addPoint + ( + const point& pt, + const label masterPointID, + const labelUList& zoneIDs, + const bool inCell + ); + //- Modify coordinate. // Notes: // - zoneID = +ve (add to zoneID), -ve (remove from zones) @@ -542,12 +564,32 @@ public: const label pointi, const point& pt, const label zoneID, + const bool inCell, + const bool multiZone = false + ); + + //- Modify coordinate. + // Notes: + // - zoneIDs = set pointZones + // - inCell = false: add retired point (to end of point list) + void modifyPoint + ( + const label pointi, + const point& pt, + const labelUList& zoneIDs, const bool inCell ); //- Remove/merge point. void removePoint(const label pointi, const label mergePointi); + //- Get current cellZone(s). Return number of zones. + label pointZones + ( + const label pointi, + DynamicList<label>& zones + ) const; + //- Add face to cells. Return new face label. // own,nei<0, zoneID>=0 : add inactive face (to end of face list) label addFace @@ -564,6 +606,22 @@ public: const bool zoneFlip ); + //- Add face to cells. Return new face label. + // own,nei<0, zoneID>=0 : add inactive face (to end of face list) + label addFace + ( + const face& f, + const label own, + const label nei, + const label masterPointID, + const label masterEdgeID, + const label masterFaceID, + const bool flipFaceFlux, + const label patchID, + const labelUList& zoneIDs, + const UList<bool>& zoneFlips + ); + //- Modify vertices or cell of face. void modifyFace ( @@ -574,12 +632,34 @@ public: const bool flipFaceFlux, const label patchID, const label zoneID, - const bool zoneFlip + const bool zoneFlip, + const bool multiZone = false + ); + + //- Modify vertices or cell of face. + void modifyFace + ( + const face& f, + const label facei, + const label own, + const label nei, + const bool flipFaceFlux, + const label patchID, + const labelUList& zoneIDs, + const UList<bool>& zoneFlips ); //- Remove/merge face. void removeFace(const label facei, const label mergeFacei); + //- Get current faceZone(s). Return number of zones. + label faceZones + ( + const label facei, + DynamicList<label>& zones, + DynamicList<bool>& flips + ) const; + //- Add cell. Return new cell label. label addCell ( @@ -590,12 +670,34 @@ public: const label zoneID ); - //- Modify zone of cell - void modifyCell(const label celli, const label zoneID); + //- Add zoned cell (zones cannot be -1). Return new cell label. + label addCell + ( + const label masterPointID, + const label masterEdgeID, + const label masterFaceID, + const label masterCellID, + const labelUList& zoneIDs + ); + + //- Modify zone of cell. Optionally add to zone. + void modifyCell + ( + const label celli, + const label zoneID, + const bool multiZone = false + ); + + //- Set zones of cell + void modifyCell(const label celli, const labelUList& zoneIDs); //- Remove/merge cell. void removeCell(const label celli, const label mergeCelli); + //- Get current cellZone(s). Return number of zones. + label cellZones(const label celli, DynamicList<label>& zones) const; + + //- Explicitly set the number of patches if construct-without-mesh //- used. inline void setNumPatches(const label nPatches); diff --git a/src/meshTools/polyTopoChange/polyTopoChangeTemplates.C b/src/meshTools/polyTopoChange/polyTopoChangeTemplates.C index 9cc1362b43958efa173f7ef43486d63b1dc3c8b1..9016ce6a3a9575269b7bf477314c4533cfd47f7c 100644 --- a/src/meshTools/polyTopoChange/polyTopoChangeTemplates.C +++ b/src/meshTools/polyTopoChange/polyTopoChangeTemplates.C @@ -43,35 +43,13 @@ void Foam::polyTopoChange::reorder // Create copy DynamicList<Type> oldLst(lst); - forAll(oldToNew, i) + forAll(oldLst, i) { const label newIdx = oldToNew[i]; if (newIdx >= 0) { - lst[newIdx] = oldLst[i]; - } - } -} - - -template<class Type> -void Foam::polyTopoChange::reorder -( - const labelUList& oldToNew, - List<DynamicList<Type>>& lst -) -{ - // Create copy - List<DynamicList<Type>> oldLst(lst); - - forAll(oldToNew, i) - { - const label newIdx = oldToNew[i]; - - if (newIdx >= 0) - { - lst[newIdx].transfer(oldLst[i]); + lst[newIdx] = std::move(oldLst[i]); } } } diff --git a/src/meshTools/processorLOD/box/box.C b/src/meshTools/processorLOD/box/box.C index dd6deffc320c5871718b0ef6ffd4d7b3603c773e..26faa28e680f82e1fae7f4c72ee9fab1d6950cc0 100644 --- a/src/meshTools/processorLOD/box/box.C +++ b/src/meshTools/processorLOD/box/box.C @@ -102,7 +102,7 @@ void Foam::processorLODs::box::setRefineFlags labelList& nElems ) const { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Identify src boxes that can be refined and send to all remote procs for (const int proci : Pstream::allProcs()) @@ -315,7 +315,7 @@ bool Foam::processorLODs::box::doRefineBoxes List<DynamicList<treeBoundBox>>& fixedBoxes ) { - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send refine info back for list of evolving src boxes forAll(refineFlags, proci) diff --git a/src/meshTools/regionSplit/regionSplit.C b/src/meshTools/regionSplit/regionSplit.C index 9e02486ed5311437ed85e0cc12f1e6ceb967b221..7c0005a5820593169fd5b9ce20fc217b6af55608 100644 --- a/src/meshTools/regionSplit/regionSplit.C +++ b/src/meshTools/regionSplit/regionSplit.C @@ -385,7 +385,7 @@ Foam::regionSplit::regionSplit const bool doGlobalRegions ) : - MeshObject<polyMesh, Foam::TopologicalMeshObject, regionSplit>(mesh), + MeshObject_type(mesh), labelList(mesh.nCells(), UNASSIGNED), globalNumbering_() { @@ -432,7 +432,7 @@ Foam::regionSplit::regionSplit const bool doGlobalRegions ) : - MeshObject<polyMesh, Foam::TopologicalMeshObject, regionSplit>(mesh), + MeshObject_type(mesh), labelList(mesh.nCells(), UNASSIGNED), globalNumbering_() { diff --git a/src/meshTools/regionSplit/regionSplit.H b/src/meshTools/regionSplit/regionSplit.H index 8e0d28e348d3de085ee5d64fa38f0c200fb8ffa9..9ad158fc356fbfb91751c3fc13ee89a1360117e6 100644 --- a/src/meshTools/regionSplit/regionSplit.H +++ b/src/meshTools/regionSplit/regionSplit.H @@ -143,6 +143,16 @@ class regionSplit public MeshObject<polyMesh, TopologicalMeshObject, regionSplit>, public labelList { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + TopologicalMeshObject, + regionSplit + > MeshObject_type; + + // Private Data //- Indexing into the regions @@ -157,7 +167,6 @@ class regionSplit // Private Class - //- Simple wrapper for handling test() on bitSet or boolList //- without a templating layer or lambda expresssion. class bitSetOrBoolList diff --git a/src/meshTools/regionSplit2D/regionSplit2D.C b/src/meshTools/regionSplit2D/regionSplit2D.C index 6d7271e401a9f607bc8e554b0bf4fc62f93e8927..306a04fbd37f85a0f102974a1e9d2805b489a7b5 100644 --- a/src/meshTools/regionSplit2D/regionSplit2D.C +++ b/src/meshTools/regionSplit2D/regionSplit2D.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2022,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,7 @@ License #include "regionSplit2D.H" #include "polyMesh.H" #include "PatchEdgeFaceWave.H" -#include "edgeTopoDistanceData.H" +#include "patchEdgeFaceRegion.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -51,12 +51,11 @@ Foam::regionSplit2D::regionSplit2D nRegions_(0) { globalIndex globalFaces(blockedFaces.size()); - label regionI = globalFaces.toGlobal(0); - List<edgeTopoDistanceData<label>> allEdgeInfo(patch.nEdges()); - List<edgeTopoDistanceData<label>> allFaceInfo(patch.size()); + label regioni = globalFaces.toGlobal(0); + List<patchEdgeFaceRegion> allEdgeInfo(patch.nEdges()); + List<patchEdgeFaceRegion> allFaceInfo(patch.size()); DynamicList<label> changedEdges; - DynamicList<edgeTopoDistanceData<label>> changedRegions; - + DynamicList<patchEdgeFaceRegion> changedRegions; label nBlockedFaces = 0; forAll(blockedFaces, facei) { @@ -67,26 +66,15 @@ Foam::regionSplit2D::regionSplit2D changedEdges.append(edgei); // Append globally unique value - changedRegions.append - ( - edgeTopoDistanceData<label> - ( - 0, // distance - regionI // passive data - ) - ); + changedRegions.append(regioni); } nBlockedFaces++; - regionI++; + regioni++; } else { // Block all non-seeded faces from the walk - allFaceInfo[facei] = edgeTopoDistanceData<label> - ( - 0, // distance - BLOCKED // passive data - ); + allFaceInfo[facei] = BLOCKED; } } @@ -99,7 +87,7 @@ Foam::regionSplit2D::regionSplit2D PatchEdgeFaceWave < indirectPrimitivePatch, - edgeTopoDistanceData<label> + patchEdgeFaceRegion > ( mesh, @@ -115,27 +103,30 @@ Foam::regionSplit2D::regionSplit2D // Map from regions to local compact indexing // - only for regions that originate from this processor Map<label> regionToCompactAddr(changedRegions.size()); - label compactRegionI = 0; - forAll(allFaceInfo, faceI) + label compactRegioni = 0; + forAll(allFaceInfo, facei) { - label regionI = allFaceInfo[faceI].data(); + const label regioni = allFaceInfo[facei].region(); if ( - globalFaces.isLocal(regionI) - && regionToCompactAddr.insert(regionI, compactRegionI) + globalFaces.isLocal(regioni) + && regionToCompactAddr.insert(regioni, compactRegioni) ) { - compactRegionI++; + compactRegioni++; } } - // In-place renumber the local regionI to global (compact) regionI - globalIndex giCompact(compactRegionI); - forAllIters(regionToCompactAddr, iter) + // In-place renumber the local regionI to global (compact) regioni { - *iter = giCompact.toGlobal(*iter); + const label myProcOffset = globalIndex::calcOffset(compactRegioni); + forAllIters(regionToCompactAddr, iter) + { + iter.val() += myProcOffset; + } } + // Ensure regionToCompactAddr consistent across all processors // - not concerned about the op (keys are unique) // - map size will be the number of regions in the set of faces @@ -144,12 +135,12 @@ Foam::regionSplit2D::regionSplit2D nRegions_ = regionToCompactAddr.size(); // Set the region index per face - forAll(allFaceInfo, faceI) + forAll(allFaceInfo, facei) { - label regionI = allFaceInfo[faceI].data(); - if (regionI >= 0) + const label regioni = allFaceInfo[facei].region(); + if (regioni >= 0) { - this->operator[](faceI) = regionToCompactAddr[regionI] + offset; + this->operator[](facei) = regionToCompactAddr[regioni] + offset; } } } diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/SDA/SDA.C b/src/meshTools/solidBodyMotionFunctions/SDA/SDA.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/SDA/SDA.C rename to src/meshTools/solidBodyMotionFunctions/SDA/SDA.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/SDA/SDA.H b/src/meshTools/solidBodyMotionFunctions/SDA/SDA.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/SDA/SDA.H rename to src/meshTools/solidBodyMotionFunctions/SDA/SDA.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.C b/src/meshTools/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.C rename to src/meshTools/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.H b/src/meshTools/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.H rename to src/meshTools/solidBodyMotionFunctions/axisRotationMotion/axisRotationMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.C b/src/meshTools/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.C rename to src/meshTools/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.H b/src/meshTools/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.H rename to src/meshTools/solidBodyMotionFunctions/drivenLinearMotion/drivenLinearMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/linearMotion/linearMotion.C b/src/meshTools/solidBodyMotionFunctions/linearMotion/linearMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/linearMotion/linearMotion.C rename to src/meshTools/solidBodyMotionFunctions/linearMotion/linearMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/linearMotion/linearMotion.H b/src/meshTools/solidBodyMotionFunctions/linearMotion/linearMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/linearMotion/linearMotion.H rename to src/meshTools/solidBodyMotionFunctions/linearMotion/linearMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/multiMotion/multiMotion.C b/src/meshTools/solidBodyMotionFunctions/multiMotion/multiMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/multiMotion/multiMotion.C rename to src/meshTools/solidBodyMotionFunctions/multiMotion/multiMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/multiMotion/multiMotion.H b/src/meshTools/solidBodyMotionFunctions/multiMotion/multiMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/multiMotion/multiMotion.H rename to src/meshTools/solidBodyMotionFunctions/multiMotion/multiMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.C b/src/meshTools/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.C rename to src/meshTools/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.H b/src/meshTools/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.H rename to src/meshTools/solidBodyMotionFunctions/oscillatingLinearMotion/oscillatingLinearMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.C b/src/meshTools/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.C rename to src/meshTools/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.H b/src/meshTools/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.H rename to src/meshTools/solidBodyMotionFunctions/oscillatingRotatingMotion/oscillatingRotatingMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.C b/src/meshTools/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.C rename to src/meshTools/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.H b/src/meshTools/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.H rename to src/meshTools/solidBodyMotionFunctions/rotatingMotion/rotatingMotion.H diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.C b/src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.C rename to src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H b/src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H similarity index 81% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H rename to src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H index b6ad4c7a5b8a02892ed8cb0d499c9780e3a83859..7d98bbed5c3703334f46e5d442926190dde53af8 100644 --- a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H +++ b/src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunction.H @@ -39,12 +39,12 @@ Description SourceFiles solidBodyMotionFunction.C - dynamicFvMeshNew.C + solidBodyMotionFunctionNew.C \*---------------------------------------------------------------------------*/ -#ifndef solidBodyMotionFunction_H -#define solidBodyMotionFunction_H +#ifndef Foam_solidBodyMotionFunction_H +#define Foam_solidBodyMotionFunction_H #include "Time.H" #include "dictionary.H" @@ -101,7 +101,7 @@ public: // Constructors - //- Construct from the SBMFCoeffs dictionary and Time + //- Construct from the coefficients dictionary and Time solidBodyMotionFunction ( const dictionary& SBMFCoeffs, @@ -114,10 +114,28 @@ public: // Selectors - //- Select constructed from the SBMFCoeffs dictionary and Time + //- Construct and dispatch motionType with dictionary and Time. + // Returns nullptr if motionType is empty static autoPtr<solidBodyMotionFunction> New ( - const dictionary& SBMFCoeffs, + const word& motionType, + const dictionary& dict, + const Time& runTime + ); + + //- Select "solidBodyMotionFunction" type from dictionary + //- and create with Time. + static autoPtr<solidBodyMotionFunction> New + ( + const dictionary& dict, + const Time& runTime + ); + + //- Select "solidBodyMotionFunction" type (if present) from dictionary + //- and create with Time. + static autoPtr<solidBodyMotionFunction> NewIfPresent + ( + const dictionary& dict, const Time& runTime ); diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C b/src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C similarity index 69% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C rename to src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C index 41f59990b36d1225979488e9decd9178a78530d7..b0d374ac8db1d35856a23036ca41c1b4f01fece6 100644 --- a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C +++ b/src/meshTools/solidBodyMotionFunctions/solidBodyMotionFunction/solidBodyMotionFunctionNew.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,15 +30,18 @@ License // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // -Foam::autoPtr<Foam::solidBodyMotionFunction> Foam::solidBodyMotionFunction::New +Foam::autoPtr<Foam::solidBodyMotionFunction> +Foam::solidBodyMotionFunction::New ( + const word& motionType, const dictionary& dict, const Time& runTime ) { - const word motionType(dict.get<word>("solidBodyMotionFunction")); - - Info<< "Selecting solid-body motion function " << motionType << endl; + if (motionType.empty()) + { + return nullptr; + } auto* ctorPtr = dictionaryConstructorTable(motionType); @@ -53,8 +56,45 @@ Foam::autoPtr<Foam::solidBodyMotionFunction> Foam::solidBodyMotionFunction::New ) << exit(FatalIOError); } + Info<< "Selecting solid-body motion function " << motionType << endl; + return autoPtr<solidBodyMotionFunction>(ctorPtr(dict, runTime)); } +Foam::autoPtr<Foam::solidBodyMotionFunction> +Foam::solidBodyMotionFunction::New +( + const dictionary& dict, + const Time& runTime +) +{ + return New + ( + dict.get<word>("solidBodyMotionFunction", keyType::LITERAL), + dict, + runTime + ); +} + + +Foam::autoPtr<Foam::solidBodyMotionFunction> +Foam::solidBodyMotionFunction::NewIfPresent +( + const dictionary& dict, + const Time& runTime +) +{ + word motionType; + dict.readIfPresent("solidBodyMotionFunction", motionType, keyType::LITERAL); + + if (motionType.empty()) + { + return nullptr; + } + + return New(motionType, dict, runTime); +} + + // ************************************************************************* // diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C b/src/meshTools/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C rename to src/meshTools/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C diff --git a/src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.H b/src/meshTools/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.H similarity index 100% rename from src/dynamicMesh/motionSolvers/displacement/solidBody/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.H rename to src/meshTools/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.H diff --git a/src/meshTools/topoSet/cellSources/boundaryToCell/boundaryToCell.C b/src/meshTools/topoSet/cellSources/boundaryToCell/boundaryToCell.C index 2575d39c065a6c704b660d6864320c8a7ba94a95..b760079fb994a625430a6e3b508460055700e0b0 100644 --- a/src/meshTools/topoSet/cellSources/boundaryToCell/boundaryToCell.C +++ b/src/meshTools/topoSet/cellSources/boundaryToCell/boundaryToCell.C @@ -90,10 +90,10 @@ Foam::boundaryToCell::boundaryToCell(const polyMesh& mesh) Foam::boundaryToCell::boundaryToCell ( const polyMesh& mesh, - const dictionary& + const dictionary& dict ) : - topoSetCellSource(mesh) + topoSetCellSource(mesh, dict) {} diff --git a/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.C b/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.C index 6796fe2200b20c02e181b42b796fb8c41706fd6a..1b66a40cfed750140c370967f5cae07d89713ad7 100644 --- a/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.C +++ b/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.C @@ -92,7 +92,8 @@ static void readBoxDim(const dictionary& dict, treeBoundBox& bb) void Foam::boxToCell::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.cellCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -138,7 +139,7 @@ Foam::boxToCell::boxToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), bbs_() { // Accept 'boxes', 'box' or 'min/max' diff --git a/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.H b/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.H index 1da35b00b0b4f5ade5e49bba9f9a78f98abde56b..0775939338caedd7dda44d11be436d30b881e66e 100644 --- a/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.H +++ b/src/meshTools/topoSet/cellSources/boxToCell/boxToCell.H @@ -50,7 +50,7 @@ Usage source boxToCell; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 boxes diff --git a/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.C b/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.C index a427b4dc210c417d74441bfb1783531058904633..c175d121d2bfe732db1c1f754a2432b040e7f049 100644 --- a/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.C +++ b/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,8 @@ Foam::cellToCell::cellToCell ) : topoSetCellSource(mesh), - names_(one{}, setName) + names_(Foam::one{}, setName), + isZone_(false) {} @@ -70,16 +71,10 @@ Foam::cellToCell::cellToCell const dictionary& dict ) : - topoSetCellSource(mesh), - names_() -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} + topoSetCellSource(mesh, dict), + names_(), + isZone_(topoSetSource::readNames(dict, names_)) +{} Foam::cellToCell::cellToCell @@ -89,7 +84,8 @@ Foam::cellToCell::cellToCell ) : topoSetCellSource(mesh), - names_(one{}, word(checkIs(is))) + names_(Foam::one{}, word(checkIs(is))), + isZone_(false) {} @@ -105,30 +101,44 @@ void Foam::cellToCell::applyToSet { if (verbose_) { - Info<< " Adding all elements of cell sets: " + Info<< " Adding all elements of cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - cellSet loadedSet(mesh_, setName); - - set.addSet(loadedSet); + if (isZone_) + { + set.addSet(mesh_.cellZones()[setName]); + } + else + { + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + set.addSet(loadedSet); + } } } else if (action == topoSetSource::SUBTRACT) { if (verbose_) { - Info<< " Removing all elements of cell sets: " + Info<< " Removing all elements of cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - cellSet loadedSet(mesh_, setName); - - set.subtractSet(loadedSet); + if (isZone_) + { + set.subtractSet(mesh_.cellZones()[setName]); + } + else + { + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + set.subtractSet(loadedSet); + } } } } diff --git a/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.H b/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.H index 1a42aa8b00d9d3912702b2e3307f613e2ad1dab0..fb595cb7872bc547cb664e86a098df6f0bc9e409 100644 --- a/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.H +++ b/src/meshTools/topoSet/cellSources/cellToCell/cellToCell.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,8 @@ Class Foam::cellToCell Description - A \c topoSetCellSource to select all the cells from given \c cellSet(s). + A \c topoSetCellSource to select all the cells from given \c cellSet(s) + or \c cellZone(s). Operands: \table @@ -50,7 +51,7 @@ Usage source cellToCell; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -61,7 +62,18 @@ Usage ); // Option-2 - set <cellSetName>; + zones + ( + <cellZoneName0> + <cellZoneName1> + ... + ); + + // Option-3 + set <cellSetName>; + + // Option-4 + zone <cellZoneName>; } \endverbatim @@ -81,17 +93,15 @@ Usage subtract | Remove selected cells from this cellSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input cellSets | wordList | cond'l | - + zones | Names of input cellZones | wordList | cond'l | - set | Name of input cellSet | word | cond'l | - + zone | Name of input cellZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetCellSource @@ -101,8 +111,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cellToCell_H -#define cellToCell_H +#ifndef Foam_cellToCell_H +#define Foam_cellToCell_H #include "topoSetCellSource.H" @@ -124,9 +134,12 @@ class cellToCell //- Add usage string static addToUsageTable usage_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + public: diff --git a/src/meshTools/topoSet/cellSources/clipPlaneToCell/clipPlaneToCell.C b/src/meshTools/topoSet/cellSources/clipPlaneToCell/clipPlaneToCell.C index 521ba39942c4f5f9f201cc8789003beea3572ef5..64d210dd997d1d1c22def884a404ae2382146ba5 100644 --- a/src/meshTools/topoSet/cellSources/clipPlaneToCell/clipPlaneToCell.C +++ b/src/meshTools/topoSet/cellSources/clipPlaneToCell/clipPlaneToCell.C @@ -69,7 +69,8 @@ void Foam::clipPlaneToCell::combine(topoSet& set, const bool add) const { // Cell centres above the plane - const pointField& ctrs = mesh_.cellCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -102,12 +103,9 @@ Foam::clipPlaneToCell::clipPlaneToCell const dictionary& dict ) : - clipPlaneToCell - ( - mesh, - dict.get<vector>("point"), - dict.get<vector>("normal") - ) + topoSetCellSource(mesh, dict), + point_(dict.get<vector>("point")), + normal_(dict.get<vector>("normal")) {} diff --git a/src/meshTools/topoSet/cellSources/cylinderToCell/cylinderToCell.C b/src/meshTools/topoSet/cellSources/cylinderToCell/cylinderToCell.C index 3d2a6fb6870ca8bc01f0076c05560fb33b9ced44..ef53a72e770d43b19e4c8ff1ed7300e2037f3d0f 100644 --- a/src/meshTools/topoSet/cellSources/cylinderToCell/cylinderToCell.C +++ b/src/meshTools/topoSet/cellSources/cylinderToCell/cylinderToCell.C @@ -68,7 +68,8 @@ Foam::topoSetSource::addToUsageTable Foam::cylinderToCell::usage_ void Foam::cylinderToCell::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.cellCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); const vector axis = (point2_ - point1_); const scalar magAxis2 = magSqr(axis); @@ -127,12 +128,12 @@ Foam::cylinderToCell::cylinderToCell const dictionary& dict ) : - cylinderToCell + topoSetCellSource(mesh, dict), + point1_(dict.getCompat<point>("point1", {{"p1", -2112}})), + point2_(dict.getCompat<point>("point2", {{"p2", -2112}})), + radius_(dict.getCompat<scalar>("radius", {{"outerRadius", -2112}})), + innerRadius_ ( - mesh, - dict.getCompat<point>("point1", {{"p1", -2112}}), - dict.getCompat<point>("point2", {{"p2", -2112}}), - dict.getCompat<scalar>("radius", {{"outerRadius", -2112}}), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.C b/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.C index 1fb53e60adbd66eb6133b1d6d9dc37d91976e239..848851ffa5eddfe75aabfe53463b6c544370a3ef 100644 --- a/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.C +++ b/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,18 +66,14 @@ Foam::faceToCell::faceActionNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::faceToCell::combine +template<class Selector> +void Foam::faceToCell::combineImpl ( topoSet& set, const bool add, - const word& setName + const Selector& faceLabels ) const { - // Load the set - faceSet loadedSet(mesh_, setName); - - const labelHashSet& faceLabels = loadedSet; - // Handle owner/neighbour/any selection for (const label facei : faceLabels) { @@ -104,7 +100,7 @@ void Foam::faceToCell::combine { // Count number of selected faces per cell. - Map<label> facesPerCell(loadedSet.size()); + Map<label> facesPerCell(faceLabels.size()); for (const label facei : faceLabels) { @@ -134,6 +130,30 @@ void Foam::faceToCell::combine } +void Foam::faceToCell::combine +( + topoSet& set, + const bool add, + const word& setName +) const +{ + if (isZone_) + { + const labelList& faceLabels = mesh_.faceZones()[setName]; + + combineImpl(set, add, faceLabels); + } + else + { + // Load the set + faceSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& faceLabels = loadedSet; + + combineImpl(set, add, faceLabels); + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::faceToCell::faceToCell @@ -144,7 +164,8 @@ Foam::faceToCell::faceToCell ) : topoSetCellSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -155,17 +176,11 @@ Foam::faceToCell::faceToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(faceActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::faceToCell::faceToCell @@ -175,7 +190,8 @@ Foam::faceToCell::faceToCell ) : topoSetCellSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(faceActionNames_.read(checkIs(is))) {} @@ -192,8 +208,9 @@ void Foam::faceToCell::applyToSet { if (verbose_) { - Info<< " Adding cells according to face sets: " - << flatOutput(names_) << endl; + Info<< " Adding cells according to face " + << (isZone_ ? "zones: " : "sets: ") + << flatOutput(names_) << nl; } for (const word& setName : names_) @@ -205,8 +222,9 @@ void Foam::faceToCell::applyToSet { if (verbose_) { - Info<< " Removing cells according to face sets: " - << flatOutput(names_) << endl; + Info<< " Removing cells according to face " + << (isZone_ ? "zones: " : "sets: ") + << flatOutput(names_) << nl; } for (const word& setName : names_) diff --git a/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.H b/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.H index dbd6f18f8a341ae800b7902dc5630ad3b36230d1..36811cbe32c75a2e61fddba76af694a25aea4112 100644 --- a/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.H +++ b/src/meshTools/topoSet/cellSources/faceToCell/faceToCell.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -53,7 +53,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -64,7 +64,18 @@ Usage ); // Option-2 + zones + ( + <faceZoneName0> + <faceZoneName1> + ... + ); + + // Option-3 set <faceSetName>; + + // Option-4 + zone <faceZoneName>; } \endverbatim @@ -93,17 +104,15 @@ Usage neighbour | Cells that are neighbour of given faces \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input faceSets | wordList | cond'l | - + zones | Names of input faceZones | wordList | cond'l | - set | Name of input faceSet | word | cond'l | - + zone | Name of input faceZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetCellSource @@ -114,8 +123,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faceToCell_H -#define faceToCell_H +#ifndef Foam_faceToCell_H +#define Foam_faceToCell_H #include "topoSetCellSource.H" #include "Enum.H" @@ -153,15 +162,27 @@ private: //- Add usage string static addToUsageTable usage_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Option faceAction option_; // Private Member Functions + //- Depending on face to cell option add to or delete from cellSet. + template<class Selector> + void combineImpl + ( + topoSet& set, + const bool add, + const Selector& faceLabels + ) const; + //- Depending on face to cell option add to or delete from cellSet. void combine(topoSet& set, const bool add, const word& setName) const; diff --git a/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.C b/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.C index 3e31508d4cfa39e6d70ce9e01efe3518ae074a46..5132bffec77cabe23820f8bcff51dce3e2b7c492 100644 --- a/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.C +++ b/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.C @@ -214,7 +214,7 @@ Foam::faceZoneToCell::faceZoneToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), zoneMatcher_(), option_(faceActionNames_.get("option", dict)) { diff --git a/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.H b/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.H index 44da5e124dce5aec002df2762059faef8b9b57ef..c5fbd88148c3883cabd4b234bf6dcd161fbf0f6b 100644 --- a/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.H +++ b/src/meshTools/topoSet/cellSources/faceZoneToCell/faceZoneToCell.H @@ -52,7 +52,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 zones @@ -63,7 +63,7 @@ Usage ); // Option-2 - set <faceZoneName>; + zone <faceZoneName>; } \endverbatim diff --git a/src/meshTools/topoSet/cellSources/fieldToCell/fieldDictionary.H b/src/meshTools/topoSet/cellSources/fieldToCell/fieldDictionary.H index 999f5a8862c5f2bd8e2a9354a68fb2dedb517c01..c04f5bfb384fa65487ea2fd2855f54fa263e36e6 100644 --- a/src/meshTools/topoSet/cellSources/fieldToCell/fieldDictionary.H +++ b/src/meshTools/topoSet/cellSources/fieldToCell/fieldDictionary.H @@ -32,11 +32,11 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef fieldDictionary_H -#define fieldDictionary_H +#ifndef Foam_fieldDictionary_H +#define Foam_fieldDictionary_H -#include "regIOobject.H" #include "dictionary.H" +#include "regIOobject.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -52,22 +52,22 @@ class fieldDictionary public regIOobject, public dictionary { - // Private Data - const word type_; + //- The specified field type + const word fieldType_; public: // Constructors - //- Construct from ioobject and overloaded typename. - fieldDictionary(const IOobject& io, const word& type) + //- Construct from IOobject and specified (overloaded) type name + fieldDictionary(const IOobject& io, const word& fieldType) : regIOobject(io), - dictionary(readStream(type)), - type_(type) + dictionary(readStream(fieldType)), + fieldType_(fieldType) { close(); } @@ -78,13 +78,13 @@ public: //- Redefine type name to be of the instantiated type virtual const word& type() const { - return type_; + return fieldType_; } - bool writeData(Ostream& os) const + //- The writeData function required by regIOobject write operation + virtual bool writeData(Ostream& os) const { - static_cast<const dictionary&>(*this).write(os, false); - + dictionary::write(os, false); return os.good(); } }; diff --git a/src/meshTools/topoSet/cellSources/fieldToCell/fieldToCell.C b/src/meshTools/topoSet/cellSources/fieldToCell/fieldToCell.C index f991f2f24b4ead3e7c0a18ff2f20a4c26203583e..6ce00a04843d1671b5299fb1d16e34ce6a95889c 100644 --- a/src/meshTools/topoSet/cellSources/fieldToCell/fieldToCell.C +++ b/src/meshTools/topoSet/cellSources/fieldToCell/fieldToCell.C @@ -148,13 +148,10 @@ Foam::fieldToCell::fieldToCell const dictionary& dict ) : - fieldToCell - ( - mesh, - dict.get<word>("field"), - dict.get<scalar>("min"), - dict.get<scalar>("max") - ) + topoSetCellSource(mesh, dict), + fieldName_(dict.get<word>("field")), + min_(dict.get<scalar>("min")), + max_(dict.get<scalar>("max")) {} diff --git a/src/meshTools/topoSet/cellSources/haloToCell/haloToCell.C b/src/meshTools/topoSet/cellSources/haloToCell/haloToCell.C index 0bce5d66b015d5bafaf86bc19f34fc2683b82421..ba70c4bcb9d6693d8880e382085d996a7f0eb597 100644 --- a/src/meshTools/topoSet/cellSources/haloToCell/haloToCell.C +++ b/src/meshTools/topoSet/cellSources/haloToCell/haloToCell.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,9 +83,11 @@ void Foam::haloToCell::combine(topoSet& set, const bool add) const // The starting set of cells bitSet current(cells.size()); - if (isA<topoBitSet>(set)) + const auto* topoBitsPtr = isA<topoBitSet>(set); + + if (topoBitsPtr) { - current |= refCast<const topoBitSet>(set).addressing(); + current |= topoBitsPtr->addressing(); } else { @@ -198,7 +200,8 @@ Foam::haloToCell::haloToCell const dictionary& dict ) : - haloToCell(mesh, dict.getOrDefault<label>("steps", 1)) + topoSetCellSource(mesh, dict), + steps_(dict.getOrDefault<label>("steps", 1)) {} diff --git a/src/meshTools/topoSet/cellSources/labelToCell/labelToCell.C b/src/meshTools/topoSet/cellSources/labelToCell/labelToCell.C index 85e6a435e86e4a650be9031752a3e28c1492173b..0ce5f1253dd7eb4908f140ee360152deff18f6c7 100644 --- a/src/meshTools/topoSet/cellSources/labelToCell/labelToCell.C +++ b/src/meshTools/topoSet/cellSources/labelToCell/labelToCell.C @@ -94,7 +94,8 @@ Foam::labelToCell::labelToCell const dictionary& dict ) : - labelToCell(mesh, dict.get<labelList>("value")) + topoSetCellSource(mesh, dict), + labels_(dict.get<labelList>("value")) {} diff --git a/src/meshTools/topoSet/cellSources/nbrToCell/nbrToCell.C b/src/meshTools/topoSet/cellSources/nbrToCell/nbrToCell.C index 31b9d72fdb446ae03c1328c16fa7766d92a7da1f..0b6d34db8d8c3c21653b9d7ae20c085fc1eb314c 100644 --- a/src/meshTools/topoSet/cellSources/nbrToCell/nbrToCell.C +++ b/src/meshTools/topoSet/cellSources/nbrToCell/nbrToCell.C @@ -74,6 +74,7 @@ void Foam::nbrToCell::combine(topoSet& set, const bool add) const } const cellList& cells = mesh().cells(); + const polyBoundaryMesh& patches = mesh_.boundaryMesh(); boolList isCoupled(mesh_.nBoundaryFaces(), false); @@ -136,7 +137,8 @@ Foam::nbrToCell::nbrToCell const dictionary& dict ) : - nbrToCell(mesh, dict.getCheck<label>("neighbours", labelMinMax::ge(1))) + topoSetCellSource(mesh, dict), + minNbrs_(dict.getCheck<label>("neighbours", labelMinMax::ge(1))) {} diff --git a/src/meshTools/topoSet/cellSources/nearestToCell/nearestToCell.C b/src/meshTools/topoSet/cellSources/nearestToCell/nearestToCell.C index 5ee762e03909c77b145f307151adc08fb913f127..034d43fbd703dc012ccedcc23a57bf3c7ace8937 100644 --- a/src/meshTools/topoSet/cellSources/nearestToCell/nearestToCell.C +++ b/src/meshTools/topoSet/cellSources/nearestToCell/nearestToCell.C @@ -127,11 +127,8 @@ Foam::nearestToCell::nearestToCell const dictionary& dict ) : - nearestToCell - ( - mesh, - dict.get<pointField>("points") - ) + topoSetCellSource(mesh, dict), + points_(dict.get<pointField>("points")) {} diff --git a/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.C b/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.C index 39e5e54733c7e83351ab050bcb8ebcac5ef11b04..753dfd6e369d7d7286fbe2a635c9861f8d6507f4 100644 --- a/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.C +++ b/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.C @@ -125,7 +125,7 @@ Foam::patchToCell::patchToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), selectedPatches_() { // Look for 'patches' and 'patch', but accept 'name' as well diff --git a/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.H b/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.H index 4f78764288403723e66d219dec21a341c862f6a5..7705e0b10ccfd05a219de33a57051bfe19e4863a 100644 --- a/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.H +++ b/src/meshTools/topoSet/cellSources/patchToCell/patchToCell.H @@ -48,7 +48,7 @@ Usage source patchToCell; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 patches diff --git a/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.C b/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.C index cc373c079065b6a327a5d50bc43c95eeba1060f3..aad09d4423df15bbc2808a4ab8b7b07598362827 100644 --- a/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.C +++ b/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -64,18 +64,14 @@ Foam::pointToCell::pointActionNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::pointToCell::combine +template<class Selector> +void Foam::pointToCell::combineImpl ( topoSet& set, const bool add, - const word& setName + const Selector& pointLabels ) const { - // Load the set - pointSet loadedSet(mesh_, setName); - - const labelHashSet& pointLabels = loadedSet; - // Handle any selection if (option_ == ANY) { @@ -114,6 +110,30 @@ void Foam::pointToCell::combine } +void Foam::pointToCell::combine +( + topoSet& set, + const bool add, + const word& setName +) const +{ + if (isZone_) + { + const labelList& pointLabels = mesh_.pointZones()[setName]; + + combineImpl(set, add, pointLabels); + } + else + { + // Load the set + pointSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& pointLabels = loadedSet; + + combineImpl(set, add, pointLabels); + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::pointToCell::pointToCell @@ -124,7 +144,8 @@ Foam::pointToCell::pointToCell ) : topoSetCellSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -135,17 +156,11 @@ Foam::pointToCell::pointToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(pointActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::pointToCell::pointToCell @@ -155,7 +170,8 @@ Foam::pointToCell::pointToCell ) : topoSetCellSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(pointActionNames_.read(checkIs(is))) {} @@ -172,7 +188,8 @@ void Foam::pointToCell::applyToSet { if (verbose_) { - Info<< " Adding cells according to point sets: " + Info<< " Adding cells according to point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } @@ -185,7 +202,8 @@ void Foam::pointToCell::applyToSet { if (verbose_) { - Info<< " Removing cells according to point sets: " + Info<< " Removing cells according to point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } diff --git a/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.H b/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.H index 7d5432501d8846a91f2d6751781580b0c51cf512..5fd938e079d1577b6f3890ceb5e561e384b87dc4 100644 --- a/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.H +++ b/src/meshTools/topoSet/cellSources/pointToCell/pointToCell.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -62,8 +62,19 @@ Usage ... ); - // Option-2 - set <pointSetName>; + // Option-3 + zones + ( + <pointZoneName0> + <pointZoneName1> + ... + ); + + // Option-3 + set <pointSetName>; + + // Option-4 + zone <pointZoneName>; } \endverbatim @@ -90,17 +101,15 @@ Usage edge | Cells using an edge with both points in pointSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input pointSets | wordList | cond'l | - + zones | Names of input pointZones | wordList | cond'l | - set | Name of input pointSet | word | cond'l | - + zone | Name of input pointZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetCellSource @@ -110,8 +119,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef pointToCell_H -#define pointToCell_H +#ifndef Foam_pointToCell_H +#define Foam_pointToCell_H #include "topoSetCellSource.H" #include "Enum.H" @@ -148,15 +157,27 @@ private: static const Enum<pointAction> pointActionNames_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Selection type pointAction option_; // Private Member Functions + //- Depending on point to cell option add to or delete from cellSet. + template<class Selector> + void combineImpl + ( + topoSet& set, + const bool add, + const Selector& pointLabels + ) const; + //- Depending on point-to-cell option add to or delete from cellSet. void combine(topoSet& set, const bool add, const word& setName) const; diff --git a/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.C b/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.C index 0089668c738eaa70c28a1acd8b0fe35a8003635c..26270cf1ef98dd9d25cc6704e9e306531ed30ce8 100644 --- a/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.C +++ b/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -346,18 +346,31 @@ void Foam::regionToCell::combine(topoSet& set, const bool add) const // Note: wip. Select cells first boolList selectedCell(mesh_.nCells(), true); - if (setName_.size() && setName_ != "none") + if (!setName_.empty() && setName_ != "none") { - Info<< " Loading subset " << setName_ - << " to delimit search region." - << endl; - - cellSet subSet(mesh_, setName_); + if (isZone_) + { + Info<< " Using cellZone " << setName_ + << " to delimit search region." << nl; - selectedCell = false; - for (const label celli : subSet) + selectedCell = false; + for (const label celli : mesh_.cellZones()[setName_]) + { + selectedCell[celli] = true; + } + } + else { - selectedCell[celli] = true; + Info<< " Loading cellSet " << setName_ + << " to delimit search region." << nl; + + cellSet subSet(mesh_, setName_, IOobject::NO_REGISTER); + + selectedCell = false; + for (const label celli : subSet) + { + selectedCell[celli] = true; + } } } @@ -392,6 +405,7 @@ Foam::regionToCell::regionToCell : topoSetCellSource(mesh), setName_(setName), + isZone_(false), insidePoints_(insidePoints), nErode_(nErode) {} @@ -403,14 +417,25 @@ Foam::regionToCell::regionToCell const dictionary& dict ) : - topoSetCellSource(mesh), - setName_(dict.getOrDefault<word>("set", "none")), + topoSetCellSource(mesh, dict), + setName_(), + isZone_(false), insidePoints_ ( dict.getCompat<pointField>("insidePoints", {{ "insidePoint", 0 }}) ), nErode_(dict.getCheckOrDefault<label>("nErode", 0, labelMinMax::ge(0))) -{} +{ + // A single "set" or "zone" only + if (!dict.readIfPresent("set", setName_)) + { + // Optional entry + if (dict.readIfPresent("zone", setName_)) + { + isZone_ = true; + } + } +} Foam::regionToCell::regionToCell @@ -421,6 +446,7 @@ Foam::regionToCell::regionToCell : topoSetCellSource(mesh), setName_(checkIs(is)), + isZone_(false), insidePoints_(checkIs(is)), nErode_(readLabel(checkIs(is))) {} diff --git a/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.H b/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.H index 4d273ffa5b71bb751cc4105beeae50018d45e2dc..ae22b4a3abda4d3f8df8b41934e1c26d5f916dba 100644 --- a/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.H +++ b/src/meshTools/topoSet/cellSources/regionToCell/regionToCell.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,6 +59,7 @@ Usage // Optional entries set <cellSetName>; + zone <cellZoneName>; nErode <label>; } \endverbatim @@ -72,7 +73,7 @@ Usage source | Source name: regionToCell | word | yes | - insidePoints | Coordinate(s) that is inside connected region <!-- --> | vectorList | yes | - - set | Name of cellSet giving mesh subset | word | no | none + set / zone | Name of cellSet / zone giving mesh subset | word | no | - nErode | Number of cell layers to erode mesh to detect holes <!-- --> in the mesh - set to 0 if not used | label | no | 0 \endtable @@ -93,8 +94,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef regionToCell_H -#define regionToCell_H +#ifndef Foam_regionToCell_H +#define Foam_regionToCell_H #include "topoSetCellSource.H" #include "boolList.H" @@ -119,8 +120,11 @@ class regionToCell //- Add usage string static addToUsageTable usage_; - //- Name of cellSet to keep to - const word setName_; + //- Name of cellSet or cellZone to keep to + word setName_; + + //- Is name a set or a zone + bool isZone_; //- Coordinate(s) that is inside connected region const pointField insidePoints_; diff --git a/src/meshTools/topoSet/cellSources/rotatedBoxToCell/rotatedBoxToCell.C b/src/meshTools/topoSet/cellSources/rotatedBoxToCell/rotatedBoxToCell.C index e422dfa6063854cf268ceb5ad5be0d29c0075675..fda69b76622a6ac150537684583bfe80bee48c5b 100644 --- a/src/meshTools/topoSet/cellSources/rotatedBoxToCell/rotatedBoxToCell.C +++ b/src/meshTools/topoSet/cellSources/rotatedBoxToCell/rotatedBoxToCell.C @@ -96,7 +96,8 @@ void Foam::rotatedBoxToCell::combine(topoSet& set, const bool add) const // Check whether cell centre is inside all faces of box. - const pointField& ctrs = mesh_.cellCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); forAll(ctrs, celli) { @@ -146,14 +147,11 @@ Foam::rotatedBoxToCell::rotatedBoxToCell const dictionary& dict ) : - rotatedBoxToCell - ( - mesh, - dict.get<point>("origin"), - dict.get<vector>("i"), - dict.get<vector>("j"), - dict.get<vector>("k") - ) + topoSetCellSource(mesh, dict), + origin_(dict.get<point>("origin")), + i_(dict.get<vector>("i")), + j_(dict.get<vector>("j")), + k_(dict.get<vector>("k")) {} diff --git a/src/meshTools/topoSet/cellSources/searchableSurfaceToCell/searchableSurfaceToCell.C b/src/meshTools/topoSet/cellSources/searchableSurfaceToCell/searchableSurfaceToCell.C index 657ccad736aaf551739366b00674b05220251f2b..331254810fece7761da29a947b64dde0b255e394 100644 --- a/src/meshTools/topoSet/cellSources/searchableSurfaceToCell/searchableSurfaceToCell.C +++ b/src/meshTools/topoSet/cellSources/searchableSurfaceToCell/searchableSurfaceToCell.C @@ -102,9 +102,13 @@ void Foam::searchableSurfaceToCell::combine(topoSet& set, const bool add) const { return; } - const pointField& ctrs = mesh_.cellCentres(); + + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); + const searchableSurface& s = *surf_; + // Cell centres within the enclosing volumes List<volumeType> volTypes; @@ -130,7 +134,7 @@ Foam::searchableSurfaceToCell::searchableSurfaceToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), surf_ ( searchableSurface::New diff --git a/src/meshTools/topoSet/cellSources/shapeToCell/shapeToCell.C b/src/meshTools/topoSet/cellSources/shapeToCell/shapeToCell.C index c9fba49e035b82ea57ba67cf52ca332f1c5a5258..e36ef939babddb1830eef601ba4b465f3bdc62b3 100644 --- a/src/meshTools/topoSet/cellSources/shapeToCell/shapeToCell.C +++ b/src/meshTools/topoSet/cellSources/shapeToCell/shapeToCell.C @@ -116,7 +116,8 @@ Foam::shapeToCell::shapeToCell const dictionary& dict ) : - shapeToCell(mesh, dict.getCompat<word>("shape", {{"type", 1806}})) + topoSetCellSource(mesh, dict), + shape_(dict.getCompat<word>("shape", {{"type", 1806}})) {} diff --git a/src/meshTools/topoSet/cellSources/sphereToCell/sphereToCell.C b/src/meshTools/topoSet/cellSources/sphereToCell/sphereToCell.C index f4b7012d71f3cf357ee540d8774ced090367987d..abbc2d1a2e7bdbb1b7cc7a718b965f0622702c3e 100644 --- a/src/meshTools/topoSet/cellSources/sphereToCell/sphereToCell.C +++ b/src/meshTools/topoSet/cellSources/sphereToCell/sphereToCell.C @@ -68,7 +68,8 @@ Foam::topoSetSource::addToUsageTable Foam::sphereToCell::usage_ void Foam::sphereToCell::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.cellCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.cellCentres())); + const pointField& ctrs = tctrs(); const scalar orad2 = sqr(radius_); const scalar irad2 = innerRadius_ > 0 ? sqr(innerRadius_) : -1; @@ -110,11 +111,11 @@ Foam::sphereToCell::sphereToCell const dictionary& dict ) : - sphereToCell + topoSetCellSource(mesh, dict), + origin_(dict.getCompat<vector>("origin", {{"centre", -1806}})), + radius_(dict.getCheck<scalar>("radius", scalarMinMax::ge(0))), + innerRadius_ ( - mesh, - dict.getCompat<vector>("origin", {{"centre", -1806}}), - dict.getCheck<scalar>("radius", scalarMinMax::ge(0)), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/cellSources/surfaceToCell/surfaceToCell.C b/src/meshTools/topoSet/cellSources/surfaceToCell/surfaceToCell.C index cec0c476d1e3eff57e9134021b8c2ddb3f149539..af18f129c3c4006adc29bc70234917f1f528422d 100644 --- a/src/meshTools/topoSet/cellSources/surfaceToCell/surfaceToCell.C +++ b/src/meshTools/topoSet/cellSources/surfaceToCell/surfaceToCell.C @@ -434,7 +434,7 @@ Foam::surfaceToCell::surfaceToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), surfName_(dict.get<fileName>("file").expand()), outsidePoints_(dict.get<pointField>("outsidePoints")), includeCut_(dict.get<bool>("includeCut")), diff --git a/src/meshTools/topoSet/cellSources/targetVolumeToCell/targetVolumeToCell.C b/src/meshTools/topoSet/cellSources/targetVolumeToCell/targetVolumeToCell.C index e222c5d481790cf5b544c52c60573866c293716b..2d7aa87f0155356926797d1ecf13c3112c7f64cb 100644 --- a/src/meshTools/topoSet/cellSources/targetVolumeToCell/targetVolumeToCell.C +++ b/src/meshTools/topoSet/cellSources/targetVolumeToCell/targetVolumeToCell.C @@ -133,13 +133,13 @@ void Foam::targetVolumeToCell::combine(topoSet& set, const bool add) const << maskSetName_ << endl; } - maskSet = false; - cellSet subset(mesh_, maskSetName_); - + cellSet subset(mesh_, maskSetName_, IOobject::NO_REGISTER); const labelHashSet& cellLabels = subset; + + maskSet = false; maskSet.setMany(cellLabels.begin(), cellLabels.end()); - nTotCells = returnReduce(subset.size(), sumOp<label>()); + nTotCells = returnReduce(cellLabels.size(), sumOp<label>()); } @@ -301,13 +301,10 @@ Foam::targetVolumeToCell::targetVolumeToCell const dictionary& dict ) : - targetVolumeToCell - ( - mesh, - dict.getCheck<scalar>("volume", scalarMinMax::ge(0)), - dict.get<vector>("normal"), - dict.getOrDefault<word>("set", "") - ) + topoSetCellSource(mesh, dict), + vol_(dict.getCheck<scalar>("volume", scalarMinMax::ge(0))), + normal_(dict.get<vector>("normal")), + maskSetName_(dict.getOrDefault<word>("set", "")) {} diff --git a/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.C b/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.C index 37777f051306cc7264cd1d6b94c122fdd9cf2251..774a8929e5742115f9c174472e3f975a0563528c 100644 --- a/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.C +++ b/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.C @@ -181,7 +181,7 @@ Foam::zoneToCell::zoneToCell const dictionary& dict ) : - topoSetCellSource(mesh), + topoSetCellSource(mesh, dict), zoneMatcher_() { // Look for 'zones' and 'zone', but accept 'name' as well diff --git a/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.H b/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.H index a83ce416ecac4d6096059e3d6de99a5f89b6c5e5..e9c2e1285542f10a7a0328d02bc81219290635e1 100644 --- a/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.H +++ b/src/meshTools/topoSet/cellSources/zoneToCell/zoneToCell.H @@ -50,7 +50,7 @@ Usage source zoneToCell; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 zones diff --git a/src/meshTools/topoSet/cellZoneSources/setToCellZone/setToCellZone.C b/src/meshTools/topoSet/cellZoneSources/setToCellZone/setToCellZone.C index 9cd63b354813a0e526cc71e8756de5896d3cb02f..d12ccf64fe70be408574cc6ec75e622c1f9c6e04 100644 --- a/src/meshTools/topoSet/cellZoneSources/setToCellZone/setToCellZone.C +++ b/src/meshTools/topoSet/cellZoneSources/setToCellZone/setToCellZone.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,7 +71,7 @@ Foam::setToCellZone::setToCellZone const dictionary& dict ) : - topoSetCellZoneSource(mesh), + topoSetCellZoneSource(mesh, dict), setName_(dict.get<word>("set")) {} @@ -114,16 +114,16 @@ void Foam::setToCellZone::applyToSet } // Load the sets - cellSet fSet(mesh_, setName_); + cellSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); // Start off from copy DynamicList<label> newAddressing(zoneSet.addressing()); - for (const label celli : fSet) + for (const label celli : loadedSet) { if (!zoneSet.found(celli)) { - newAddressing.append(celli); + newAddressing.push_back(celli); } } @@ -139,16 +139,16 @@ void Foam::setToCellZone::applyToSet } // Load the set - cellSet loadedSet(mesh_, setName_); + cellSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); // Start off empty DynamicList<label> newAddressing(zoneSet.addressing().size()); - forAll(zoneSet.addressing(), i) + for (const label celli : zoneSet.addressing()) { - if (!loadedSet.found(zoneSet.addressing()[i])) + if (!loadedSet.found(celli)) { - newAddressing.append(zoneSet.addressing()[i]); + newAddressing.push_back(celli); } } zoneSet.addressing().transfer(newAddressing); diff --git a/src/meshTools/topoSet/faceSources/boundaryToFace/boundaryToFace.C b/src/meshTools/topoSet/faceSources/boundaryToFace/boundaryToFace.C index 5badb76d4f8d8d3360c1c14f56e9e80c7795d0b8..cb80cbc90e30016707d0804bf496e8e33f7401ab 100644 --- a/src/meshTools/topoSet/faceSources/boundaryToFace/boundaryToFace.C +++ b/src/meshTools/topoSet/faceSources/boundaryToFace/boundaryToFace.C @@ -91,10 +91,10 @@ Foam::boundaryToFace::boundaryToFace(const polyMesh& mesh) Foam::boundaryToFace::boundaryToFace ( const polyMesh& mesh, - const dictionary& + const dictionary& dict ) : - topoSetFaceSource(mesh) + topoSetFaceSource(mesh, dict) {} diff --git a/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.C b/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.C index b277a6e90c16428c48d8017b9b6a028bbe536567..9f5e75829304b603b4b2a451747a50221f9d4f77 100644 --- a/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.C +++ b/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.C @@ -92,7 +92,8 @@ static void readBoxDim(const dictionary& dict, treeBoundBox& bb) void Foam::boxToFace::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.faceCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.faceCentres())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -138,7 +139,7 @@ Foam::boxToFace::boxToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), bbs_() { // Accept 'boxes', 'box' or 'min/max' diff --git a/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.H b/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.H index ecd4b0b305b277527f4b5049db616559ffbbcb14..3df24f8b5edb56f9be10feae8eee8e389600c4db 100644 --- a/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.H +++ b/src/meshTools/topoSet/faceSources/boxToFace/boxToFace.H @@ -50,7 +50,7 @@ Usage source boxToFace; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 boxes diff --git a/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.C b/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.C index b66de8c2d6655faaaf893e3fc79a00f2e35b3d7e..1777c0de56964e5c829f30a809f7d5e0bea4598c 100644 --- a/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.C +++ b/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -68,23 +68,14 @@ Foam::cellToFace::cellActionNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::cellToFace::combine +template<class Selector> +void Foam::cellToFace::combineImpl ( topoSet& set, const bool add, - const word& setName + const Selector& cellLabels ) const { - // Load the set - if (!exists(mesh_.time().path()/topoSet::localPath(mesh_, setName))) - { - SeriousError<< "Cannot load set " - << setName << endl; - } - - cellSet loadedSet(mesh_, setName); - const labelHashSet& cellLabels = loadedSet; - if (option_ == ALL) { // Add all faces from cell @@ -212,6 +203,36 @@ void Foam::cellToFace::combine } +void Foam::cellToFace::combine +( + topoSet& set, + const bool add, + const word& setName +) const +{ + if (isZone_) + { + const labelList& cellLabels = mesh_.cellZones()[setName]; + + combineImpl(set, add, cellLabels); + } + else + { + // Load the set + if (!exists(mesh_.time().path()/topoSet::localPath(mesh_, setName))) + { + SeriousError + << "Cannot load set " << setName << endl; + } + + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& cellLabels = loadedSet; + + combineImpl(set, add, cellLabels); + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::cellToFace::cellToFace @@ -222,7 +243,8 @@ Foam::cellToFace::cellToFace ) : topoSetFaceSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -233,17 +255,11 @@ Foam::cellToFace::cellToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(cellActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::cellToFace::cellToFace @@ -253,7 +269,8 @@ Foam::cellToFace::cellToFace ) : topoSetFaceSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(cellActionNames_.read(checkIs(is))) {} @@ -270,7 +287,8 @@ void Foam::cellToFace::applyToSet { if (verbose_) { - Info<< " Adding faces according to cell sets: " + Info<< " Adding faces according to cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } @@ -283,7 +301,8 @@ void Foam::cellToFace::applyToSet { if (verbose_) { - Info<< " Removing faces according to cell sets: " + Info<< " Removing faces according to cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } diff --git a/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.H b/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.H index d1c5638a597043c357a99e9bca83eb15fc339b48..5b197e15a278698eabf857d6735c00dc40ad2563 100644 --- a/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.H +++ b/src/meshTools/topoSet/faceSources/cellToFace/cellToFace.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,7 +51,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -62,7 +62,18 @@ Usage ); // Option-2 - set <cellSetName>; + zones + ( + <cellZoneName0> + <cellZoneName1> + ... + ); + + // Option-3 + set <cellSetName>; + + // Option-4 + zone <cellZoneName>; } \endverbatim @@ -90,16 +101,16 @@ Usage outside | Faces with only one neighbour in the cellSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Reqd | Deflt sets | Names of input cellSets | wordList | choice | - + zones | Names of input cellZones | wordList | cond'l | - set | Name of input cellSet | word | choice | - + zone | Name of input cellZone | word | cond'l | - \endverbatim Note - - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - The \c outside option applies to the cellSets individually. See also @@ -149,9 +160,12 @@ private: static const Enum<cellAction> cellActionNames_; - //- Names of cellSets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Selection type cellAction option_; @@ -159,6 +173,15 @@ private: // Private Member Functions //- Depending on face to cell option add to or delete from cellSet. + template<class Selector> + void combineImpl + ( + topoSet& set, + const bool add, + const Selector& cellLabels + ) const; + + //- Depending on face to cell option add to or delete from set. void combine(topoSet& set, const bool add, const word& setName) const; diff --git a/src/meshTools/topoSet/faceSources/clipPlaneToFace/clipPlaneToFace.C b/src/meshTools/topoSet/faceSources/clipPlaneToFace/clipPlaneToFace.C index 004a4d859a2626c96d74857ee52cf8ba3718ae41..64a8f83ff2812ff24bcbf0c8c15237985ee1e885 100644 --- a/src/meshTools/topoSet/faceSources/clipPlaneToFace/clipPlaneToFace.C +++ b/src/meshTools/topoSet/faceSources/clipPlaneToFace/clipPlaneToFace.C @@ -69,7 +69,8 @@ void Foam::clipPlaneToFace::combine(topoSet& set, const bool add) const { // Face centres above the plane - const pointField& ctrs = mesh_.faceCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.faceCentres())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -102,12 +103,9 @@ Foam::clipPlaneToFace::clipPlaneToFace const dictionary& dict ) : - clipPlaneToFace - ( - mesh, - dict.get<vector>("point"), - dict.get<vector>("normal") - ) + topoSetFaceSource(mesh, dict), + point_(dict.get<vector>("point")), + normal_(dict.get<vector>("normal")) {} diff --git a/src/meshTools/topoSet/faceSources/cylinderToFace/cylinderToFace.C b/src/meshTools/topoSet/faceSources/cylinderToFace/cylinderToFace.C index 48100d38036020a7830d434e731b7a3cb8b251f5..c3710f3d086513a8782bf0ad969209d07a400665 100644 --- a/src/meshTools/topoSet/faceSources/cylinderToFace/cylinderToFace.C +++ b/src/meshTools/topoSet/faceSources/cylinderToFace/cylinderToFace.C @@ -68,7 +68,8 @@ Foam::topoSetSource::addToUsageTable Foam::cylinderToFace::usage_ void Foam::cylinderToFace::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.faceCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.faceCentres())); + const pointField& ctrs = tctrs(); const vector axis = (point2_ - point1_); const scalar magAxis2 = magSqr(axis); @@ -127,12 +128,12 @@ Foam::cylinderToFace::cylinderToFace const dictionary& dict ) : - cylinderToFace + topoSetFaceSource(mesh, dict), + point1_(dict.getCompat<point>("point1", {{"p1", -2112}})), + point2_(dict.getCompat<point>("point2", {{"p2", -2112}})), + radius_(dict.getCompat<scalar>("radius", {{"outerRadius", -2112}})), + innerRadius_ ( - mesh, - dict.getCompat<point>("point1", {{"p1", -2112}}), - dict.getCompat<point>("point2", {{"p2", -2112}}), - dict.getCompat<scalar>("radius", {{"outerRadius", -2112}}), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.C b/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.C index 4abc17fac603ff80f8999cce31643dc620aa0411..ef1cc9cdaceb877d181ce8cbbc146094e4c28655 100644 --- a/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.C +++ b/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,8 @@ Foam::faceToFace::faceToFace ) : topoSetFaceSource(mesh), - names_(one{}, setName) + names_(Foam::one{}, setName), + isZone_(false) {} @@ -70,16 +71,10 @@ Foam::faceToFace::faceToFace const dictionary& dict ) : - topoSetFaceSource(mesh), - names_() -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} + topoSetFaceSource(mesh, dict), + names_(), + isZone_(topoSetSource::readNames(dict, names_)) +{} Foam::faceToFace::faceToFace @@ -89,7 +84,8 @@ Foam::faceToFace::faceToFace ) : topoSetFaceSource(mesh), - names_(one{}, word(checkIs(is))) + names_(Foam::one{}, word(checkIs(is))), + isZone_(false) {} @@ -105,30 +101,46 @@ void Foam::faceToFace::applyToSet { if (verbose_) { - Info<< " Adding all elements of face sets: " + Info<< " Adding all elements of face " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - faceSet loadedSet(mesh_, setName); - - set.addSet(loadedSet); + if (isZone_) + { + set.addSet(mesh_.faceZones()[setName]); + } + else + { + faceSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + + set.addSet(loadedSet); + } } } else if (action == topoSetSource::SUBTRACT) { if (verbose_) { - Info<< " Removing all elements of face sets: " + Info<< " Removing all elements of face " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - faceSet loadedSet(mesh_, setName); - - set.subtractSet(loadedSet); + if (isZone_) + { + set.subtractSet(mesh_.faceZones()[setName]); + } + else + { + faceSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + + set.subtractSet(loadedSet); + } } } } diff --git a/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.H b/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.H index 67642a41ea947864ba5adfeb4089e667c76bb46e..b02309df68ee6813790b17ee416e579d6588d7a9 100644 --- a/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.H +++ b/src/meshTools/topoSet/faceSources/faceToFace/faceToFace.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,7 +50,7 @@ Usage source faceToFace; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -61,7 +61,18 @@ Usage ); // Option-2 + zones + ( + <faceZoneName0> + <faceZoneName1> + ... + ); + + // Option-3 set <faceSetName>; + + // Option-4 + zone <faceZoneName>; } \endverbatim @@ -81,11 +92,13 @@ Usage subtract | Remove selected faces from this faceSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input faceSets | wordList | cond'l | - + zones | Names of input faceZones | wordList | cond'l | - set | Name of input faceSet | word | cond'l | - + zone | Name of input faceZone | word | cond'l | - \endverbatim Note @@ -101,8 +114,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef faceToFace_H -#define faceToFace_H +#ifndef Foam_faceToFace_H +#define Foam_faceToFace_H #include "topoSetFaceSource.H" @@ -124,9 +137,12 @@ class faceToFace //- Add usage string static addToUsageTable usage_; - //- Names of faceSets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + public: diff --git a/src/meshTools/topoSet/faceSources/holeToFace/holeToFace.C b/src/meshTools/topoSet/faceSources/holeToFace/holeToFace.C index 8ec3dac42c1938d0f378c9e69811d716bb01ca9a..9b70b6698e6e09202a840bcb9f414ea4c5c88b59 100644 --- a/src/meshTools/topoSet/faceSources/holeToFace/holeToFace.C +++ b/src/meshTools/topoSet/faceSources/holeToFace/holeToFace.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -1095,7 +1095,7 @@ Foam::holeToFace::holeToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), zonePoints_(dict.get<List<pointField>>("points")), blockedFaceNames_(), blockedCellNames_(), @@ -1148,8 +1148,8 @@ void Foam::holeToFace::applyToSet bitSet isBlockedFace(mesh_.nFaces()); for (const word& setName : blockedFaceNames_) { - const faceSet loadedSet(mesh_, setName); - isBlockedFace.set(loadedSet.toc()); + faceSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + isBlockedFace.setMany(loadedSet.begin(), loadedSet.end()); } // Optional initial blocked cells @@ -1158,8 +1158,8 @@ void Foam::holeToFace::applyToSet { for (const word& setName : blockedCellNames_) { - const cellSet loadedSet(mesh_, setName); - isCandidateCell.set(loadedSet.toc()); + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + isCandidateCell.setMany(loadedSet.begin(), loadedSet.end()); } } else diff --git a/src/meshTools/topoSet/faceSources/labelToFace/labelToFace.C b/src/meshTools/topoSet/faceSources/labelToFace/labelToFace.C index 148b225d6c8e58eaad672a03b651d12155d4d31d..dee5b38b17a0c22eea93a813203d1ca18d107820 100644 --- a/src/meshTools/topoSet/faceSources/labelToFace/labelToFace.C +++ b/src/meshTools/topoSet/faceSources/labelToFace/labelToFace.C @@ -94,11 +94,8 @@ Foam::labelToFace::labelToFace const dictionary& dict ) : - labelToFace - ( - mesh, - dict.get<labelList>("value") - ) + topoSetFaceSource(mesh, dict), + labels_(dict.get<labelList>("value")) {} diff --git a/src/meshTools/topoSet/faceSources/normalToFace/normalToFace.C b/src/meshTools/topoSet/faceSources/normalToFace/normalToFace.C index b376426f9a3ca9c9c44ec71d052cc3f547ae5c53..077b981e02b813dd90697b0d70c9edeef2fe1457 100644 --- a/src/meshTools/topoSet/faceSources/normalToFace/normalToFace.C +++ b/src/meshTools/topoSet/faceSources/normalToFace/normalToFace.C @@ -100,12 +100,9 @@ Foam::normalToFace::normalToFace Foam::normalToFace::normalToFace(const polyMesh& mesh, const dictionary& dict) : - normalToFace - ( - mesh, - dict.get<vector>("normal"), - dict.get<scalar>("cos") - ) + topoSetFaceSource(mesh, dict), + normal_(dict.get<vector>("normal")), + tol_(dict.get<scalar>("cos")) { setNormal(); } diff --git a/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.C b/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.C index 8fe00702f55344591b02e026b50f012ddf8f4fa3..a52e9168eaae1816d659709304362f1db7a8741c 100644 --- a/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.C +++ b/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.C @@ -121,7 +121,7 @@ Foam::patchToFace::patchToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), selectedPatches_() { // Look for 'patches' and 'patch', but accept 'name' as well diff --git a/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.H b/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.H index 844824483d78cb72b3c5918bb2c2c0e3c3e2c839..792fad47fc6e990f3fb6657ba8eb619e212d5199 100644 --- a/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.H +++ b/src/meshTools/topoSet/faceSources/patchToFace/patchToFace.H @@ -49,7 +49,7 @@ Usage source patchToFace; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 patches diff --git a/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.C b/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.C index cf0b8f5a14ca35ce8f8504697140e7bbac4f430a..4c2f35d51e21b1e2e245735a9993814f9eef14f7 100644 --- a/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.C +++ b/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -82,18 +82,14 @@ Foam::pointToFace::pointActionNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::pointToFace::combine +template<class Selector> +void Foam::pointToFace::combineImpl ( topoSet& set, const bool add, - const word& setName + const Selector& pointLabels ) const { - // Load the set - pointSet loadedSet(mesh_, setName); - - const labelHashSet& pointLabels = loadedSet; - if (option_ == ANY) { // Add faces with any point in loadedSet @@ -160,6 +156,30 @@ void Foam::pointToFace::combine } +void Foam::pointToFace::combine +( + topoSet& set, + const bool add, + const word& setName +) const +{ + if (isZone_) + { + const labelList& pointLabels = mesh_.pointZones()[setName]; + + combineImpl(set, add, pointLabels); + } + else + { + // Load the set + pointSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& pointLabels = loadedSet; + + combineImpl(set, add, pointLabels); + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::pointToFace::pointToFace @@ -170,7 +190,8 @@ Foam::pointToFace::pointToFace ) : topoSetFaceSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -181,17 +202,11 @@ Foam::pointToFace::pointToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(pointActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::pointToFace::pointToFace @@ -201,7 +216,8 @@ Foam::pointToFace::pointToFace ) : topoSetFaceSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(pointActionNames_.read(checkIs(is))) {} @@ -218,7 +234,8 @@ void Foam::pointToFace::applyToSet { if (verbose_) { - Info<< " Adding faces according to point sets: " + Info<< " Adding faces according to point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } @@ -231,7 +248,8 @@ void Foam::pointToFace::applyToSet { if (verbose_) { - Info<< " Removing faces according to point sets: " + Info<< " Removing faces according to point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } diff --git a/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.H b/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.H index ea632bc4819003531d8446acc42fb387e47830e6..ebf18e4d35b5bfcb1e2d5c915bed63927fe29b2e 100644 --- a/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.H +++ b/src/meshTools/topoSet/faceSources/pointToFace/pointToFace.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -63,7 +63,18 @@ Usage ); // Option-2 - set <pointSetName>; + zones + ( + <pointZoneName0> + <pointZoneName1> + ... + ); + + // Option-3 + set <pointSetName>; + + // Option-4 + zone <pointZoneName>; } \endverbatim @@ -91,17 +102,15 @@ Usage all | All points in the pointSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input pointSets | wordList | cond'l | - + zones | Names of input pointZones | wordList | cond'l | - set | Name of input pointSet | word | cond'l | - + zone | Name of input pointZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetFaceSource @@ -111,8 +120,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef pointToFace_H -#define pointToFace_H +#ifndef Foam_pointToFace_H +#define Foam_pointToFace_H #include "topoSetFaceSource.H" #include "Enum.H" @@ -149,15 +158,27 @@ private: static const Enum<pointAction> pointActionNames_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Option pointAction option_; // Private Member Functions + //- Depending on option add to or delete from set. + template<class Selector> + void combineImpl + ( + topoSet& set, + const bool add, + const Selector& pointLabels + ) const; + //- Depending on face to cell option add to or delete from faceSet. void combine(topoSet& set, const bool add, const word& setName) const; diff --git a/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.C b/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.C index 53aae6f23efb99687b7178d5e85f128a63a349c7..e35793c8dd73fe1f0e6bb4abe6e194e2e3ca54c9 100644 --- a/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.C +++ b/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -136,19 +136,22 @@ void Foam::regionToFace::markZone } -void Foam::regionToFace::combine(topoSet& set, const bool add) const +void Foam::regionToFace::combine +( + topoSet& set, + const bool add, + const labelUList& ids +) const { if (verbose_) { Info<< " Loading subset " << setName_ - << " to delimit search region." << endl; + << " to delimit search region." << nl; } - faceSet subSet(mesh_, setName_); - indirectPrimitivePatch patch ( - IndirectList<face>(mesh_.faces(), subSet.toc()), + IndirectList<face>(mesh_.faces(), ids), mesh_.points() ); @@ -158,7 +161,7 @@ void Foam::regionToFace::combine(topoSet& set, const bool add) const Tuple2<scalar, label> ( sqr(GREAT), - Pstream::myProcNo() + UPstream::myProcNo() ) ); @@ -217,6 +220,7 @@ Foam::regionToFace::regionToFace : topoSetFaceSource(mesh), setName_(setName), + isZone_(false), nearPoint_(nearPoint) {} @@ -227,10 +231,19 @@ Foam::regionToFace::regionToFace const dictionary& dict ) : - topoSetFaceSource(mesh), - setName_(dict.get<word>("set")), + topoSetFaceSource(mesh, dict), + setName_(), + isZone_(false), nearPoint_(dict.get<point>("nearPoint")) -{} +{ + // A single "set" or "zone" only + if (!dict.readIfPresent("set", setName_)) + { + // Mandatory entry + dict.readEntry("zone", setName_); + isZone_ = true; + } +} Foam::regionToFace::regionToFace @@ -241,6 +254,7 @@ Foam::regionToFace::regionToFace : topoSetFaceSource(mesh), setName_(checkIs(is)), + isZone_(false), nearPoint_(checkIs(is)) {} @@ -257,23 +271,41 @@ void Foam::regionToFace::applyToSet { if (verbose_) { - Info<< " Adding all faces of connected region of set " + Info<< " Adding all faces of connected region of " + << (isZone_ ? "zone " : "set ") << setName_ << " starting from point " << nearPoint_ << " ..." << endl; } - combine(set, true); + if (isZone_) + { + combine(set, true, mesh_.faceZones()[setName_].addressing()); + } + else + { + faceSet subSet(mesh_, setName_, IOobject::NO_REGISTER); + combine(set, true, subSet.sortedToc()); + } } else if (action == topoSetSource::SUBTRACT) { if (verbose_) { - Info<< " Removing all cells of connected region of set " + Info<< " Removing all cells of connected region of " + << (isZone_ ? "zone " : "set ") << setName_ << " starting from point " << nearPoint_ << " ..." << endl; } - combine(set, false); + if (isZone_) + { + combine(set, false, mesh_.faceZones()[setName_].addressing()); + } + else + { + faceSet subSet(mesh_, setName_, IOobject::NO_REGISTER); + combine(set, false, subSet.sortedToc()); + } } } diff --git a/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.H b/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.H index 9fafcb87e970070c8153eb85231d66e0a60d054e..b6a21c3ddff633c475f022184cfa2b48182edb17 100644 --- a/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.H +++ b/src/meshTools/topoSet/faceSources/regionToFace/regionToFace.H @@ -61,7 +61,7 @@ Usage type | Type name: faceSet | word | yes | - action | Action applied on faces - see below | word | yes | - source | Source name: regionToFace | word | yes | - - set | Name of faceSet restricting search | word | yes | - + set / zone | Name of faceSet / zone restricting search | word | yes | - nearPoint | The point on/near to the region | vector | yes | - \endtable @@ -81,8 +81,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef regionToFace_H -#define regionToFace_H +#ifndef Foam_regionToFace_H +#define Foam_regionToFace_H #include "topoSetFaceSource.H" #include "indirectPrimitivePatch.H" @@ -105,11 +105,14 @@ class regionToFace //- Add usage string static addToUsageTable usage_; - //- Name of set to use + //- Name of set or zone to use word setName_; + //- Is name a set or a zone + bool isZone_; + //- Coordinate that is nearest/on connected region - point nearPoint_; + const point nearPoint_; // Private Member Functions @@ -124,7 +127,12 @@ class regionToFace labelList& faceZone ) const; - void combine(topoSet& set, const bool add) const; + void combine + ( + topoSet& set, + const bool add, + const labelUList& ids + ) const; public: diff --git a/src/meshTools/topoSet/faceSources/searchableSurfaceToFace/searchableSurfaceToFace.C b/src/meshTools/topoSet/faceSources/searchableSurfaceToFace/searchableSurfaceToFace.C index 2299b79483b7b5da772071238e9bfecf7e412a73..2a0f54c234b8ed08b5afbe646283ff2b27ff1e51 100644 --- a/src/meshTools/topoSet/faceSources/searchableSurfaceToFace/searchableSurfaceToFace.C +++ b/src/meshTools/topoSet/faceSources/searchableSurfaceToFace/searchableSurfaceToFace.C @@ -102,7 +102,9 @@ void Foam::searchableSurfaceToFace::combine(topoSet& set, const bool add) const { return; } - const pointField& ctrs = mesh_.faceCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.faceCentres())); + const pointField& ctrs = tctrs(); + const searchableSurface& s = *surf_; // Face centres within the enclosing volumes @@ -130,7 +132,7 @@ Foam::searchableSurfaceToFace::searchableSurfaceToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), surf_ ( searchableSurface::New diff --git a/src/meshTools/topoSet/faceSources/sphereToFace/sphereToFace.C b/src/meshTools/topoSet/faceSources/sphereToFace/sphereToFace.C index f7b0079c089464745bf75d0435930514bbae2e6f..51ef63778def515902d9d1ad8b9d6df728f2ce11 100644 --- a/src/meshTools/topoSet/faceSources/sphereToFace/sphereToFace.C +++ b/src/meshTools/topoSet/faceSources/sphereToFace/sphereToFace.C @@ -67,7 +67,8 @@ Foam::topoSetSource::addToUsageTable Foam::sphereToFace::usage_ void Foam::sphereToFace::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.faceCentres(); + const tmp<pointField> tctrs(this->transform(mesh_.faceCentres())); + const pointField& ctrs = tctrs(); const scalar orad2 = sqr(radius_); const scalar irad2 = innerRadius_ > 0 ? sqr(innerRadius_) : -1; @@ -109,11 +110,11 @@ Foam::sphereToFace::sphereToFace const dictionary& dict ) : - sphereToFace + topoSetFaceSource(mesh, dict), + origin_(dict.getCompat<vector>("origin", {{"centre", -1806}})), + radius_(dict.getCheck<scalar>("radius", scalarMinMax::ge(0))), + innerRadius_ ( - mesh, - dict.getCompat<vector>("origin", {{"centre", -1806}}), - dict.getCheck<scalar>("radius", scalarMinMax::ge(0)), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.C b/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.C index 3ce8d9d7afe40cb639046de77d3ecce974ae8ac7..a4c7ee20499799f5703f648a1e82815fe7c9a27b 100644 --- a/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.C +++ b/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.C @@ -183,7 +183,7 @@ Foam::zoneToFace::zoneToFace const dictionary& dict ) : - topoSetFaceSource(mesh), + topoSetFaceSource(mesh, dict), zoneMatcher_() { // Look for 'zones' and 'zone', but accept 'name' as well diff --git a/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.H b/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.H index 3369ea17db8919e2b2c161f4fa47a085bce8c82d..5f4f7ba13e88a9c0e01d59db0c29e91af4e9e6c7 100644 --- a/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.H +++ b/src/meshTools/topoSet/faceSources/zoneToFace/zoneToFace.H @@ -50,7 +50,7 @@ Usage source zoneToFace; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 zones diff --git a/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.C index cf2680c76f0056852181cc6a9927e5b8a72097fe..27e103d3bdc61c6ac0d7ce5351b35230bd532b35 100644 --- a/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,7 +58,7 @@ Foam::topoSetSource::addToUsageTable Foam::cellToFaceZone::usage_ void Foam::cellToFaceZone::selectFaces ( - const cellSet& cSet, + const bitSet& whichCells, bitSet& selectedFace, bitSet& doFlip ) const @@ -81,8 +81,8 @@ void Foam::cellToFaceZone::selectFaces // Check all internal faces for (label facei = 0; facei < nInt; ++facei) { - const bool ownFound = cSet.found(own[facei]); - const bool neiFound = cSet.found(nei[facei]); + const bool ownFound = whichCells.test(own[facei]); + const bool neiFound = whichCells.test(nei[facei]); if (ownFound && !neiFound) { @@ -106,7 +106,7 @@ void Foam::cellToFaceZone::selectFaces label facei = pp.start(); forAll(pp, i) { - neiInSet[facei-nInt] = cSet.found(own[facei]); + neiInSet[facei-nInt] = whichCells.test(own[facei]); ++facei; } } @@ -120,7 +120,7 @@ void Foam::cellToFaceZone::selectFaces label facei = pp.start(); forAll(pp, i) { - const bool ownFound = cSet.found(own[facei]); + const bool ownFound = whichCells.test(own[facei]); const bool neiFound = neiInSet[facei-nInt]; if (ownFound && !neiFound) @@ -149,7 +149,8 @@ Foam::cellToFaceZone::cellToFaceZone ) : topoSetFaceZoneSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), flip_(flip) {} @@ -160,17 +161,11 @@ Foam::cellToFaceZone::cellToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), flip_(dict.getOrDefault("flip", false)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::cellToFaceZone::cellToFaceZone @@ -180,7 +175,8 @@ Foam::cellToFaceZone::cellToFaceZone ) : topoSetFaceZoneSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), flip_(false) {} @@ -207,7 +203,8 @@ void Foam::cellToFaceZone::applyToSet { if (verbose_) { - Info<< " Adding all faces on outside of cell sets: " + Info<< " Adding all faces on outside of cell " + << (isZone_ ? "zones:" : "sets: ") << flatOutput(names_) << "; orientation pointing "; if (flip_) @@ -222,12 +219,23 @@ void Foam::cellToFaceZone::applyToSet bitSet selectedFace(mesh_.nFaces()); bitSet doFlip(mesh_.nFaces()); + for (const word& setName : names_) { - // Load the sets - cellSet cSet(mesh_, setName); + bitSet whichCells(mesh_.nCells()); + if (isZone_) + { + whichCells.set(mesh_.cellZones()[setName]); + } + else + { + // Load the sets + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + whichCells.setMany(loadedSet.begin(), loadedSet.end()); + } + // Select outside faces - selectFaces(cSet, selectedFace, doFlip); + selectFaces(whichCells, selectedFace, doFlip); } // Start off from copy @@ -251,7 +259,8 @@ void Foam::cellToFaceZone::applyToSet { if (verbose_) { - Info<< " Removing all faces on outside of cell sets: " + Info<< " Removing all faces on outside of cell " + << (isZone_ ? "zones:" : "sets: ") << flatOutput(names_) << " ..." << endl; } @@ -259,10 +268,19 @@ void Foam::cellToFaceZone::applyToSet bitSet doFlip(mesh_.nFaces()); for (const word& setName : names_) { - // Load the sets - cellSet cSet(mesh_, setName); + bitSet whichCells(mesh_.nCells()); + if (isZone_) + { + whichCells.set(mesh_.cellZones()[setName]); + } + else + { + // Load the sets + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + whichCells.setMany(loadedSet.begin(), loadedSet.end()); + } // Select outside faces - selectFaces(cSet, selectedFace, doFlip); + selectFaces(whichCells, selectedFace, doFlip); } // Start off empty diff --git a/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.H b/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.H index 338d8f19e320c788dfbfb265e2a55f3dcba60ac0..053769cf9179e23acfedfe3888660f7aafcbe161 100644 --- a/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.H +++ b/src/meshTools/topoSet/faceZoneSources/cellToFaceZone/cellToFaceZone.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ Usage action <action>; source cellToFaceZone; - // Select either of the below + // Select one of the below // Option-1 sets @@ -63,7 +63,18 @@ Usage ); // Option-2 - set <word>; + zones + ( + <cellZoneName0> + <cellZoneName1> + ... + ); + + // Option-3 + set <cellSetName>; + + // Option-4 + zone <cellZoneName>; // Optional entries flip <bool>; @@ -89,6 +100,15 @@ Usage subtract | Remove selected faces of a faceZoneSet from this faceZone \endverbatim + Options for the conditional mandatory entries (in order of precedence): + \verbatim + Entry | Description | Type | Reqd | Deflt + sets | Names of input cellSets | wordList | choice | - + zones | Names of input cellZones | wordList | cond'l | - + set | Name of input cellSet | word | choice | - + zone | Name of input cellZone | word | cond'l | - + \endverbatim + Notes - \c flip=true sets the orientation of faces pointing into the \c cellSet, and vice versa. @@ -124,9 +144,12 @@ class cellToFaceZone //- Add usage string static addToUsageTable usage_; - //- Names of cellSets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Whether cellSet is slave cells or master cells const bool flip_; @@ -136,7 +159,7 @@ class cellToFaceZone //- Select outside faces of cellSet void selectFaces ( - const cellSet& cSet, + const bitSet& cSet, bitSet& selectedFace, bitSet& doFlip ) const; diff --git a/src/meshTools/topoSet/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C index b2d44b12d6704f1666051e2df882cc973b49fac7..4e0f039624a17f1ab44a79fee4bbae71dc97787b 100644 --- a/src/meshTools/topoSet/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C @@ -81,7 +81,7 @@ Foam::faceZoneToFaceZone::faceZoneToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), setName_(dict.get<word>("zone")) {} diff --git a/src/meshTools/topoSet/faceZoneSources/planeToFaceZone/planeToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/planeToFaceZone/planeToFaceZone.C index c7cdff5f780793a8185fd900e2d643eca11c4224..273cbfd8acc5bc6c9cda3fd71e77209440d5f7ad 100644 --- a/src/meshTools/topoSet/faceZoneSources/planeToFaceZone/planeToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/planeToFaceZone/planeToFaceZone.C @@ -388,13 +388,10 @@ Foam::planeToFaceZone::planeToFaceZone const dictionary& dict ) : - planeToFaceZone - ( - mesh, - dict.get<vector>("point"), - dict.get<vector>("normal"), - faceActionNames_.getOrDefault("option", dict, faceAction::ALL) - ) + topoSetFaceZoneSource(mesh, dict), + point_(dict.get<vector>("point")), + normal_(dict.get<vector>("normal")), + option_(faceActionNames_.getOrDefault("option", dict, faceAction::ALL)) {} diff --git a/src/meshTools/topoSet/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C index 170ecd7206b56ae9db8ed0a5f0f17d23dee7bac1..0c3c0c4532bff80d058ee14f0ce3d5309df0038f 100644 --- a/src/meshTools/topoSet/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C @@ -109,7 +109,7 @@ Foam::searchableSurfaceToFaceZone::searchableSurfaceToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), surfacePtr_ ( searchableSurface::New diff --git a/src/meshTools/topoSet/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C index b0eeb21b338627acd9dd7e4ec0d88f61d45b52a4..7838239678a8aaeb7c2405efd1e8e856899c08e3 100644 --- a/src/meshTools/topoSet/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C @@ -83,7 +83,7 @@ Foam::setAndNormalToFaceZone::setAndNormalToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), setName_(dict.get<word>("faceSet")), normal_(dict.get<vector>("normal")) {} @@ -128,8 +128,8 @@ void Foam::setAndNormalToFaceZone::applyToSet } // Load the sets - faceSet loadedSet(mesh_, setName_); - labelHashSet& faceIds = loadedSet; + faceSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); + const labelHashSet& faceLabels = loadedSet; // Start off from copy DynamicList<label> newAddressing(zoneSet.addressing()); @@ -138,7 +138,7 @@ void Foam::setAndNormalToFaceZone::applyToSet const faceList& faces = mesh_.faces(); const pointField& points = mesh_.points(); - for (const label facei : faceIds) + for (const label facei : faceLabels) { if (!zoneSet.found(facei)) { @@ -169,7 +169,7 @@ void Foam::setAndNormalToFaceZone::applyToSet } // Load the set - faceSet loadedSet(mesh_, setName_); + faceSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); // Start off empty DynamicList<label> newAddressing(zoneSet.addressing().size()); diff --git a/src/meshTools/topoSet/faceZoneSources/setToFaceZone/setToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/setToFaceZone/setToFaceZone.C index a460bfb649df63a80658cb05cb3196c8221ef0c5..02e7c507633d6da994b9f85a7ee0a1d81821efc5 100644 --- a/src/meshTools/topoSet/faceZoneSources/setToFaceZone/setToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/setToFaceZone/setToFaceZone.C @@ -72,7 +72,7 @@ Foam::setToFaceZone::setToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), setName_(dict.get<word>("faceSet")) { if (dict.found("cellSet")) @@ -122,7 +122,7 @@ void Foam::setToFaceZone::applyToSet } // Load the sets - faceSet loadedSet(mesh_, setName_); + faceSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); const labelHashSet& faceLabels = loadedSet; // Start off from copy @@ -151,7 +151,7 @@ void Foam::setToFaceZone::applyToSet } // Load the set - faceSet loadedSet(mesh_, setName_); + faceSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); // Start off empty DynamicList<label> newAddressing(zoneSet.addressing().size()); diff --git a/src/meshTools/topoSet/faceZoneSources/setsToFaceZone/setsToFaceZone.C b/src/meshTools/topoSet/faceZoneSources/setsToFaceZone/setsToFaceZone.C index 642cf82bca87d430819136afd125496bc7b716bd..edf9a176782ff8535e6de082332d106d224acaa5 100644 --- a/src/meshTools/topoSet/faceZoneSources/setsToFaceZone/setsToFaceZone.C +++ b/src/meshTools/topoSet/faceZoneSources/setsToFaceZone/setsToFaceZone.C @@ -77,7 +77,7 @@ Foam::setsToFaceZone::setsToFaceZone const dictionary& dict ) : - topoSetFaceZoneSource(mesh), + topoSetFaceZoneSource(mesh, dict), faceSetName_(dict.get<word>("faceSet")), cellSetName_(dict.get<word>("cellSet")), flip_(dict.getOrDefault("flip", false)) @@ -135,8 +135,8 @@ void Foam::setsToFaceZone::applyToSet } // Load the sets - faceSet fSet(mesh_, faceSetName_); - cellSet cSet(mesh_, cellSetName_); + faceSet fSet(mesh_, faceSetName_, IOobject::NO_REGISTER); + cellSet cSet(mesh_, cellSetName_, IOobject::NO_REGISTER); // Start off from copy DynamicList<label> newAddressing(zoneSet.addressing()); diff --git a/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.C b/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.C index b7fe126f18fce8a969589789e4ff57d9ce09637d..d2c6237d6f5e6d25ed713f3216934257e16c0839 100644 --- a/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.C +++ b/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.C @@ -92,7 +92,8 @@ static void readBoxDim(const dictionary& dict, treeBoundBox& bb) void Foam::boxToPoint::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.points(); + const tmp<pointField> tctrs(this->transform(mesh_.points())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -138,7 +139,7 @@ Foam::boxToPoint::boxToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), bbs_() { // Accept 'boxes', 'box' or 'min/max' diff --git a/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.H b/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.H index 462c29285c228598b1dcf638783d9daf7cfc5817..a7b0b701e3f628dc2d245d27c6a7cf054f464d3e 100644 --- a/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.H +++ b/src/meshTools/topoSet/pointSources/boxToPoint/boxToPoint.H @@ -50,7 +50,7 @@ Usage source boxToPoint; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 boxes diff --git a/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.C b/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.C index 39cccb0cdc37acc6b6b60900426639c31515dd13..4a3c58a8450dde2457ec1d43ae6c7f16f848b857 100644 --- a/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.C +++ b/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.C @@ -62,18 +62,15 @@ Foam::cellToPoint::cellActionNames_ // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::cellToPoint::combine +template<class Selector> +void Foam::cellToPoint::combineImpl ( topoSet& set, const bool add, - const word& setName + const Selector& cellLabels ) const { - // Load the set - cellSet loadedSet(mesh_, setName); - const labelHashSet& cellLabels = loadedSet; - - // Add all point from cells in loadedSet + // Add all points from given cells for (const label celli : cellLabels) { const labelList& cFaces = mesh_.cells()[celli]; @@ -88,6 +85,30 @@ void Foam::cellToPoint::combine } +void Foam::cellToPoint::combine +( + topoSet& set, + const bool add, + const word& setName +) const +{ + if (isZone_) + { + const labelList& cellLabels = mesh_.cellZones()[setName]; + + combineImpl(set, add, cellLabels); + } + else + { + // Load the set + cellSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& cellLabels = loadedSet; + + combineImpl(set, add, cellLabels); + } +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::cellToPoint::cellToPoint @@ -98,7 +119,8 @@ Foam::cellToPoint::cellToPoint ) : topoSetPointSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -109,17 +131,11 @@ Foam::cellToPoint::cellToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(cellActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::cellToPoint::cellToPoint @@ -129,7 +145,8 @@ Foam::cellToPoint::cellToPoint ) : topoSetPointSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(cellActionNames_.read(checkIs(is))) {} @@ -146,7 +163,8 @@ void Foam::cellToPoint::applyToSet { if (verbose_) { - Info<< " Adding points in cell sets: " + Info<< " Adding points in cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } @@ -159,7 +177,8 @@ void Foam::cellToPoint::applyToSet { if (verbose_) { - Info<< " Removing points in cell sets: " + Info<< " Removing points in cell " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } diff --git a/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.H b/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.H index 7ff71fb09f7c54298ccc3966867c2a391cf04323..9026c49486ec755079432e3b17cfcdf09e127f85 100644 --- a/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.H +++ b/src/meshTools/topoSet/pointSources/cellToPoint/cellToPoint.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2020,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,7 +51,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -62,7 +62,18 @@ Usage ); // Option-2 - set <pointSetName>; + zones + ( + <pointZoneName0> + <pointZoneName1> + ... + ); + + // Option-3 + set <pointSetName>; + + // Option-4 + zone <pointZoneName>; } \endverbatim @@ -88,17 +99,15 @@ Usage all | Select all points of cells in the cellSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim - Entry | Description | Type | Req'd | Dflt - sets | Names of input cellSets | wordList | cond'l | - - set | Name of input cellSet | word | cond'l | - + Entry | Description | Type | Reqd | Deflt + sets | Names of input cellSets | wordList | choice | - + zones | Names of input cellZones | wordList | cond'l | - + set | Name of input cellSet | word | choice | - + zone | Name of input cellZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetPointSource @@ -145,15 +154,27 @@ private: static const Enum<cellAction> cellActionNames_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Option cellAction option_; // Private Member Functions + //- Depending on cell to point option add to or delete from pointSet. + template<class Selector> + void combineImpl + ( + topoSet& set, + const bool add, + const Selector& cellLabels + ) const; + void combine(topoSet& set, const bool add, const word& setName) const; diff --git a/src/meshTools/topoSet/pointSources/clipPlaneToPoint/clipPlaneToPoint.C b/src/meshTools/topoSet/pointSources/clipPlaneToPoint/clipPlaneToPoint.C index 336983da349c9cd37370be6cf0d43b1ca056f004..c2e26b4fddfbc0c5b992bdc359604419a7334bcb 100644 --- a/src/meshTools/topoSet/pointSources/clipPlaneToPoint/clipPlaneToPoint.C +++ b/src/meshTools/topoSet/pointSources/clipPlaneToPoint/clipPlaneToPoint.C @@ -69,7 +69,8 @@ void Foam::clipPlaneToPoint::combine(topoSet& set, const bool add) const { // Mesh points above plane - const pointField& ctrs = mesh_.points(); + const tmp<pointField> tctrs(this->transform(mesh_.points())); + const pointField& ctrs = tctrs(); forAll(ctrs, elemi) { @@ -102,12 +103,9 @@ Foam::clipPlaneToPoint::clipPlaneToPoint const dictionary& dict ) : - clipPlaneToPoint - ( - mesh, - dict.get<vector>("point"), - dict.get<vector>("normal") - ) + topoSetPointSource(mesh, dict), + point_(dict.get<vector>("point")), + normal_(dict.get<vector>("normal")) {} diff --git a/src/meshTools/topoSet/pointSources/cylinderToPoint/cylinderToPoint.C b/src/meshTools/topoSet/pointSources/cylinderToPoint/cylinderToPoint.C index 99e58047f58951dc708d5ebb7068a4d1c05e8a20..23ec1d5232294d699d2678cb141c4db5d4d89642 100644 --- a/src/meshTools/topoSet/pointSources/cylinderToPoint/cylinderToPoint.C +++ b/src/meshTools/topoSet/pointSources/cylinderToPoint/cylinderToPoint.C @@ -68,7 +68,8 @@ Foam::topoSetSource::addToUsageTable Foam::cylinderToPoint::usage_ void Foam::cylinderToPoint::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.points(); + const tmp<pointField> tctrs(this->transform(mesh_.points())); + const pointField& ctrs = tctrs(); const vector axis = (point2_ - point1_); const scalar magAxis2 = magSqr(axis); @@ -119,12 +120,12 @@ Foam::cylinderToPoint::cylinderToPoint const dictionary& dict ) : - cylinderToPoint + topoSetPointSource(mesh, dict), + point1_(dict.getCompat<point>("point1", {{"p1", -2112}})), + point2_(dict.getCompat<point>("point2", {{"p2", -2112}})), + radius_(dict.getCompat<scalar>("radius", {{"outerRadius", -2112}})), + innerRadius_ ( - mesh, - dict.getCompat<point>("point1", {{"p1", -2112}}), - dict.getCompat<point>("point2", {{"p2", -2112}}), - dict.getCompat<scalar>("radius", {{"outerRadius", -2112}}), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.C b/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.C index 86d20e9f909fc07dc99bb0b2226ee6120aeb533f..cd2212dcbe60c8f4868949a69f91054e2d83826d 100644 --- a/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.C +++ b/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -68,16 +68,31 @@ void Foam::faceToPoint::combine const word& setName ) const { - // Load the set - faceSet loadedSet(mesh_, setName); - const labelHashSet& faceLabels = loadedSet; + if (isZone_) + { + const auto& faceLabels = mesh_.faceZones()[setName].addressing(); + + // Add all points from given faces + for (const label facei : faceLabels) + { + const face& f = mesh_.faces()[facei]; - // Add all points from faces in loadedSet - for (const label facei : faceLabels) + addOrDelete(set, f, add); + } + } + else { - const face& f = mesh_.faces()[facei]; + // Load the set + faceSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + const labelHashSet& faceLabels = loadedSet; + + // Add all points from given faces + for (const label facei : faceLabels) + { + const face& f = mesh_.faces()[facei]; - addOrDelete(set, f, add); + addOrDelete(set, f, add); + } } } @@ -92,7 +107,8 @@ Foam::faceToPoint::faceToPoint ) : topoSetPointSource(mesh), - names_(one{}, setName), + names_(Foam::one{}, setName), + isZone_(false), option_(option) {} @@ -103,17 +119,11 @@ Foam::faceToPoint::faceToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), names_(), + isZone_(topoSetSource::readNames(dict, names_)), option_(faceActionNames_.get("option", dict)) -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} +{} Foam::faceToPoint::faceToPoint @@ -123,7 +133,8 @@ Foam::faceToPoint::faceToPoint ) : topoSetPointSource(mesh), - names_(one{}, word(checkIs(is))), + names_(Foam::one{}, word(checkIs(is))), + isZone_(false), option_(faceActionNames_.read(checkIs(is))) {} @@ -140,7 +151,8 @@ void Foam::faceToPoint::applyToSet { if (verbose_) { - Info<< " Adding points from face in face sets: " + Info<< " Adding face points in face " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } @@ -153,7 +165,8 @@ void Foam::faceToPoint::applyToSet { if (verbose_) { - Info<< " Removing points from face in face sets: " + Info<< " Removing face points in face " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } diff --git a/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.H b/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.H index 8e12ef2740e9c6ab09693dd3a5dc3586d3422a95..49c132cf981ab8d5a3479162f27a3fedfcfb2843 100644 --- a/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.H +++ b/src/meshTools/topoSet/pointSources/faceToPoint/faceToPoint.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ Usage option <option>; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -89,17 +89,15 @@ Usage all | Select all points of faces in the faceSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input faceSets | wordList | cond'l | - + zones | Names of input faceZones | wordList | cond'l | - set | Name of input faceSet | word | cond'l | - + zone | Name of input faceZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetPointSource @@ -146,9 +144,12 @@ private: static const Enum<faceAction> faceActionNames_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + //- Option faceAction option_; diff --git a/src/meshTools/topoSet/pointSources/labelToPoint/labelToPoint.C b/src/meshTools/topoSet/pointSources/labelToPoint/labelToPoint.C index 4b3eb85c442ffbc74a8b6d062f0ead313e498acf..e6c9de9cf33141c9858f85fd85e5b244676cb7c7 100644 --- a/src/meshTools/topoSet/pointSources/labelToPoint/labelToPoint.C +++ b/src/meshTools/topoSet/pointSources/labelToPoint/labelToPoint.C @@ -94,7 +94,8 @@ Foam::labelToPoint::labelToPoint const dictionary& dict ) : - labelToPoint(mesh, dict.get<labelList>("value")) + topoSetPointSource(mesh, dict), + labels_(dict.get<labelList>("value")) {} diff --git a/src/meshTools/topoSet/pointSources/nearestToPoint/nearestToPoint.C b/src/meshTools/topoSet/pointSources/nearestToPoint/nearestToPoint.C index b5ec828161a6aa6bd7ca9bec7797c488b1088707..cf17eef6b44e225e3e9834316cdead940811370a 100644 --- a/src/meshTools/topoSet/pointSources/nearestToPoint/nearestToPoint.C +++ b/src/meshTools/topoSet/pointSources/nearestToPoint/nearestToPoint.C @@ -146,7 +146,8 @@ Foam::nearestToPoint::nearestToPoint const dictionary& dict ) : - nearestToPoint(mesh, dict.get<pointField>("points")) + topoSetPointSource(mesh, dict), + points_(dict.get<pointField>("points")) {} diff --git a/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.C b/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.C index ddb9810c92b7835f1e456d83a6d4a4668fdc6225..12b379a790375183560d9e0a6c0421b0cf754e94 100644 --- a/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.C +++ b/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.C @@ -60,7 +60,8 @@ Foam::pointToPoint::pointToPoint ) : topoSetPointSource(mesh), - names_(one{}, setName) + names_(Foam::one{}, setName), + isZone_(false) {} @@ -70,16 +71,10 @@ Foam::pointToPoint::pointToPoint const dictionary& dict ) : - topoSetPointSource(mesh), - names_() -{ - // Look for 'sets' or 'set' - if (!dict.readIfPresent("sets", names_)) - { - names_.resize(1); - dict.readEntry("set", names_.front()); - } -} + topoSetPointSource(mesh, dict), + names_(), + isZone_(topoSetSource::readNames(dict, names_)) +{} Foam::pointToPoint::pointToPoint @@ -89,7 +84,8 @@ Foam::pointToPoint::pointToPoint ) : topoSetPointSource(mesh), - names_(one{}, word(checkIs(is))) + names_(Foam::one{}, word(checkIs(is))), + isZone_(false) {} @@ -105,30 +101,46 @@ void Foam::pointToPoint::applyToSet { if (verbose_) { - Info<< " Adding all elements of point sets: " + Info<< " Adding all elements of point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - pointSet loadedSet(mesh_, setName); - - set.addSet(loadedSet); + if (isZone_) + { + set.addSet(mesh_.pointZones()[setName]); + } + else + { + pointSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + + set.addSet(loadedSet); + } } } else if (action == topoSetSource::SUBTRACT) { if (verbose_) { - Info<< " Removing all elements of point sets: " + Info<< " Removing all elements of point " + << (isZone_ ? "zones: " : "sets: ") << flatOutput(names_) << nl; } for (const word& setName : names_) { - pointSet loadedSet(mesh_, setName); - - set.subtractSet(loadedSet); + if (isZone_) + { + set.subtractSet(mesh_.pointZones()[setName]); + } + else + { + pointSet loadedSet(mesh_, setName, IOobject::NO_REGISTER); + + set.subtractSet(loadedSet); + } } } } diff --git a/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.H b/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.H index 55efeceb8d5f706e458fa9589ebbfb638662cd56..1a6d0b39c635d3479efb9cd5e80539fb685a562e 100644 --- a/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.H +++ b/src/meshTools/topoSet/pointSources/pointToPoint/pointToPoint.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2020,2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,7 +50,7 @@ Usage source pointToPoint; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 sets @@ -61,7 +61,18 @@ Usage ); // Option-2 - set <pointSetName>; + zones + ( + <pointZoneName0> + <pointZoneName1> + ... + ); + + // Option-3 + set <pointSetName>; + + // Option-4 + zone <pointZoneName>; } \endverbatim @@ -81,17 +92,15 @@ Usage subtract | Remove selected points from this pointSet \endverbatim - Options for the conditional mandatory entries: + Options for the conditional mandatory entries (in order of precedence): \verbatim Entry | Description | Type | Req'd | Dflt sets | Names of input pointSets | wordList | cond'l | - + zones | Names of input pointZones | wordList | cond'l | - set | Name of input pointSet | word | cond'l | - + zone | Name of input pointZone | word | cond'l | - \endverbatim -Note - The order of precedence among the conditional mandatory entries from the - highest to the lowest is \c sets, and \c set. - See also - Foam::topoSetSource - Foam::topoSetPointSource @@ -124,9 +133,12 @@ class pointToPoint //- Add usage string static addToUsageTable usage_; - //- Names of sets to use + //- Names of sets or zones to use wordList names_; + //- Is name a set or a zone + const bool isZone_; + public: diff --git a/src/meshTools/topoSet/pointSources/searchableSurfaceToPoint/searchableSurfaceToPoint.C b/src/meshTools/topoSet/pointSources/searchableSurfaceToPoint/searchableSurfaceToPoint.C index 4b5e73446757a96933ac2f5128f78f4445bb8f43..15a82782dafb2b508d6306cc6d3937925dd31d8e 100644 --- a/src/meshTools/topoSet/pointSources/searchableSurfaceToPoint/searchableSurfaceToPoint.C +++ b/src/meshTools/topoSet/pointSources/searchableSurfaceToPoint/searchableSurfaceToPoint.C @@ -102,12 +102,15 @@ void Foam::searchableSurfaceToPoint::combine(topoSet& set, const bool add) const { return; } + const tmp<pointField> tctrs(this->transform(mesh_.points())); + const pointField& ctrs = tctrs(); + const searchableSurface& s = *surf_; // Mesh points within the enclosing volumes List<volumeType> volTypes; - s.getVolumeType(mesh_.points(), volTypes); + s.getVolumeType(ctrs, volTypes); const label len = volTypes.size(); for (label id=0; id < len; ++id) @@ -129,7 +132,7 @@ Foam::searchableSurfaceToPoint::searchableSurfaceToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), surf_ ( searchableSurface::New diff --git a/src/meshTools/topoSet/pointSources/sphereToPoint/sphereToPoint.C b/src/meshTools/topoSet/pointSources/sphereToPoint/sphereToPoint.C index e564b7892550889d2fe24a036debd0d27343daf4..ccecc0062b55eed3774166bb66288e92d1e53d49 100644 --- a/src/meshTools/topoSet/pointSources/sphereToPoint/sphereToPoint.C +++ b/src/meshTools/topoSet/pointSources/sphereToPoint/sphereToPoint.C @@ -67,7 +67,8 @@ Foam::topoSetSource::addToUsageTable Foam::sphereToPoint::usage_ void Foam::sphereToPoint::combine(topoSet& set, const bool add) const { - const pointField& ctrs = mesh_.points(); + const tmp<pointField> tctrs(this->transform(mesh_.points())); + const pointField& ctrs = tctrs(); const scalar orad2 = sqr(radius_); const scalar irad2 = innerRadius_ > 0 ? sqr(innerRadius_) : -1; @@ -109,11 +110,11 @@ Foam::sphereToPoint::sphereToPoint const dictionary& dict ) : - sphereToPoint + topoSetPointSource(mesh, dict), + origin_(dict.getCompat<vector>("origin", {{"centre", -1806}})), + radius_(dict.getCheck<scalar>("radius", scalarMinMax::ge(0))), + innerRadius_ ( - mesh, - dict.getCompat<vector>("origin", {{"centre", -1806}}), - dict.getCheck<scalar>("radius", scalarMinMax::ge(0)), dict.getCheckOrDefault<scalar>("innerRadius", 0, scalarMinMax::ge(0)) ) {} diff --git a/src/meshTools/topoSet/pointSources/surfaceToPoint/surfaceToPoint.C b/src/meshTools/topoSet/pointSources/surfaceToPoint/surfaceToPoint.C index d6e94acab1b2fd4255cb7977777905e3ad602528..22afa0c3cc4eaf56e9352911e42608365137ca83 100644 --- a/src/meshTools/topoSet/pointSources/surfaceToPoint/surfaceToPoint.C +++ b/src/meshTools/topoSet/pointSources/surfaceToPoint/surfaceToPoint.C @@ -153,7 +153,7 @@ Foam::surfaceToPoint::surfaceToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), surfName_(dict.get<fileName>("file").expand()), surfType_(dict.getOrDefault<word>("fileType", word::null)), scale_(dict.getOrDefault<scalar>("scale", -1)), diff --git a/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.C b/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.C index 44627db683ad89abf95febd22f075d003a14c236..b7138e750496848163ab5607dc4b8557884c220c 100644 --- a/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.C +++ b/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.C @@ -183,7 +183,7 @@ Foam::zoneToPoint::zoneToPoint const dictionary& dict ) : - topoSetPointSource(mesh), + topoSetPointSource(mesh, dict), zoneMatcher_() { // Look for 'zones' and 'zone', but accept 'name' as well diff --git a/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.H b/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.H index 8f44db859eb4b8308d57ac8358a10e690cdca012..2e587d39bdca3b951dcbabc8fd8dbcbcd12ed942 100644 --- a/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.H +++ b/src/meshTools/topoSet/pointSources/zoneToPoint/zoneToPoint.H @@ -50,7 +50,7 @@ Usage source zoneToPoint; // Conditional mandatory entries - // Select either of the below + // Select one of the below // Option-1 zones diff --git a/src/meshTools/topoSet/pointZoneSources/setToPointZone/setToPointZone.C b/src/meshTools/topoSet/pointZoneSources/setToPointZone/setToPointZone.C index 1fcc0cf0fd54fa11591164a9523a21d7b7f3e0ed..e2cd75d79676d6a775dde62a986103c38f8f06dc 100644 --- a/src/meshTools/topoSet/pointZoneSources/setToPointZone/setToPointZone.C +++ b/src/meshTools/topoSet/pointZoneSources/setToPointZone/setToPointZone.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,7 +71,7 @@ Foam::setToPointZone::setToPointZone const dictionary& dict ) : - topoSetPointZoneSource(mesh), + topoSetPointZoneSource(mesh, dict), setName_(dict.get<word>("set")) {} @@ -114,7 +114,7 @@ void Foam::setToPointZone::applyToSet } // Load the set - pointSet loadedSet(mesh_, setName_); + pointSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); const labelHashSet& pointLabels = loadedSet; // Start off from copy @@ -124,7 +124,7 @@ void Foam::setToPointZone::applyToSet { if (!zoneSet.found(pointi)) { - newAddressing.append(pointi); + newAddressing.push_back(pointi); } } @@ -140,16 +140,16 @@ void Foam::setToPointZone::applyToSet } // Load the set - pointSet loadedSet(mesh_, setName_); + pointSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); // Start off empty DynamicList<label> newAddressing(zoneSet.addressing().size()); - forAll(zoneSet.addressing(), i) + for (const label pointi : zoneSet.addressing()) { - if (!loadedSet.found(zoneSet.addressing()[i])) + if (!loadedSet.found(pointi)) { - newAddressing.append(zoneSet.addressing()[i]); + newAddressing.push_back(pointi); } } zoneSet.addressing().transfer(newAddressing); diff --git a/src/meshTools/topoSet/topoSetSource/topoSetSource.C b/src/meshTools/topoSet/topoSetSource/topoSetSource.C index ffc15dc29fe437e8dd625df46cf8e719d7364df3..10331ffa575a4a9ab19e2911e38ccda95b4b5819 100644 --- a/src/meshTools/topoSet/topoSetSource/topoSetSource.C +++ b/src/meshTools/topoSet/topoSetSource/topoSetSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,6 +31,7 @@ License #include "polyMesh.H" #include "bitSet.H" #include "topoSet.H" +#include "transformField.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -252,7 +253,8 @@ Foam::topoSetSource::topoSetSource ) : mesh_(mesh), - verbose_(verbose) + verbose_(verbose), + transformPtr_(nullptr) {} @@ -262,10 +264,14 @@ Foam::topoSetSource::topoSetSource const dictionary& dict ) : - topoSetSource(mesh) -{ - verbose(dict); -} + mesh_(mesh), + verbose_(dict.getOrDefault<bool>("verbose", true)), + transformPtr_ + ( + // Uses "solidBodyMotionFunction" if present + solidBodyMotionFunction::NewIfPresent(dict, mesh.time()) + ) +{} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -274,11 +280,76 @@ void Foam::topoSetSource::verbose(const dictionary& dict) { bool flag(verbose_); - if (dict.readIfPresent("verbose", flag)) + if (dict.readIfPresent("verbose", flag, keyType::LITERAL)) { verbose_ = flag; } } +Foam::tmp<Foam::pointField> Foam::topoSetSource::transform +( + const pointField& points +) const +{ + if (transformPtr_) + { + return transformPoints(transformPtr_->transformation(), points); + } + else + { + // No transform - return reference to input points + return points; + } +} + + +bool Foam::topoSetSource::readNames +( + const dictionary& dict, + wordList& names +) +{ + bool isZone = false; + + // priority + // 1. 'sets' + // 2. 'zones' + // 3. 'set' + // 4. 'zone' + + if (dict.readIfPresent("sets", names, keyType::LITERAL)) + { + // -> isZone = false; + } + else if (dict.readIfPresent("zones", names, keyType::LITERAL)) + { + isZone = true; + } + else + { + // Ensure error messsages make sense if nothing was provided + names.resize(1); + + if (dict.readIfPresent("zone", names.front(), keyType::LITERAL)) + { + // Had 'zone', so 'set' is optional... + isZone = true; + if (dict.readIfPresent("set", names.front(), keyType::LITERAL)) + { + isZone = false; + } + } + else + { + // No 'zone', so 'set' is mandatory... + dict.readEntry("set", names.front(), keyType::LITERAL); + // -> isZone = false; + } + } + + return isZone; +} + + // ************************************************************************* // diff --git a/src/meshTools/topoSet/topoSetSource/topoSetSource.H b/src/meshTools/topoSet/topoSetSource/topoSetSource.H index 7be8160002973658f9cc86e1e1048d4d0e08aab6..a77977364475214c3c67a1ae19acd232f413a5cc 100644 --- a/src/meshTools/topoSet/topoSetSource/topoSetSource.H +++ b/src/meshTools/topoSet/topoSetSource/topoSetSource.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,7 +48,7 @@ SourceFiles #include "autoPtr.H" #include "Enum.H" #include "HashTable.H" -#include "runTimeSelectionTables.H" +#include "solidBodyMotionFunction.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -168,6 +168,9 @@ protected: //- Output verbosity (default: true) bool verbose_; + //- Optional transformation for geometric data + autoPtr<solidBodyMotionFunction> transformPtr_; + // Protected Member Functions @@ -386,6 +389,14 @@ public: ) const = 0; + //- True if coordinate transform is active. + bool hasTransform() const noexcept { return bool(transformPtr_); } + + //- Coordinate transform (optionally) coordinates. + //- Returns reference to input data if no transform is active. + tmp<pointField> transform(const pointField& points) const; + + // Housekeeping //- Deprecated(2018-07) convert string to action @@ -394,6 +405,11 @@ public: { return actionNames[actionName]; } + + //- Helper: extract wordList of patches/zones from dictionary. Returns + // true if zone(s). Order of parsing is + // sets, zones, set, zone + static bool readNames(const dictionary& dict, wordList& names); }; diff --git a/src/meshTools/topoSet/topoSets/cellBitSet.C b/src/meshTools/topoSet/topoSets/cellBitSet.C index a830359ea0c8e2e592e189f8a1b1728e248f7380..f9fc15988daed988d9532294785113bf63e69823 100644 --- a/src/meshTools/topoSet/topoSets/cellBitSet.C +++ b/src/meshTools/topoSet/topoSets/cellBitSet.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -34,18 +34,12 @@ License namespace Foam { - defineTypeNameAndDebug(cellBitSet, 0); + defineTypeName(cellBitSet); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::cellBitSet::cellBitSet(const polyMesh& mesh) -: - cellBitSet(mesh, false) -{} - - Foam::cellBitSet::cellBitSet(const polyMesh& mesh, const bool val) : topoBitSet(mesh, "cellBitSet", mesh.nCells(), val) diff --git a/src/meshTools/topoSet/topoSets/cellBitSet.H b/src/meshTools/topoSet/topoSets/cellBitSet.H index 98d803e81b7c71cd59f61eb5d997819f45e5c2df..278370a8d52bf880aa8a1a927be8bb676ac15ec1 100644 --- a/src/meshTools/topoSet/topoSets/cellBitSet.H +++ b/src/meshTools/topoSet/topoSets/cellBitSet.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -96,16 +96,14 @@ class cellBitSet public: //- Runtime type information - TypeName("cellBitSet"); + TypeNameNoDebug("cellBitSet"); // Constructors - //- Construct with nCells elements, all elements unset - explicit cellBitSet(const polyMesh& mesh); - - //- Construct with nCells elements, using initial val - cellBitSet(const polyMesh& mesh, const bool val); + //- Construct with nCells elements, + //- all elements unset or initial value + explicit cellBitSet(const polyMesh& mesh, const bool val = false); //- Copy construct from bitset, resizing to nCells elements as required cellBitSet(const polyMesh& mesh, const bitSet& bits); diff --git a/src/meshTools/topoSet/topoSets/cellSet.C b/src/meshTools/topoSet/topoSets/cellSet.C index 7df945566e396da01c7152adadcbd421a0a38157..2cfd0b7dc0be2614f2b80451f54f22a06c279429 100644 --- a/src/meshTools/topoSet/topoSets/cellSet.C +++ b/src/meshTools/topoSet/topoSets/cellSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,11 +37,10 @@ License namespace Foam { -defineTypeNameAndDebug(cellSet, 0); - -addToRunTimeSelectionTable(topoSet, cellSet, word); -addToRunTimeSelectionTable(topoSet, cellSet, size); -addToRunTimeSelectionTable(topoSet, cellSet, set); + defineTypeName(cellSet); + addToRunTimeSelectionTable(topoSet, cellSet, word); + addToRunTimeSelectionTable(topoSet, cellSet, size); + addToRunTimeSelectionTable(topoSet, cellSet, set); } @@ -53,18 +52,24 @@ Foam::cellSet::cellSet(const IOobject& io) {} +Foam::cellSet::cellSet(const IOobject& io, const Foam::zero) +: + topoSet(io, Foam::zero{}) +{} + + Foam::cellSet::cellSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - topoSet(mesh, typeName, name, rOpt, wOpt) + topoSet(mesh, typeName, name, rOpt, wOpt, reg) { - // Make sure set within valid range - check(mesh.nCells()); + check(mesh.nCells()); // Valid range? } @@ -72,11 +77,11 @@ Foam::cellSet::cellSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - topoSet(mesh, name, size, wOpt) + topoSet(mesh, name, initialCapacity, wOpt) {} @@ -149,14 +154,14 @@ Foam::cellSet::cellSet ( const Time& runTime, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : topoSet ( findIOobject(runTime, name, IOobject::NO_READ, wOpt), - size + initialCapacity ) {} @@ -177,6 +182,28 @@ Foam::cellSet::cellSet {} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::labelHashSet Foam::cellSet::readContents +( + const polyMesh& mesh, + const word& name +) +{ + cellSet reader + ( + topoSet::findIOobject(mesh, name, IOobjectOption::NO_REGISTER), + Foam::zero{} + ); + + labelHashSet labels; + reader.readIOcontents(typeName, labels); + reader.checkLabels(labels, mesh.nCells()); // Valid range? + + return labels; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::label Foam::cellSet::maxSize(const polyMesh& mesh) const diff --git a/src/meshTools/topoSet/topoSets/cellSet.H b/src/meshTools/topoSet/topoSets/cellSet.H index b678b047b0c329ae8f8abb099b0e1d36f6b61db0..820e2b938c73a19f8421833772f9caff94f410ac 100644 --- a/src/meshTools/topoSet/topoSets/cellSet.H +++ b/src/meshTools/topoSet/topoSets/cellSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -62,7 +62,7 @@ class cellSet public: //- Runtime type information - TypeName("cellSet"); + TypeNameNoDebug("cellSet"); // Constructors @@ -70,25 +70,43 @@ public: //- Construct from IOobject. No checking. explicit cellSet(const IOobject& io); - //- Construct from polyMesh and name. Checks for valid cell ids. + //- Construct empty (no-read) with IOobject information + cellSet(const IOobject& io, const Foam::zero); + + //- Construct from polyMesh (registry) and name. + //- Checks for valid cell ids. cellSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct empty with initial size for labelHashSet + //- Construct from polyMesh (registry), name and registration option + cellSet + ( + const polyMesh& mesh, + const word& name, + IOobjectOption::registerOption reg, + IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ) + : + cellSet(mesh, name, rOpt, wOpt, reg) + {} + + //- Construct empty (no-read) with initial labelHashSet capacity cellSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct from existing set + //- Copy construct (no-read) from existing set cellSet ( const polyMesh& mesh, @@ -97,7 +115,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy of labelHashSet + //- Copy construct (no-read) from labelHashSet, + //- with search for IOobject instance. cellSet ( const polyMesh& mesh, @@ -106,7 +125,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with moving labelHashSet + //- Move construct (no-read) from labelHashSet, + //- with search for IOobject instance. cellSet ( const polyMesh& mesh, @@ -115,7 +135,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy labels + //- Copy construct (no-read) from labels, + //- with search for IOobject instance. cellSet ( const polyMesh& mesh, @@ -125,34 +146,46 @@ public: ); - // Used for tetMesh cellSet only. - - //- Construct from objectRegistry and name. - cellSet - ( - const Time&, - const word& name, - IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE - ); - - //- Construct empty from objectRegistry. - cellSet - ( - const Time&, - const word& name, - const label size, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE - ); - - //- Construct from labelHashSet - cellSet - ( - const Time&, - const word& name, - const labelHashSet& labels, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE - ); + //- Construct from objectRegistry and name. + //- Used for tetMesh cellSet only. + cellSet + ( + const Time&, + const word& name, + IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ); + + //- Construct empty (no-read) with initial labelHashSet capacity + //- from objectRegistry. + //- Used for tetMesh cellSet only. + cellSet + ( + const Time&, + const word& name, + const label initialCapacity, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ); + + //- Copy construct (no-read) from labelHashSet. + //- Used for tetMesh cellSet only. + cellSet + ( + const Time&, + const word& name, + const labelHashSet& labels, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ); + + + // Factory Methods + + //- Read and return contents. Intermediate IOobject is not registered + static labelHashSet readContents + ( + const polyMesh& mesh, + const word& name + ); //- Destructor diff --git a/src/meshTools/topoSet/topoSets/cellZoneSet.C b/src/meshTools/topoSet/topoSets/cellZoneSet.C index 28ab5ac500d2f9eaa066075803d7e8b1500d0055..af461fb6a28fca01c6afbcfc874ce8567f1fd87e 100644 --- a/src/meshTools/topoSet/topoSets/cellZoneSet.C +++ b/src/meshTools/topoSet/topoSets/cellZoneSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,18 +36,18 @@ License namespace Foam { - defineTypeNameAndDebug(cellZoneSet, 0); + defineTypeName(cellZoneSet); addToRunTimeSelectionTable(topoSet, cellZoneSet, word); addToRunTimeSelectionTable(topoSet, cellZoneSet, size); addToRunTimeSelectionTable(topoSet, cellZoneSet, set); } + // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // void Foam::cellZoneSet::updateSet() { - labelList order(sortedOrder(addressing_)); - inplaceReorder(order, addressing_); + Foam::sort(addressing_); cellSet::clearStorage(); cellSet::reserve(addressing_.size()); @@ -61,46 +61,46 @@ Foam::cellZoneSet::cellZoneSet ( const polyMesh& mesh, const word& name, - IOobjectOption::readOption rOpt, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - cellSet(mesh, name, 1024), // do not read cellSet - mesh_(mesh), - addressing_() -{ - const cellZoneMesh& cellZones = mesh.cellZones(); - label zoneID = cellZones.findZoneID(name); - - if - ( - IOobjectOption::isReadRequired(rOpt) - || (IOobjectOption::isReadOptional(rOpt) && zoneID != -1) - ) - { - const cellZone& fz = cellZones[zoneID]; - addressing_ = fz; - } - - updateSet(); - - check(mesh.nCells()); -} + cellSet(mesh, name, initialCapacity, wOpt), // Construct no-read + mesh_(mesh) +{} Foam::cellZoneSet::cellZoneSet ( const polyMesh& mesh, const word& name, - const label size, + IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt ) : - cellSet(mesh, name, size, wOpt), - mesh_(mesh), - addressing_() + cellZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto& zones = mesh.cellZones(); + const auto* zonePtr = zones.cfindZone(name); + + if (!zonePtr) + { + if (IOobjectOption::isReadRequired(rOpt)) + { + FatalErrorInFunction + << "Zone named " << name << " not found. " + << "List of available zone names: " << zones.names() << nl + << exit(FatalError); + } + } + else if (IOobjectOption::isAnyRead(rOpt)) + { + const auto& zn = *zonePtr; + addressing_ = zn; + } + updateSet(); + check(mesh.nCells()); } @@ -112,10 +112,19 @@ Foam::cellZoneSet::cellZoneSet IOobjectOption::writeOption wOpt ) : - cellSet(mesh, name, set.size(), wOpt), - mesh_(mesh), - addressing_(refCast<const cellZoneSet>(set).addressing()) + cellZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto* zonePtr = isA<cellZoneSet>(set); + + if (zonePtr) + { + addressing_ = zonePtr->addressing(); + } + else + { + addressing_ = set.sortedToc(); + } + updateSet(); } @@ -136,7 +145,7 @@ void Foam::cellZoneSet::invert(const label maxLen) } // Fill - addressing_.setSize(n); + addressing_.resize_nocopy(n); n = 0; for (label celli = 0; celli < maxLen; ++celli) @@ -152,17 +161,49 @@ void Foam::cellZoneSet::invert(const label maxLen) } -void Foam::cellZoneSet::subset(const topoSet& set) +void Foam::cellZoneSet::subset(const labelUList& elems) { DynamicList<label> newAddressing(addressing_.size()); - const cellZoneSet& zoneSet = refCast<const cellZoneSet>(set); + for (const label id : elems) + { + if (found(id)) + { + newAddressing.push_back(id); + } + } - for (const label celli : zoneSet.addressing()) + addressing_.transfer(newAddressing); + updateSet(); +} + + +void Foam::cellZoneSet::subset(const topoSet& set) +{ + const auto* zonePtr = isA<cellZoneSet>(set); + + if (zonePtr) { - if (found(celli)) + // Is a cellZoneSet + this->subset(zonePtr->addressing()); + } + else + { + // Assume a cellSet + this->subset(refCast<const cellSet>(set).sortedToc()); + } +} + + +void Foam::cellZoneSet::addSet(const labelUList& elems) +{ + DynamicList<label> newAddressing(addressing_); + + for (const label id : elems) + { + if (!found(id)) { - newAddressing.append(celli); + newAddressing.push_back(id); } } @@ -173,15 +214,33 @@ void Foam::cellZoneSet::subset(const topoSet& set) void Foam::cellZoneSet::addSet(const topoSet& set) { - DynamicList<label> newAddressing(addressing_); + const auto* zonePtr = isA<cellZoneSet>(set); + + if (zonePtr) + { + // Is a cellZoneSet + this->addSet(zonePtr->addressing()); + } + else + { + // Assume a cellSet + this->addSet(refCast<const cellSet>(set).sortedToc()); + } +} + + +void Foam::cellZoneSet::subtractSet(const labelUList& elems) +{ + DynamicList<label> newAddressing(addressing_.size()); - const cellZoneSet& zoneSet = refCast<const cellZoneSet>(set); + const labelHashSet set(elems); - for (const label celli : zoneSet.addressing()) + for (const label id : addressing_) { - if (!found(celli)) + if (!set.found(id)) { - newAddressing.append(celli); + // Retain if not in the topoSet (parameter) + newAddressing.push_back(id); } } @@ -194,14 +253,12 @@ void Foam::cellZoneSet::subtractSet(const topoSet& set) { DynamicList<label> newAddressing(addressing_.size()); - const cellZoneSet& zoneSet = refCast<const cellZoneSet>(set); - - for (const label celli : addressing_) + for (const label id : addressing_) { - if (!zoneSet.found(celli)) + if (!set.found(id)) { // Not found in zoneSet so add - newAddressing.append(celli); + newAddressing.push_back(id); } } @@ -233,56 +290,49 @@ bool Foam::cellZoneSet::writeObject ) const { // Write shadow cellSet - word oldTypeName = typeName; + const word oldTypeName = typeName; const_cast<word&>(type()) = cellSet::typeName; bool ok = cellSet::writeObject(streamOpt, writeOnProc); const_cast<word&>(type()) = oldTypeName; // Modify cellZone - cellZoneMesh& cellZones = const_cast<polyMesh&>(mesh_).cellZones(); - label zoneID = cellZones.findZoneID(name()); + auto& zones = const_cast<polyMesh&>(mesh_).cellZones(); + auto* zonePtr = zones.findZone(name()); - if (zoneID == -1) + if (zonePtr) { - zoneID = cellZones.size(); - - cellZones.emplace_back + zonePtr->resetAddressing(addressing_); + } + else + { + zones.emplace_back ( name(), addressing_, - zoneID, - cellZones + zones.size(), // zoneID + zones ); } - else - { - cellZones[zoneID] = addressing_; - } - cellZones.clearAddressing(); + zones.clearAddressing(); - return ok && cellZones.write(writeOnProc); + return ok && zones.write(writeOnProc); } void Foam::cellZoneSet::updateMesh(const mapPolyMesh& morphMap) { - // cellZone - labelList newAddressing(addressing_.size()); + DynamicList<label> newAddressing(addressing_.size()); - label n = 0; for (const label celli : addressing_) { label newCelli = morphMap.reverseCellMap()[celli]; if (newCelli >= 0) { - newAddressing[n] = newCelli; - ++n; + newAddressing.push_back(newCelli); } } - newAddressing.resize(n); addressing_.transfer(newAddressing); - updateSet(); } diff --git a/src/meshTools/topoSet/topoSets/cellZoneSet.H b/src/meshTools/topoSet/topoSets/cellZoneSet.H index d2e34e416b4050074cc6986e7ab3ce960d7451fe..015e09b6f25eddbb56598ebd730012c86d4e16a0 100644 --- a/src/meshTools/topoSet/topoSets/cellZoneSet.H +++ b/src/meshTools/topoSet/topoSets/cellZoneSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -62,7 +62,7 @@ class cellZoneSet public: //- Runtime type information - TypeName("cellZoneSet"); + TypeNameNoDebug("cellZoneSet"); // Constructors @@ -76,16 +76,16 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct from initial size for labelHashSet + //- Construct empty (no-read) with initial labelHashSet capacity. cellZoneSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Copy construct from existing set + //- Copy construct (no-read) from existing set cellZoneSet ( const polyMesh& mesh, @@ -102,16 +102,17 @@ public: // Member functions - const labelList& addressing() const + const labelList& addressing() const noexcept { return addressing_; } - labelList& addressing() + labelList& addressing() noexcept { return addressing_; } + //- Sort addressing and make cellSet part consistent with addressing void updateSet(); @@ -119,13 +120,22 @@ public: // Insert all members [0,maxLen) which were not in set virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set virtual void subtractSet(const topoSet& set); //- Sync cellSet across coupled patches; update cellZone from cellSet diff --git a/src/meshTools/topoSet/topoSets/faceBitSet.C b/src/meshTools/topoSet/topoSets/faceBitSet.C index cb1fe1e729ddafc92208f21ea5580f25864429f7..9633fb9955ad0684eaa76e333f6416515502b5aa 100644 --- a/src/meshTools/topoSet/topoSets/faceBitSet.C +++ b/src/meshTools/topoSet/topoSets/faceBitSet.C @@ -35,18 +35,12 @@ License namespace Foam { - defineTypeNameAndDebug(faceBitSet, 0); + defineTypeName(faceBitSet); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::faceBitSet::faceBitSet(const polyMesh& mesh) -: - faceBitSet(mesh, false) -{} - - Foam::faceBitSet::faceBitSet(const polyMesh& mesh, const bool val) : topoBitSet(mesh, "faceBitSet", mesh.nFaces(), val) diff --git a/src/meshTools/topoSet/topoSets/faceBitSet.H b/src/meshTools/topoSet/topoSets/faceBitSet.H index ca53dca9801c5335dbd98b3668e76b26f9918caf..b9185a20737ea069d3c05feaf1fe2500ee5570fd 100644 --- a/src/meshTools/topoSet/topoSets/faceBitSet.H +++ b/src/meshTools/topoSet/topoSets/faceBitSet.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,16 +56,14 @@ class faceBitSet public: //- Runtime type information - TypeName("faceBitSet"); + TypeNameNoDebug("faceBitSet"); // Constructors - //- Construct with nFaces elements, all elements unset - explicit faceBitSet(const polyMesh& mesh); - - //- Construct with nFaces elements, using initial val - faceBitSet(const polyMesh& mesh, const bool val); + //- Construct with nFaces elements, + //- all elements unset or initial value + explicit faceBitSet(const polyMesh& mesh, const bool val = false); //- Copy construct from bitset, resizing to nFaces elements as required faceBitSet(const polyMesh& mesh, const bitSet& bits); diff --git a/src/meshTools/topoSet/topoSets/faceBoolSet.C b/src/meshTools/topoSet/topoSets/faceBoolSet.C index 0f6e1c99a54e2e3d2dcd712f4eec51a48cceb2d9..ebfc695760793f1de898adad8838d7aafad51111 100644 --- a/src/meshTools/topoSet/topoSets/faceBoolSet.C +++ b/src/meshTools/topoSet/topoSets/faceBoolSet.C @@ -35,7 +35,7 @@ License namespace Foam { - defineTypeNameAndDebug(faceBoolSet, 0); + defineTypeName(faceBoolSet); } diff --git a/src/meshTools/topoSet/topoSets/faceBoolSet.H b/src/meshTools/topoSet/topoSets/faceBoolSet.H index 2745221ca3e2a552a5bb7fa2af512034e67d7d33..fd2fc89b963f3f053ee67e33828c48ebd48b3042 100644 --- a/src/meshTools/topoSet/topoSets/faceBoolSet.H +++ b/src/meshTools/topoSet/topoSets/faceBoolSet.H @@ -56,7 +56,7 @@ class faceBoolSet public: //- Runtime type information - TypeName("faceBoolSet"); + TypeNameNoDebug("faceBoolSet"); // Constructors diff --git a/src/meshTools/topoSet/topoSets/faceSet.C b/src/meshTools/topoSet/topoSets/faceSet.C index 1a87e4f9b781068b86e86b66c78c011c8dd75bdd..ad5296b2ef95cb30eff240b7c3959521f9908e6d 100644 --- a/src/meshTools/topoSet/topoSets/faceSet.C +++ b/src/meshTools/topoSet/topoSets/faceSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,7 +37,7 @@ License namespace Foam { - defineTypeNameAndDebug(faceSet, 0); + defineTypeName(faceSet); addToRunTimeSelectionTable(topoSet, faceSet, word); addToRunTimeSelectionTable(topoSet, faceSet, size); addToRunTimeSelectionTable(topoSet, faceSet, set); @@ -51,17 +51,24 @@ Foam::faceSet::faceSet(const IOobject& io) {} +Foam::faceSet::faceSet(const IOobject& io, const Foam::zero) +: + topoSet(io, Foam::zero{}) +{} + + Foam::faceSet::faceSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - topoSet(mesh, typeName, name, rOpt, wOpt) + topoSet(mesh, typeName, name, rOpt, wOpt, reg) { - check(mesh.nFaces()); + check(mesh.nFaces()); // Valid range? } @@ -69,11 +76,11 @@ Foam::faceSet::faceSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - topoSet(mesh, name, size, wOpt) + topoSet(mesh, name, initialCapacity, wOpt) {} @@ -125,6 +132,28 @@ Foam::faceSet::faceSet {} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::labelHashSet Foam::faceSet::readContents +( + const polyMesh& mesh, + const word& name +) +{ + faceSet reader + ( + topoSet::findIOobject(mesh, name, IOobjectOption::NO_REGISTER), + Foam::zero{} + ); + + labelHashSet labels; + reader.readIOcontents(typeName, labels); + reader.checkLabels(labels, mesh.nFaces()); // Valid range? + + return labels; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // void Foam::faceSet::sync(const polyMesh& mesh) diff --git a/src/meshTools/topoSet/topoSets/faceSet.H b/src/meshTools/topoSet/topoSets/faceSet.H index 02f6e940e8222af887d0acb8ad9537e0345c7b33..13dda382aad58ec028df0d902bcbe40db8fd594c 100644 --- a/src/meshTools/topoSet/topoSets/faceSet.H +++ b/src/meshTools/topoSet/topoSets/faceSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,33 +56,50 @@ class faceSet public: //- Runtime type information - TypeName("faceSet"); + TypeNameNoDebug("faceSet"); // Constructors - //- Construct from IOobject + //- Construct from IOobject. No checking. explicit faceSet(const IOobject& io); - //- Construct from objectRegistry and name + //- Construct empty (no-read) with IOobject information + faceSet(const IOobject& io, const Foam::zero); + + //- Construct from polyMesh (registry) and name faceSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct empty with initial size for labelHashSet + //- Construct from polyMesh (registry), name and registration option faceSet ( const polyMesh& mesh, const word& name, - const label size, + IOobjectOption::registerOption reg, + IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ) + : + faceSet(mesh, name, rOpt, wOpt, reg) + {} + + //- Construct empty (no-read) with initial labelHashSet capacity. + faceSet + ( + const polyMesh& mesh, + const word& name, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct from existing set + //- Copy construct (no-read) from existing set faceSet ( const polyMesh& mesh, @@ -91,7 +108,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy of labelHashSet + //- Copy construct (no-read) from labelHashSet, + //- with search for IOobject instance. faceSet ( const polyMesh& mesh, @@ -100,7 +118,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with moving labelHashSet + //- Move construct (no-read) from labelHashSet, + //- with search for IOobject instance. faceSet ( const polyMesh& mesh, @@ -109,7 +128,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy of labels + //- Copy construct (no-read) from labels, + //- with search for IOobject instance. faceSet ( const polyMesh& mesh, @@ -119,6 +139,16 @@ public: ); + // Factory Methods + + //- Read and return contents. Intermediate IOobject is not registered + static labelHashSet readContents + ( + const polyMesh& mesh, + const word& name + ); + + //- Destructor virtual ~faceSet() = default; diff --git a/src/meshTools/topoSet/topoSets/faceZoneSet.C b/src/meshTools/topoSet/topoSets/faceZoneSet.C index 41177225c18660f3d5ae9ddf5755450d592990ff..051aa0506bf87b1f7250735cf0d76b071de02304 100644 --- a/src/meshTools/topoSet/topoSets/faceZoneSet.C +++ b/src/meshTools/topoSet/topoSets/faceZoneSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,6 +32,7 @@ License #include "setToFaceZone.H" #include "setsToFaceZone.H" #include "syncTools.H" +#include "ListOps.H" #include "addToRunTimeSelectionTable.H" @@ -39,7 +40,7 @@ License namespace Foam { - defineTypeNameAndDebug(faceZoneSet, 0); + defineTypeName(faceZoneSet); addToRunTimeSelectionTable(topoSet, faceZoneSet, word); addToRunTimeSelectionTable(topoSet, faceZoneSet, size); addToRunTimeSelectionTable(topoSet, faceZoneSet, set); @@ -50,9 +51,18 @@ namespace Foam void Foam::faceZoneSet::updateSet() { - labelList order(sortedOrder(addressing_)); - addressing_ = labelUIndList(addressing_, order)(); - flipMap_ = boolUIndList(flipMap_, order)(); + if (flipMap_.size() == addressing_.size()) + { + labelList order(Foam::sortedOrder(addressing_)); + addressing_ = labelUIndList(addressing_, order)(); + flipMap_ = boolUIndList(flipMap_, order)(); + } + else + { + Foam::sort(addressing_); + flipMap_.resize_nocopy(addressing_.size()); + flipMap_ = false; + } faceSet::clearStorage(); faceSet::reserve(addressing_.size()); @@ -66,49 +76,47 @@ Foam::faceZoneSet::faceZoneSet ( const polyMesh& mesh, const word& name, - IOobjectOption::readOption rOpt, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - faceSet(mesh, name, 1024), // do not read faceSet - mesh_(mesh), - addressing_(), - flipMap_() -{ - const faceZoneMesh& faceZones = mesh.faceZones(); - label zoneID = faceZones.findZoneID(name); - - if - ( - IOobjectOption::isReadRequired(rOpt) - || (IOobjectOption::isReadOptional(rOpt) && zoneID != -1) - ) - { - const faceZone& fz = faceZones[zoneID]; - addressing_ = fz.addressing(); - flipMap_ = fz.flipMap(); - } - - updateSet(); - - check(mesh.nFaces()); -} + faceSet(mesh, name, initialCapacity, wOpt), // Construct no-read + mesh_(mesh) +{} Foam::faceZoneSet::faceZoneSet ( const polyMesh& mesh, const word& name, - const label size, + IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt ) : - faceSet(mesh, name, size, wOpt), - mesh_(mesh), - addressing_(), - flipMap_() + faceZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto& zones = mesh.faceZones(); + const auto* zonePtr = zones.cfindZone(name); + + if (!zonePtr) + { + if (IOobjectOption::isReadRequired(rOpt)) + { + FatalErrorInFunction + << "Zone named " << name << " not found. " + << "List of available zone names: " << zones.names() << nl + << exit(FatalError); + } + } + else if (IOobjectOption::isAnyRead(rOpt)) + { + const auto& zn = *zonePtr; + addressing_ = zn.addressing(); + flipMap_ = zn.flipMap(); + } + updateSet(); + check(mesh.nFaces()); } @@ -120,11 +128,21 @@ Foam::faceZoneSet::faceZoneSet IOobjectOption::writeOption wOpt ) : - faceSet(mesh, name, set.size(), wOpt), - mesh_(mesh), - addressing_(refCast<const faceZoneSet>(set).addressing()), - flipMap_(refCast<const faceZoneSet>(set).flipMap()) + faceZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto* zonePtr = isA<faceZoneSet>(set); + + if (zonePtr) + { + addressing_ = zonePtr->addressing(); + flipMap_ = zonePtr->flipMap(); + } + else + { + // No flipMap for faceSet - handled in updateSet() + addressing_ = set.sortedToc(); + } + updateSet(); } @@ -136,24 +154,24 @@ void Foam::faceZoneSet::invert(const label maxLen) // Count label n = 0; - for (label facei = 0; facei < maxLen; ++facei) + for (label id = 0; id < maxLen; ++id) { - if (!found(facei)) + if (!topoSet::contains(id)) { ++n; } } // Fill - addressing_.setSize(n); - flipMap_.setSize(n); + addressing_.resize_nocopy(n); + flipMap_.resize_nocopy(n); n = 0; - for (label facei = 0; facei < maxLen; ++facei) + for (label id = 0; id < maxLen; ++id) { - if (!found(facei)) + if (!topoSet::contains(id)) { - addressing_[n] = facei; + addressing_[n] = id; flipMap_[n] = false; //? or true? ++n; } @@ -162,24 +180,23 @@ void Foam::faceZoneSet::invert(const label maxLen) } -void Foam::faceZoneSet::subset(const topoSet& set) +void Foam::faceZoneSet::subset +( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap +) { label nConflict = 0; DynamicList<label> newAddressing(addressing_.size()); DynamicList<bool> newFlipMap(flipMap_.size()); - Map<label> faceToIndex(addressing_.size()); - forAll(addressing_, i) - { - faceToIndex.insert(addressing_[i], i); - } - - const faceZoneSet& zoneSet = refCast<const faceZoneSet>(set); + Map<label> faceToIndex(invertToMap(addressing_)); - forAll(zoneSet.addressing(), i) + forAll(setAddressing, i) { - const label facei = zoneSet.addressing()[i]; + const label facei = setAddressing[i]; const auto iter = faceToIndex.cfind(facei); @@ -187,7 +204,7 @@ void Foam::faceZoneSet::subset(const topoSet& set) { const label index = iter.val(); - if (zoneSet.flipMap()[i] != flipMap_[index]) + if (setFlipMap.size() && (setFlipMap[i] != flipMap_[index])) { ++nConflict; } @@ -196,12 +213,12 @@ void Foam::faceZoneSet::subset(const topoSet& set) } } - if (nConflict > 0) + if (nConflict) { WarningInFunction << "subset : there are " << nConflict - << " faces with different orientation in faceZonesSets " - << name() << " and " << set.name() << endl; + << " faces with different orientation in faceZoneSets " + << name() << " and " << setName << endl; } addressing_.transfer(newAddressing); @@ -210,32 +227,57 @@ void Foam::faceZoneSet::subset(const topoSet& set) } -void Foam::faceZoneSet::addSet(const topoSet& set) +void Foam::faceZoneSet::subset(const topoSet& set) +{ + const auto* zonePtr = isA<faceZoneSet>(set); + + if (zonePtr) + { + subset(zonePtr->name(), zonePtr->addressing(), zonePtr->flipMap()); + } + else + { + // Assume a faceSet. Ignore flipMap + subset + ( + set.name(), + refCast<const faceSet>(set).sortedToc(), + boolList::null() + ); + } +} + + +void Foam::faceZoneSet::subset(const labelUList& elems) +{ + subset(word::null, elems, boolList::null()); +} + + +void Foam::faceZoneSet::addSet +( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap +) { label nConflict = 0; DynamicList<label> newAddressing(addressing_); DynamicList<bool> newFlipMap(flipMap_); - Map<label> faceToIndex(addressing_.size()); - forAll(addressing_, i) - { - faceToIndex.insert(addressing_[i], i); - } - - const faceZoneSet& zoneSet = refCast<const faceZoneSet>(set); + Map<label> faceToIndex(invertToMap(addressing_)); - forAll(zoneSet.addressing(), i) + forAll(setAddressing, i) { - label facei = zoneSet.addressing()[i]; - + const label facei = setAddressing[i]; const auto iter = faceToIndex.cfind(facei); if (iter.good()) { const label index = iter.val(); - if (zoneSet.flipMap()[i] != flipMap_[index]) + if (setFlipMap.size() && (setFlipMap[i] != flipMap_[index])) { ++nConflict; } @@ -243,7 +285,7 @@ void Foam::faceZoneSet::addSet(const topoSet& set) else { newAddressing.append(facei); - newFlipMap.append(zoneSet.flipMap()[i]); + newFlipMap.append(setFlipMap.size() ? setFlipMap[i] : false); } } @@ -252,7 +294,7 @@ void Foam::faceZoneSet::addSet(const topoSet& set) WarningInFunction << "addSet : there are " << nConflict << " faces with different orientation in faceZonesSets " - << name() << " and " << set.name() << endl; + << name() << " and " << setName << endl; } addressing_.transfer(newAddressing); @@ -261,20 +303,46 @@ void Foam::faceZoneSet::addSet(const topoSet& set) } -void Foam::faceZoneSet::subtractSet(const topoSet& set) +void Foam::faceZoneSet::addSet(const topoSet& set) +{ + const auto* zonePtr = isA<faceZoneSet>(set); + + if (zonePtr) + { + addSet(zonePtr->name(), zonePtr->addressing(), zonePtr->flipMap()); + } + else + { + // Assume a faceSet. Ignore flipMap + addSet + ( + set.name(), + refCast<const faceSet>(set).sortedToc(), + boolList::null() + ); + } +} + + +void Foam::faceZoneSet::addSet(const labelUList& elems) +{ + addSet(word::null, elems, boolList::null()); +} + + +void Foam::faceZoneSet::subtractSet +( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap +) { label nConflict = 0; DynamicList<label> newAddressing(addressing_.size()); DynamicList<bool> newFlipMap(flipMap_.size()); - const faceZoneSet& zoneSet = refCast<const faceZoneSet>(set); - - Map<label> faceToIndex(zoneSet.addressing().size()); - forAll(zoneSet.addressing(), i) - { - faceToIndex.insert(zoneSet.addressing()[i], i); - } + Map<label> faceToIndex(invertToMap(setAddressing)); forAll(addressing_, i) { @@ -286,7 +354,7 @@ void Foam::faceZoneSet::subtractSet(const topoSet& set) { const label index = iter.val(); - if (zoneSet.flipMap()[index] != flipMap_[i]) + if (setFlipMap.size() && (setFlipMap[index] != flipMap_[i])) { ++nConflict; } @@ -295,7 +363,7 @@ void Foam::faceZoneSet::subtractSet(const topoSet& set) { // Not found in zoneSet so add newAddressing.append(facei); - newFlipMap.append(zoneSet.flipMap()[i]); + newFlipMap.append(setFlipMap.size() ? setFlipMap[i] : false); } } @@ -304,7 +372,7 @@ void Foam::faceZoneSet::subtractSet(const topoSet& set) WarningInFunction << "subtractSet : there are " << nConflict << " faces with different orientation in faceZonesSets " - << name() << " and " << set.name() << endl; + << name() << " and " << setName << endl; } addressing_.transfer(newAddressing); @@ -313,59 +381,71 @@ void Foam::faceZoneSet::subtractSet(const topoSet& set) } -void Foam::faceZoneSet::sync(const polyMesh& mesh) +void Foam::faceZoneSet::subtractSet(const topoSet& set) { - // Make sure that the faceZone is consistent with the faceSet + const auto* zonePtr = isA<faceZoneSet>(set); + + if (zonePtr) + { + subtractSet(zonePtr->name(), zonePtr->addressing(), zonePtr->flipMap()); + } + else { - const labelHashSet zoneSet(addressing_); + // Assume a faceSet. Ignore flipMap + subtractSet + ( + set.name(), + refCast<const faceSet>(set).sortedToc(), + boolList::null() + ); + } +} - // Elements that are in zone but not faceSet, and - // elements that are in faceSet but not in zone - labelHashSet badSet(*this ^ zoneSet); - const label nBad = returnReduce(badSet.size(), sumOp<label>()); +void Foam::faceZoneSet::subtractSet(const labelUList& elems) +{ + subtractSet(word::null, elems, boolList::null()); +} - if (nBad) - { - WarningInFunction << "Detected " << nBad - << " faces that are in the faceZone but not" - << " in the faceSet or vice versa." - << " The faceZoneSet should only be manipulated" - << " using " << setsToFaceZone::typeName - << " or " << setToFaceZone::typeName << endl; - } - } +void Foam::faceZoneSet::sync(const polyMesh& mesh) +{ + // This routine serves two purposes + // 1. make sure that any previous faceZoneSet manipulation is + // consistent across coupled boundaries + // 2. push faceZone contents to faceSet (looses flip bit) - // Make sure that on coupled faces orientation is opposite. Pushes - // master orientation to slave in case of conflict. + // Collect all current zone info + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // 0 : not in faceZone // 1 : in faceZone and unflipped //-1 : in faceZone and flipped const label UNFLIPPED = 1; const label FLIPPED = -1; - labelList myZoneFace(mesh.nBoundaryFaces(), Zero); + labelList myZoneFace(mesh.nFaces(), Zero); forAll(addressing_, i) { - const label bFacei = addressing_[i]-mesh.nInternalFaces(); - - if (bFacei >= 0) - { - if (flipMap_[i]) - { - myZoneFace[bFacei] = FLIPPED; - } - else - { - myZoneFace[bFacei] = UNFLIPPED; - } - } + const label facei = addressing_[i]; + myZoneFace[facei] = + ( + flipMap_[i] + ? FLIPPED + : UNFLIPPED + ); } - labelList neiZoneFace(myZoneFace); + labelList neiZoneFace + ( + SubList<label> + ( + myZoneFace, + mesh.nBoundaryFaces(), + mesh.nInternalFaces() + ) + ); syncTools::swapBoundaryFaceList(mesh, neiZoneFace); @@ -375,57 +455,66 @@ void Foam::faceZoneSet::sync(const polyMesh& mesh) // Rebuild faceZone addressing and flipMap // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - DynamicList<label> newAddressing(addressing_.size()); - DynamicList<bool> newFlipMap(flipMap_.size()); + const labelHashSet& set = *this; - forAll(addressing_, i) + DynamicList<label> newAddressing(set.size()); + DynamicList<bool> newFlipMap(set.size()); + + for (const label facei : set) { - const label facei = addressing_[i]; + // See if any info from original. If so maintain flipMap. if (facei < mesh.nInternalFaces()) { newAddressing.append(facei); - newFlipMap.append(flipMap_[i]); - } - } - - for (label facei = mesh.nInternalFaces(); facei < mesh.nFaces(); facei++) - { - label myStat = myZoneFace[facei-mesh.nInternalFaces()]; - label neiStat = neiZoneFace[facei-mesh.nInternalFaces()]; - - if (myStat == 0) - { - if (neiStat == UNFLIPPED) - { - // Neighbour is unflipped so I am flipped - newAddressing.append(facei); - newFlipMap.append(true); - } - else if (neiStat == FLIPPED) - { - newAddressing.append(facei); - newFlipMap.append(false); - } + newFlipMap.append(myZoneFace[facei] == FLIPPED); } else { - if (myStat == neiStat) + const label myStat = myZoneFace[facei]; + const label neiStat = neiZoneFace[facei-mesh.nInternalFaces()]; + + if (myStat == 0) { - // Conflict. masterFace wins - newAddressing.append(facei); - if (isMasterFace[facei]) + // My face was not in zone. Check neighbour + + if (neiStat == UNFLIPPED) { - newFlipMap.append(myStat == FLIPPED); + // Neighbour is unflipped so I am flipped + newAddressing.append(facei); + newFlipMap.append(true); } - else + else if (neiStat == FLIPPED) + { + newAddressing.append(facei); + newFlipMap.append(false); + } + else //if (neiStat == 0) { - newFlipMap.append(neiStat == UNFLIPPED); + // neighbour face not in zone either. Masterface decides. + newAddressing.append(facei); + newFlipMap.append(!isMasterFace[facei]); } } else { - newAddressing.append(facei); - newFlipMap.append(myStat == FLIPPED); + if (myStat == neiStat) + { + // Conflict. masterFace wins + newAddressing.append(facei); + if (isMasterFace[facei]) + { + newFlipMap.append(myStat == FLIPPED); + } + else + { + newFlipMap.append(neiStat == UNFLIPPED); + } + } + else + { + newAddressing.append(facei); + newFlipMap.append(myStat == FLIPPED); + } } } } @@ -449,58 +538,51 @@ bool Foam::faceZoneSet::writeObject ) const { // Write shadow faceSet - word oldTypeName = typeName; + const word oldTypeName = typeName; const_cast<word&>(type()) = faceSet::typeName; bool ok = faceSet::writeObject(streamOpt, writeOnProc); const_cast<word&>(type()) = oldTypeName; // Modify faceZone - faceZoneMesh& faceZones = const_cast<polyMesh&>(mesh_).faceZones(); - label zoneID = faceZones.findZoneID(name()); + auto& zones = const_cast<polyMesh&>(mesh_).faceZones(); + auto* zonePtr = zones.findZone(name()); - if (zoneID == -1) + if (zonePtr) { - zoneID = faceZones.size(); - - faceZones.emplace_back + zonePtr->resetAddressing(addressing_, flipMap_); + } + else + { + zones.emplace_back ( name(), addressing_, flipMap_, - zoneID, - faceZones + zones.size(), // zoneID + zones ); } - else - { - faceZones[zoneID].resetAddressing(addressing_, flipMap_); - } - faceZones.clearAddressing(); + zones.clearAddressing(); - return ok && faceZones.write(writeOnProc); + return ok && zones.write(writeOnProc); } void Foam::faceZoneSet::updateMesh(const mapPolyMesh& morphMap) { - // faceZone - labelList newAddressing(addressing_.size()); - boolList newFlipMap(flipMap_.size(), false); + DynamicList<label> newAddressing(addressing_.size()); + DynamicList<bool> newFlipMap(flipMap_.size()); - label n = 0; forAll(addressing_, i) { label facei = addressing_[i]; label newFacei = morphMap.reverseFaceMap()[facei]; if (newFacei >= 0) { - newAddressing[n] = newFacei; - newFlipMap[n] = flipMap_[i]; - n++; + newAddressing.push_back(newFacei); + newFlipMap.push_back(flipMap_[i]); } } - newAddressing.setSize(n); - newFlipMap.setSize(n); addressing_.transfer(newAddressing); flipMap_.transfer(newFlipMap); diff --git a/src/meshTools/topoSet/topoSets/faceZoneSet.H b/src/meshTools/topoSet/topoSets/faceZoneSet.H index 4a621de44c261ecf3c901cd9f9d93c8279c7ebf0..75adbdd7ae71b241b22b2be3d5eea6d4f38285ae 100644 --- a/src/meshTools/topoSet/topoSets/faceZoneSet.H +++ b/src/meshTools/topoSet/topoSets/faceZoneSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -62,10 +62,34 @@ class faceZoneSet boolList flipMap_; + // Private Member Functions + + void subset + ( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap + ); + + void addSet + ( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap + ); + + void subtractSet + ( + const word& setName, + const labelUList& setAddressing, + const UList<bool>& setFlipMap + ); + + public: //- Runtime type information - TypeName("faceZoneSet"); + TypeNameNoDebug("faceZoneSet"); // Constructors @@ -79,16 +103,16 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct with initial size for labelHashSet + //- Construct empty (no-read) with initial labelHashSet capacity. faceZoneSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Copy construct from existing set + //- Copy construct (no-read) from existing set faceZoneSet ( const polyMesh& mesh, @@ -133,13 +157,22 @@ public: // Insert all members [0,maxLen) which were not in set. virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set virtual void subtractSet(const topoSet& set); //- Sync faceZoneSet across coupled patches. diff --git a/src/meshTools/topoSet/topoSets/pointBitSet.C b/src/meshTools/topoSet/topoSets/pointBitSet.C index c0cc73297e60d9879749d93902d4ee808d9e34f2..024fb5a08f4dcc2a7ac08cf3563872b402edbf8a 100644 --- a/src/meshTools/topoSet/topoSets/pointBitSet.C +++ b/src/meshTools/topoSet/topoSets/pointBitSet.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,18 +35,12 @@ License namespace Foam { - defineTypeNameAndDebug(pointBitSet, 0); + defineTypeName(pointBitSet); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::pointBitSet::pointBitSet(const polyMesh& mesh) -: - pointBitSet(mesh, false) -{} - - Foam::pointBitSet::pointBitSet(const polyMesh& mesh, const bool val) : topoBitSet(mesh, "pointBitSet", mesh.nPoints(), val) diff --git a/src/meshTools/topoSet/topoSets/pointBitSet.H b/src/meshTools/topoSet/topoSets/pointBitSet.H index 557df281a553978bfe9490db54220448f1dd06cc..7093fb6c37eaeb835c649deff9c51c6d346f215e 100644 --- a/src/meshTools/topoSet/topoSets/pointBitSet.H +++ b/src/meshTools/topoSet/topoSets/pointBitSet.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,16 +56,14 @@ class pointBitSet public: //- Runtime type information - TypeName("pointBitSet"); + TypeNameNoDebug("pointBitSet"); // Constructors - //- Construct with nPoints elements, all elements unset - explicit pointBitSet(const polyMesh& mesh); - - //- Construct with nPoints elements, using initial val - pointBitSet(const polyMesh& mesh, const bool val); + //- Construct with nPoints elements, + //- all elements unset or initial value + explicit pointBitSet(const polyMesh& mesh, const bool val); //- Copy construct from bitset, resizing to nPoints elements as required pointBitSet(const polyMesh& mesh, const bitSet& bits); diff --git a/src/meshTools/topoSet/topoSets/pointSet.C b/src/meshTools/topoSet/topoSets/pointSet.C index 6c4bc3a862aa6cbdb9090b701935e44ae1297274..92931c3de3bd6f406294a28ce25b262d703e53d9 100644 --- a/src/meshTools/topoSet/topoSets/pointSet.C +++ b/src/meshTools/topoSet/topoSets/pointSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,13 +37,14 @@ License namespace Foam { - defineTypeNameAndDebug(pointSet, 0); + defineTypeName(pointSet); addToRunTimeSelectionTable(topoSet, pointSet, word); addToRunTimeSelectionTable(topoSet, pointSet, size); addToRunTimeSelectionTable(topoSet, pointSet, set); } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::pointSet::pointSet(const IOobject& io) : @@ -51,17 +52,24 @@ Foam::pointSet::pointSet(const IOobject& io) {} +Foam::pointSet::pointSet(const IOobject& io, const Foam::zero) +: + topoSet(io, Foam::zero{}) +{} + + Foam::pointSet::pointSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - topoSet(mesh, typeName, name, rOpt, wOpt) + topoSet(mesh, typeName, name, rOpt, wOpt, reg) { - check(mesh.nPoints()); + check(mesh.nPoints()); // Valid range? } @@ -69,11 +77,11 @@ Foam::pointSet::pointSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - topoSet(mesh, name, size, wOpt) + topoSet(mesh, name, initialCapacity, wOpt) {} @@ -125,6 +133,28 @@ Foam::pointSet::pointSet {} +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // + +Foam::labelHashSet Foam::pointSet::readContents +( + const polyMesh& mesh, + const word& name +) +{ + pointSet reader + ( + topoSet::findIOobject(mesh, name, IOobjectOption::NO_REGISTER), + Foam::zero{} + ); + + labelHashSet labels; + reader.readIOcontents(typeName, labels); + reader.checkLabels(labels, mesh.nPoints()); // Valid range? + + return labels; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // void Foam::pointSet::sync(const polyMesh& mesh) diff --git a/src/meshTools/topoSet/topoSets/pointSet.H b/src/meshTools/topoSet/topoSets/pointSet.H index eff97e122ca1704c7d23b531d56fb9ae75a6d327..46da2cef6af48ec53a1442bf1eef2a18c268f6eb 100644 --- a/src/meshTools/topoSet/topoSets/pointSet.H +++ b/src/meshTools/topoSet/topoSets/pointSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,7 +56,7 @@ class pointSet public: //- Runtime type information - TypeName("pointSet"); + TypeNameNoDebug("pointSet"); // Constructors @@ -64,25 +64,42 @@ public: //- Construct from IOobject explicit pointSet(const IOobject& io); - //- Construct from objectRegistry and name + //- Construct empty (no-read) with IOobject information + pointSet(const IOobject& io, const Foam::zero); + + //- Construct from polyMesh (registry) and name pointSet ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct empty with initial size for labelHashSet + //- Construct from polyMesh (registry), name and registration option pointSet ( const polyMesh& mesh, const word& name, - const label size, + IOobjectOption::registerOption reg, + IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ) + : + pointSet(mesh, name, rOpt, wOpt, reg) + {} + + //- Construct empty (no-read) with initial labelHashSet capacity. + pointSet + ( + const polyMesh& mesh, + const word& name, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct from existing set + //- Copy construct (no-read) from existing set pointSet ( const polyMesh& mesh, @@ -91,7 +108,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy of labelHashSet + //- Copy construct (no-read) from labelHashSet, + //- with search for IOobject instance. pointSet ( const polyMesh& mesh, @@ -100,7 +118,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with moving labelHashSet + //- Move construct (no-read) from labelHashSet, + //- with search for IOobject instance. pointSet ( const polyMesh& mesh, @@ -109,7 +128,8 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct (no-read) with copy of labels + //- Copy construct (no-read) from labels, + //- with search for IOobject instance. pointSet ( const polyMesh& mesh, @@ -119,11 +139,21 @@ public: ); + // Factory Methods + + //- Read and return contents. Intermediate IOobject is not registered + static labelHashSet readContents + ( + const polyMesh& mesh, + const word& name + ); + + //- Destructor virtual ~pointSet() = default; - // Member functions + // Member Functions //- Sync set across coupled patches. Adds coupled points to set. virtual void sync(const polyMesh& mesh); diff --git a/src/meshTools/topoSet/topoSets/pointZoneSet.C b/src/meshTools/topoSet/topoSets/pointZoneSet.C index cd0e151d61dcde8298520261e964ba4388bccc84..59b612d0f531e18bf44ae07105be0854ba80ed2b 100644 --- a/src/meshTools/topoSet/topoSets/pointZoneSet.C +++ b/src/meshTools/topoSet/topoSets/pointZoneSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,18 +37,18 @@ License namespace Foam { - defineTypeNameAndDebug(pointZoneSet, 0); + defineTypeName(pointZoneSet); addToRunTimeSelectionTable(topoSet, pointZoneSet, word); addToRunTimeSelectionTable(topoSet, pointZoneSet, size); addToRunTimeSelectionTable(topoSet, pointZoneSet, set); } + // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // void Foam::pointZoneSet::updateSet() { - labelList order(sortedOrder(addressing_)); - inplaceReorder(order, addressing_); + Foam::sort(addressing_); pointSet::clearStorage(); pointSet::reserve(addressing_.size()); @@ -62,46 +62,46 @@ Foam::pointZoneSet::pointZoneSet ( const polyMesh& mesh, const word& name, - IOobjectOption::readOption rOpt, + const label initialCapacity, IOobjectOption::writeOption wOpt ) : - pointSet(mesh, name, 1024), // do not read pointSet - mesh_(mesh), - addressing_() -{ - const pointZoneMesh& pointZones = mesh.pointZones(); - label zoneID = pointZones.findZoneID(name); - - if - ( - IOobjectOption::isReadRequired(rOpt) - || (IOobjectOption::isReadOptional(rOpt) && zoneID != -1) - ) - { - const pointZone& fz = pointZones[zoneID]; - addressing_ = fz; - } - - updateSet(); - - check(mesh.nPoints()); -} + pointSet(mesh, name, initialCapacity, wOpt), // Construct no-read + mesh_(mesh) +{} Foam::pointZoneSet::pointZoneSet ( const polyMesh& mesh, const word& name, - const label size, + IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt ) : - pointSet(mesh, name, size, wOpt), - mesh_(mesh), - addressing_() + pointZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto& zones = mesh.pointZones(); + const auto* zonePtr = zones.cfindZone(name); + + if (!zonePtr) + { + if (IOobjectOption::isReadRequired(rOpt)) + { + FatalErrorInFunction + << "Zone named " << name << " not found. " + << "List of available zone names: " << zones.names() << nl + << exit(FatalError); + } + } + else if (IOobjectOption::isAnyRead(rOpt)) + { + const auto& zn = *zonePtr; + addressing_ = zn; + } + updateSet(); + check(mesh.nPoints()); } @@ -113,10 +113,19 @@ Foam::pointZoneSet::pointZoneSet IOobjectOption::writeOption wOpt ) : - pointSet(mesh, name, set.size(), wOpt), - mesh_(mesh), - addressing_(refCast<const pointZoneSet>(set).addressing()) + pointZoneSet(mesh, name, label(0), wOpt) // Construct no-read { + const auto* zonePtr = isA<pointZoneSet>(set); + + if (zonePtr) + { + addressing_ = zonePtr->addressing(); + } + else + { + addressing_ = set.sortedToc(); + } + updateSet(); } @@ -128,23 +137,23 @@ void Foam::pointZoneSet::invert(const label maxLen) // Count label n = 0; - for (label pointi = 0; pointi < maxLen; ++pointi) + for (label id = 0; id < maxLen; ++id) { - if (!found(pointi)) + if (!found(id)) { ++n; } } // Fill - addressing_.setSize(n); + addressing_.resize_nocopy(n); n = 0; - for (label pointi = 0; pointi < maxLen; ++pointi) + for (label id = 0; id < maxLen; ++id) { - if (!found(pointi)) + if (!found(id)) { - addressing_[n] = pointi; + addressing_[n] = id; ++n; } } @@ -152,17 +161,49 @@ void Foam::pointZoneSet::invert(const label maxLen) } -void Foam::pointZoneSet::subset(const topoSet& set) +void Foam::pointZoneSet::subset(const labelUList& elems) { DynamicList<label> newAddressing(addressing_.size()); - const pointZoneSet& zoneSet = refCast<const pointZoneSet>(set); + for (const label id : elems) + { + if (found(id)) + { + newAddressing.push_back(id); + } + } - for (const label pointi : zoneSet.addressing()) + addressing_.transfer(newAddressing); + updateSet(); +} + + +void Foam::pointZoneSet::subset(const topoSet& set) +{ + const auto* zonePtr = isA<pointZoneSet>(set); + + if (zonePtr) + { + // Is a pointZoneSet + this->subset(zonePtr->addressing()); + } + else { - if (found(pointi)) + // Assume a pointSet + this->subset(refCast<const pointSet>(set).sortedToc()); + } +} + + +void Foam::pointZoneSet::addSet(const labelUList& elems) +{ + DynamicList<label> newAddressing(addressing_); + + for (const label id : elems) + { + if (!found(id)) { - newAddressing.append(pointi); + newAddressing.push_back(id); } } @@ -173,15 +214,33 @@ void Foam::pointZoneSet::subset(const topoSet& set) void Foam::pointZoneSet::addSet(const topoSet& set) { - DynamicList<label> newAddressing(addressing_); + const auto* zonePtr = isA<pointZoneSet>(set); - const pointZoneSet& zoneSet = refCast<const pointZoneSet>(set); + if (zonePtr) + { + // Is a pointZoneSet + this->addSet(zonePtr->addressing()); + } + else + { + // Assume a pointSet + this->addSet(refCast<const pointSet>(set).sortedToc()); + } +} + + +void Foam::pointZoneSet::subtractSet(const labelUList& elems) +{ + DynamicList<label> newAddressing(addressing_.size()); - for (const label pointi : zoneSet.addressing()) + const labelHashSet set(elems); + + for (const label id : addressing_) { - if (!found(pointi)) + if (!set.found(id)) { - newAddressing.append(pointi); + // Retain if not in the topoSet (parameter) + newAddressing.push_back(id); } } @@ -194,14 +253,12 @@ void Foam::pointZoneSet::subtractSet(const topoSet& set) { DynamicList<label> newAddressing(addressing_.size()); - const pointZoneSet& zoneSet = refCast<const pointZoneSet>(set); - - for (label pointi : addressing_) + for (const label id : addressing_) { - if (!zoneSet.found(pointi)) + if (!set.found(id)) { - // Not found in zoneSet so add - newAddressing.append(pointi); + // Retain if not in the topoSet (parameter) + newAddressing.push_back(id); } } @@ -233,56 +290,49 @@ bool Foam::pointZoneSet::writeObject ) const { // Write shadow pointSet - word oldTypeName = typeName; + const word oldTypeName = typeName; const_cast<word&>(type()) = pointSet::typeName; bool ok = pointSet::writeObject(streamOpt, writeOnProc); const_cast<word&>(type()) = oldTypeName; // Modify pointZone - pointZoneMesh& pointZones = const_cast<polyMesh&>(mesh_).pointZones(); - label zoneID = pointZones.findZoneID(name()); + auto& zones = const_cast<polyMesh&>(mesh_).pointZones(); + auto* zonePtr = zones.findZone(name()); - if (zoneID == -1) + if (zonePtr) { - zoneID = pointZones.size(); - - pointZones.emplace_back + zonePtr->resetAddressing(addressing_); + } + else + { + zones.emplace_back ( name(), addressing_, - zoneID, - pointZones + zones.size(), // zoneID + zones ); } - else - { - pointZones[zoneID] = addressing_; - } - pointZones.clearAddressing(); + zones.clearAddressing(); - return ok && pointZones.write(writeOnProc); + return ok && zones.write(writeOnProc); } void Foam::pointZoneSet::updateMesh(const mapPolyMesh& morphMap) { - // pointZone - labelList newAddressing(addressing_.size()); + DynamicList<label> newAddressing(addressing_.size()); - label n = 0; for (const label pointi : addressing_) { const label newPointi = morphMap.reversePointMap()[pointi]; if (newPointi >= 0) { - newAddressing[n] = newPointi; - ++n; + newAddressing.push_back(newPointi); } } - newAddressing.resize(n); addressing_.transfer(newAddressing); - updateSet(); } diff --git a/src/meshTools/topoSet/topoSets/pointZoneSet.H b/src/meshTools/topoSet/topoSets/pointZoneSet.H index 5ba34edc85859e8301a6a9a4fc5c0c4d38439093..98aabecd1e4a48164d99de92e7d481482f16d032 100644 --- a/src/meshTools/topoSet/topoSets/pointZoneSet.H +++ b/src/meshTools/topoSet/topoSets/pointZoneSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,11 +60,10 @@ class pointZoneSet labelList addressing_; - public: //- Runtime type information - TypeName("pointZoneSet"); + TypeNameNoDebug("pointZoneSet"); // Constructors @@ -78,16 +77,16 @@ public: IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Construct empty with initial size for labelHashSet + //- Construct empty (no-read) with initial labelHashSet capacity. pointZoneSet ( const polyMesh& mesh, const word& name, - const label size, + const label initialCapacity, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE ); - //- Copy construct from existing set + //- Copy construct (no-read) from existing set pointZoneSet ( const polyMesh& mesh, @@ -101,18 +100,19 @@ public: virtual ~pointZoneSet() = default; - // Member functions + // Member Functions - const labelList& addressing() const + const labelList& addressing() const noexcept { return addressing_; } - labelList& addressing() + labelList& addressing() noexcept { return addressing_; } + //- Sort addressing and make pointSet part consistent with addressing void updateSet(); @@ -120,15 +120,25 @@ public: // Insert all members [0,maxLen) which were not in set virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set virtual void subtractSet(const topoSet& set); + //- Sync pointZoneSet across coupled patches. virtual void sync(const polyMesh& mesh); diff --git a/src/meshTools/topoSet/topoSets/topoBitSet.C b/src/meshTools/topoSet/topoSets/topoBitSet.C index 56676ee94357f365b8caadadde50d37a5b748cec..f6d44ca25d1010be15fdf57b748afa9a9cf94acf 100644 --- a/src/meshTools/topoSet/topoSets/topoBitSet.C +++ b/src/meshTools/topoSet/topoSets/topoBitSet.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -126,9 +126,8 @@ Foam::topoBitSet::topoBitSet IOobject::NO_WRITE, IOobject::NO_REGISTER ), - label(0) // zero-sized (unallocated) labelHashSet - ), - selected_() + Foam::zero{} // Empty labelHashSet (initialCapacity = 0) + ) {} @@ -178,6 +177,12 @@ Foam::topoBitSet::topoBitSet // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +bool Foam::topoBitSet::contains(const label id) const +{ + return selected_.test(id); +} + + bool Foam::topoBitSet::found(const label id) const { return selected_.test(id); @@ -218,9 +223,12 @@ void Foam::topoBitSet::invert(const label maxLen) void Foam::topoBitSet::subset(const topoSet& set) { // Only retain entries found in both sets - if (isA<topoBitSet>(set)) + + const auto* topoBitsPtr = isA<topoBitSet>(set); + + if (topoBitsPtr) { - selected_ &= refCast<const topoBitSet>(set).selected_; + selected_ &= topoBitsPtr->selected_; } else if (set.empty()) { @@ -239,12 +247,30 @@ void Foam::topoBitSet::subset(const topoSet& set) } +void Foam::topoBitSet::subset(const labelUList& elems) +{ + // Only retain entries found in both sets + bitSet newLabels(selected_.size()); + + for (const label id : elems) + { + if (selected_.test(id)) + { + newLabels.set(id); + } + } + selected_.transfer(newLabels); +} + + void Foam::topoBitSet::addSet(const topoSet& set) { // Add entries to the set - if (isA<topoBitSet>(set)) + const auto* topoBitsPtr = isA<topoBitSet>(set); + + if (topoBitsPtr) { - selected_ |= refCast<const topoBitSet>(set).selected_; + selected_ |= topoBitsPtr->selected_; } else { @@ -256,12 +282,20 @@ void Foam::topoBitSet::addSet(const topoSet& set) } +void Foam::topoBitSet::addSet(const labelUList& elems) +{ + selected_.set(elems); +} + + void Foam::topoBitSet::subtractSet(const topoSet& set) { // Subtract entries from the set - if (isA<topoBitSet>(set)) + const auto* topoBitsPtr = isA<topoBitSet>(set); + + if (topoBitsPtr) { - selected_ -= refCast<const topoBitSet>(set).selected_; + selected_ -= topoBitsPtr->selected_; } else { @@ -273,4 +307,10 @@ void Foam::topoBitSet::subtractSet(const topoSet& set) } +void Foam::topoBitSet::subtractSet(const labelUList& elems) +{ + selected_.unset(elems); +} + + // ************************************************************************* // diff --git a/src/meshTools/topoSet/topoSets/topoBitSet.H b/src/meshTools/topoSet/topoSets/topoBitSet.H index 456b65e67a1a9a3eb1606fc29da19af107300a1a..5123a1dcb46748be97fe59887639dbd0649a3e73 100644 --- a/src/meshTools/topoSet/topoSets/topoBitSet.H +++ b/src/meshTools/topoSet/topoSets/topoBitSet.H @@ -70,10 +70,10 @@ protected: virtual void check(const label maxSize); - //- Construct with empty selection + //- Construct (no-read) with empty selection topoBitSet(const polyMesh& mesh, const word& setName); - //- Construct with size elements + //- Construct (no-read) with \c size elements of initial value topoBitSet ( const polyMesh& mesh, @@ -82,7 +82,7 @@ protected: const bool val ); - //- Copy construct with bitset values, size elements + //- Copy construct from bitset values, size elements topoBitSet ( const polyMesh& mesh, @@ -91,7 +91,7 @@ protected: const bitSet& bits ); - //- Move construct with bitset values, size elements + //- Move construct from bitset values, size elements topoBitSet ( const polyMesh& mesh, @@ -127,6 +127,9 @@ public: selected_.reset(); } + //- Has the given index? + virtual bool contains(const label id) const; + //- Has the given index? virtual bool found(const label id) const; @@ -146,13 +149,22 @@ public: // Insert all members [0,maxLen) which were not in set. virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set virtual void subtractSet(const topoSet& set); }; diff --git a/src/meshTools/topoSet/topoSets/topoBoolSet.C b/src/meshTools/topoSet/topoSets/topoBoolSet.C index 35268ec9690ee3c0bc36f27d1c6b3c15cb073d95..4f2ae71a9db9c7a951356462881de3386537daf9 100644 --- a/src/meshTools/topoSet/topoSets/topoBoolSet.C +++ b/src/meshTools/topoSet/topoSets/topoBoolSet.C @@ -135,9 +135,8 @@ Foam::topoBoolSet::topoBoolSet IOobject::NO_WRITE, IOobject::NO_REGISTER ), - label(0) // zero-sized (unallocated) labelHashSet - ), - selected_() + Foam::zero{} // Empty labelHashSet (initialCapacity = 0) + ) {} @@ -187,6 +186,12 @@ Foam::topoBoolSet::topoBoolSet // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +bool Foam::topoBoolSet::contains(const label id) const +{ + return selected_.test(id); +} + + bool Foam::topoBoolSet::found(const label id) const { return selected_.test(id); @@ -250,6 +255,25 @@ void Foam::topoBoolSet::subset(const topoSet& set) } +void Foam::topoBoolSet::subset(const labelUList& set) +{ + // Only retain entries found in both sets + if (set.empty()) + { + selected_ = false; + } + else + { + const boolList oldSelected(selected_); + selected_ = false; + for (const label id : set) + { + selected_[id] = oldSelected[id]; + } + } +} + + void Foam::topoBoolSet::addSet(const topoSet& set) { // Add entries to the set @@ -260,6 +284,16 @@ void Foam::topoBoolSet::addSet(const topoSet& set) } +void Foam::topoBoolSet::addSet(const labelUList& set) +{ + // Add entries to the set + for (const label id : set) + { + selected_[id] = true; + } +} + + void Foam::topoBoolSet::subtractSet(const topoSet& set) { // Subtract entries from the set @@ -270,4 +304,14 @@ void Foam::topoBoolSet::subtractSet(const topoSet& set) } +void Foam::topoBoolSet::subtractSet(const labelUList& set) +{ + // Subtract entries from the set + for (const label id : set) + { + selected_.unset(id); + } +} + + // ************************************************************************* // diff --git a/src/meshTools/topoSet/topoSets/topoBoolSet.H b/src/meshTools/topoSet/topoSets/topoBoolSet.H index 6abaf921cf0956e5ba901c08218a134c00d3c524..a28557d3becc0bcb1caf91331de5be62b8b39e7f 100644 --- a/src/meshTools/topoSet/topoSets/topoBoolSet.H +++ b/src/meshTools/topoSet/topoSets/topoBoolSet.H @@ -70,10 +70,10 @@ protected: virtual void check(const label maxSize); - //- Construct with empty selection + //- Construct (no-read) with empty selection topoBoolSet(const polyMesh& mesh, const word& setName); - //- Construct with size elements + //- Construct (no-read) with \c size elements of initial value topoBoolSet ( const polyMesh& mesh, @@ -100,7 +100,6 @@ protected: boolList&& bools ); - public: //- Destructor @@ -127,6 +126,9 @@ public: selected_ = false; } + //- Has the given index? + virtual bool contains(const label id) const; + //- Has the given index? virtual bool found(const label id) const; @@ -146,13 +148,22 @@ public: // Insert all members [0,maxLen) which were not in set. virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set. + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set. virtual void subtractSet(const topoSet& set); }; diff --git a/src/meshTools/topoSet/topoSets/topoSet.C b/src/meshTools/topoSet/topoSets/topoSet.C index 177fb22b468afb1b83adfc08184d9c12322e539f..0d8c64cbbe16eb56226c8f2de78723763d54812d 100644 --- a/src/meshTools/topoSet/topoSets/topoSet.C +++ b/src/meshTools/topoSet/topoSets/topoSet.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -140,6 +140,30 @@ Foam::fileName Foam::topoSet::localPath } +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +bool Foam::topoSet::readIOcontents +( + const word& wantedType, + labelHashSet& contents +) +{ + if (isReadRequired() || (isReadOptional() && headerOk())) + { + Istream& is = readStream(wantedType); + + if (is.good()) + { + is >> contents; + close(); + } + return true; + } + + return false; +} + + // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // // Update stored cell numbers using map. @@ -200,10 +224,24 @@ void Foam::topoSet::updateLabels(const labelUList& map) } -void Foam::topoSet::check(const label maxSize) +void Foam::topoSet::checkLabels(const labelUList& labels, const label maxSize) { - const labelHashSet& labels = *this; + for (const label oldId : labels) + { + if (oldId < 0 || oldId >= maxSize) + { + FatalErrorInFunction + << "Illegal content " << oldId << " of set:" << name() + << " of type " << type() << nl + << "Value should be between [0," << maxSize << ')' << nl + << abort(FatalError); + } + } +} + +void Foam::topoSet::checkLabels(const labelHashSet& labels, const label maxSize) +{ for (const label oldId : labels) { if (oldId < 0 || oldId >= maxSize) @@ -211,21 +249,25 @@ void Foam::topoSet::check(const label maxSize) FatalErrorInFunction << "Illegal content " << oldId << " of set:" << name() << " of type " << type() << nl - << "Value should be between [0," << maxSize << ')' - << endl + << "Value should be between [0," << maxSize << ')' << nl << abort(FatalError); } } } -// Write maxElem elements, starting at iter. Updates iter and elemI. -void Foam::topoSet::writeDebug +void Foam::topoSet::check(const label maxSize) +{ + checkLabels(*this, maxSize); +} + + +// Write maxElem elements, starting at iter. Updates iter +Foam::label Foam::topoSet::writeDebug ( Ostream& os, const label maxElem, - topoSet::const_iterator& iter, - label& elemI + labelHashSet::const_iterator& iter ) const { label n = 0; @@ -239,19 +281,19 @@ void Foam::topoSet::writeDebug os << iter.key() << ' '; ++n; - ++elemI; } + + return n; } -// Write maxElem elements, starting at iter. Updates iter and elemI. -void Foam::topoSet::writeDebug +// Write maxElem elements, starting at iter. Updates iter +Foam::label Foam::topoSet::writeDebug ( Ostream& os, const pointField& coords, const label maxElem, - topoSet::const_iterator& iter, - label& elemI + labelHashSet::const_iterator& iter ) const { label n = 0; @@ -265,8 +307,9 @@ void Foam::topoSet::writeDebug os << iter.key() << coords[iter.key()] << ' '; ++n; - ++elemI; } + + return n; } @@ -283,22 +326,20 @@ void Foam::topoSet::writeDebug os << "Set bounding box: min = " << bb.min() << " max = " << bb.max() << " metres." << nl << endl; - label n = 0; - - topoSet::const_iterator iter = this->cbegin(); + labelHashSet::const_iterator iter = labelHashSet::cbegin(); if (size() <= maxLen) { - writeDebug(os, coords, maxLen, iter, n); + writeDebug(os, coords, maxLen, iter); } else { - label halfLen = maxLen/2; + const label halfLen = maxLen/2; os << "Size larger than " << maxLen << ". Printing first and last " << halfLen << " elements:" << nl << endl; - writeDebug(os, coords, halfLen, iter, n); + label n = writeDebug(os, coords, halfLen, iter); os << nl << " .." << nl << endl; @@ -307,7 +348,7 @@ void Foam::topoSet::writeDebug ++iter; } - writeDebug(os, coords, halfLen, iter, n); + writeDebug(os, coords, halfLen, iter); } } @@ -319,7 +360,8 @@ Foam::IOobject Foam::topoSet::findIOobject const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) { IOobject io @@ -329,13 +371,14 @@ Foam::IOobject Foam::topoSet::findIOobject ( mesh.meshDir()/"sets", word::null, - IOobject::READ_IF_PRESENT, + IOobjectOption::READ_IF_PRESENT, mesh.facesInstance() ), polyMesh::meshSubDir/"sets", mesh, rOpt, - wOpt + wOpt, + reg ); if (!io.typeHeaderOk<topoSet>(false) && disallowGenericSets != 0) @@ -353,7 +396,8 @@ Foam::IOobject Foam::topoSet::findIOobject const Time& runTime, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) { return IOobject @@ -364,6 +408,8 @@ Foam::IOobject Foam::topoSet::findIOobject polyMesh::meshSubDir/"sets", word::null, IOobject::MUST_READ, + + // The stop instance with "polyMesh/faces" runTime.findInstance ( polyMesh::meshSubDir, @@ -374,7 +420,8 @@ Foam::IOobject Foam::topoSet::findIOobject polyMesh::meshSubDir/"sets", runTime, rOpt, - wOpt + wOpt, + reg ); } @@ -385,38 +432,50 @@ Foam::topoSet::topoSet(const IOobject& io, const word& wantedType) : regIOobject(io) { - if (isReadRequired() || (isReadOptional() && headerOk())) - { - if (readStream(wantedType).good()) - { - readStream(wantedType) >> static_cast<labelHashSet&>(*this); - - close(); - } - } + readIOcontents(wantedType, static_cast<labelHashSet&>(*this)); } +Foam::topoSet::topoSet(const IOobject& io, const Foam::zero) +: + regIOobject(io) +{} + + +Foam::topoSet::topoSet(const IOobject& io, const label initialCapacity) +: + regIOobject(io), + labelHashSet(initialCapacity) +{} + + +Foam::topoSet::topoSet(const IOobject& io, const labelHashSet& labels) +: + regIOobject(io), + labelHashSet(labels) +{} + + +Foam::topoSet::topoSet(const IOobject& io, labelHashSet&& labels) +: + regIOobject(io), + labelHashSet(std::move(labels)) +{} + + Foam::topoSet::topoSet ( const polyMesh& mesh, const word& wantedType, const word& name, IOobjectOption::readOption rOpt, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - regIOobject(findIOobject(mesh, name, rOpt, wOpt)) + regIOobject(findIOobject(mesh, name, rOpt, wOpt, reg)) { - if (isReadRequired() || (isReadOptional() && headerOk())) - { - if (readStream(wantedType).good()) - { - readStream(wantedType) >> static_cast<labelHashSet&>(*this); - - close(); - } - } + readIOcontents(wantedType, static_cast<labelHashSet&>(*this)); } @@ -424,12 +483,13 @@ Foam::topoSet::topoSet ( const polyMesh& mesh, const word& name, - const label size, - IOobjectOption::writeOption wOpt + const label initialCapacity, + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt)), - labelHashSet(size) + regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt, reg)), + labelHashSet(initialCapacity) {} @@ -438,10 +498,11 @@ Foam::topoSet::topoSet const polyMesh& mesh, const word& name, const labelHashSet& labels, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt)), + regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt, reg)), labelHashSet(labels) {} @@ -451,10 +512,11 @@ Foam::topoSet::topoSet const polyMesh& mesh, const word& name, labelHashSet&& labels, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt)), + regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt, reg)), labelHashSet(std::move(labels)) {} @@ -464,40 +526,26 @@ Foam::topoSet::topoSet const polyMesh& mesh, const word& name, const labelUList& labels, - IOobjectOption::writeOption wOpt + IOobjectOption::writeOption wOpt, + IOobjectOption::registerOption reg ) : - regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt)), + regIOobject(findIOobject(mesh, name, IOobject::NO_READ, wOpt, reg)), labelHashSet(labels) {} -Foam::topoSet::topoSet(const IOobject& io, const label size) -: - regIOobject(io), - labelHashSet(size) -{} - - -Foam::topoSet::topoSet(const IOobject& io, const labelHashSet& labels) -: - regIOobject(io), - labelHashSet(labels) -{} - - -Foam::topoSet::topoSet(const IOobject& io, labelHashSet&& labels) -: - regIOobject(io), - labelHashSet(std::move(labels)) -{} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +bool Foam::topoSet::contains(const label id) const +{ + return static_cast<const labelHashSet&>(*this).contains(id); +} -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::topoSet::found(const label id) const { - return static_cast<const labelHashSet&>(*this).found(id); + return static_cast<const labelHashSet&>(*this).contains(id); } @@ -534,13 +582,13 @@ void Foam::topoSet::invert(const label maxLen) ); clear(); // Maybe don't trust the previous move operation - reserve(max(64, (maxLen - original.size()))); + reserve(Foam::max(64, (maxLen - original.size()))); - for (label id=0; id < maxLen; ++id) + for (label id = 0; id < maxLen; ++id) { - if (!original.found(id)) + if (!original.contains(id)) { - this->set(id); + labelHashSet::set(id); } } } @@ -553,6 +601,27 @@ void Foam::topoSet::subset(const topoSet& set) } +void Foam::topoSet::subset(const labelUList& elems) +{ + // Only retain entries found in both sets + auto& currentSet = static_cast<labelHashSet&>(*this); + + DynamicList<label> newElems(Foam::min(elems.size(), currentSet.size())); + + for (const label elem : elems) + { + if (currentSet.contains(elem)) + { + newElems.push_back(elem); + } + } + if (newElems.size() < currentSet.size()) + { + currentSet = newElems; + } +} + + void Foam::topoSet::addSet(const topoSet& set) { // Add entries to the set @@ -560,6 +629,13 @@ void Foam::topoSet::addSet(const topoSet& set) } +void Foam::topoSet::addSet(const labelUList& elems) +{ + // Add entries to the set + static_cast<labelHashSet&>(*this).set(elems); +} + + void Foam::topoSet::subtractSet(const topoSet& set) { // Subtract entries from the set @@ -567,9 +643,10 @@ void Foam::topoSet::subtractSet(const topoSet& set) } -void Foam::topoSet::deleteSet(const topoSet& set) +void Foam::topoSet::subtractSet(const labelUList& elems) { - this->subtractSet(set); + // Subtract entries from the set + static_cast<labelHashSet&>(*this).unset(elems); } @@ -581,22 +658,20 @@ void Foam::topoSet::sync(const polyMesh&) void Foam::topoSet::writeDebug(Ostream& os, const label maxLen) const { - label n = 0; - - topoSet::const_iterator iter = this->cbegin(); + labelHashSet::const_iterator iter = labelHashSet::cbegin(); if (size() <= maxLen) { - writeDebug(os, maxLen, iter, n); + writeDebug(os, maxLen, iter); } else { - label halfLen = maxLen/2; + const label halfLen = maxLen/2; os << "Size larger than " << maxLen << ". Printing first and last " << halfLen << " elements:" << nl << endl; - writeDebug(os, halfLen, iter, n); + label n = writeDebug(os, halfLen, iter); os << nl << " .." << nl << endl; @@ -605,7 +680,7 @@ void Foam::topoSet::writeDebug(Ostream& os, const label maxLen) const ++iter; } - writeDebug(os, halfLen, iter, n); + writeDebug(os, halfLen, iter); } } diff --git a/src/meshTools/topoSet/topoSets/topoSet.H b/src/meshTools/topoSet/topoSets/topoSet.H index d8eef752992a89e85ec2905f692696cb66d499c2..5f424112b4932b6ef509b978c0945de47901468e 100644 --- a/src/meshTools/topoSet/topoSets/topoSet.H +++ b/src/meshTools/topoSet/topoSets/topoSet.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -70,6 +70,15 @@ protected: // Protected Member Functions + //- Read into labelHashSet if IOobject flags set. Return true if read. + bool readIOcontents(const word& wantedType, labelHashSet& contents); + + //- Check limits on addressable range. + void checkLabels(const labelUList& labels, const label maxSize); + + //- Check limits on addressable range. + void checkLabels(const labelHashSet& labels, const label maxSize); + //- Update map from map. // Used to update cell/face labels after morphing virtual void updateLabels(const labelUList& map); @@ -77,24 +86,25 @@ protected: //- Check limits on addressable range. virtual void check(const label maxSize); - //- Write part of contents nicely formatted. Prints labels only. - void writeDebug + //- Write part of contents nicely formatted. + // Prints labels only. + // \returns number of labels written + label writeDebug ( Ostream& os, const label maxElem, - topoSet::const_iterator& iter, - label& elemI + labelHashSet::const_iterator& iter ) const; - //- Write part of contents nicely formatted. Prints label - // and corresponding coordinate. - void writeDebug + //- Write part of contents nicely formatted. + // Prints label and corresponding coordinate. + // \returns number of labels written + label writeDebug ( Ostream& os, const pointField& coords, const label maxElem, - topoSet::const_iterator& iter, - label& elemI + labelHashSet::const_iterator& iter ) const; //- Write labels and coordinates columnwise to os. Truncate to maxLen. @@ -123,22 +133,37 @@ public: //- Name of file set will use. static fileName localPath(const polyMesh& mesh, const word& name); - //- Find IOobject in the polyMesh/sets (used as constructor helper) + //- Find IOobject in the polyMesh/sets/ (used as constructor helper) static IOobject findIOobject ( const polyMesh& mesh, const word& name, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Find IOobject in the polyMesh/sets (used as constructor helper) + //- Find IOobject in the polyMesh/sets/ (used as constructor helper) static IOobject findIOobject ( - const Time& runTime, + const polyMesh& mesh, const word& name, + IOobjectOption::registerOption reg, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + ) + { + return findIOobject(mesh, name, rOpt, wOpt, reg); + } + + //- Find IOobject in the polyMesh/sets/ (used as constructor helper) + static IOobject findIOobject + ( + const Time& runTime, + const word& name, + IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); @@ -196,6 +221,21 @@ public: // Can't use typeName info here since subclasses not yet instantiated topoSet(const IOobject& io, const word& wantedType); + //- Construct empty (no-read) with IOobject information + topoSet(const IOobject& io, const Foam::zero); + + //- Construct empty (no-read) with initial labelHashSet capacity, + //- with IOobject information + topoSet(const IOobject& io, const label initialCapacity); + + //- Copy construct (no-read) from labelHashSet, + //- with IOobject information. + topoSet(const IOobject& io, const labelHashSet& labels); + + //- Move construct (no-read) from labelHashSet, + //- with IOobject information. + topoSet(const IOobject& io, labelHashSet&& labels); + //- Construct from polyMesh and name. // Searches for a polyMesh/sets directory but not beyond the // mesh.facesInstance(). @@ -205,21 +245,23 @@ public: const word& wantedType, const word& name, IOobjectOption::readOption rOpt = IOobjectOption::MUST_READ, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct empty from additional size of labelHashSet. + //- Construct empty (no-read) with initial labelHashSet capacity. // Searches for a polyMesh/sets directory but not beyond the // mesh.facesInstance(). topoSet ( const polyMesh& mesh, const word& name, - const label size, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + const label initialCapacity, + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct (no-read) with copy of labelHashSet + //- Copy construct (no-read) from labelHashSet. // Searches for a polyMesh/sets directory but not beyond the // mesh.facesInstance(). topoSet @@ -227,10 +269,11 @@ public: const polyMesh& mesh, const word& name, const labelHashSet& labels, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct (no-read) with moving labelHashSet + //- Move construct (no-read) from labelHashSet. // Searches for a polyMesh/sets directory but not beyond the // mesh.facesInstance(). topoSet @@ -238,10 +281,11 @@ public: const polyMesh& mesh, const word& name, labelHashSet&& labels, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct (no-read) with copy of labels + //- Copy construct (no-read) from list of labels. // Searches for a polyMesh/sets directory but not beyond the // mesh.facesInstance(). topoSet @@ -249,18 +293,10 @@ public: const polyMesh& mesh, const word& name, const labelUList& labels, - IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE + IOobjectOption::writeOption wOpt = IOobjectOption::NO_WRITE, + IOobjectOption::registerOption reg = IOobjectOption::LEGACY_REGISTER ); - //- Construct empty from IOobject and HashSet size. - topoSet(const IOobject& io, const label size); - - //- Construct from IOobject and copy of labelHashSet. - topoSet(const IOobject& io, const labelHashSet& labels); - - //- Construct from IOobject and move labelHashSet. - topoSet(const IOobject& io, labelHashSet&& labels); - //- Clone autoPtr<topoSet> clone() const @@ -309,6 +345,9 @@ public: // Member Functions + //- Has the given index? + virtual bool contains(const label id) const; + //- Has the given index? virtual bool found(const label id) const; @@ -328,15 +367,25 @@ public: // Insert all members [0,maxLen) which were not in set. virtual void invert(const label maxLen); + //- Subset contents. Only elements present in both sets remain. + virtual void subset(const labelUList& elems); + //- Subset contents. Only elements present in both sets remain. virtual void subset(const topoSet& set); - //- Add elements present in set. + //- Add given elements to the set + virtual void addSet(const labelUList& elems); + + //- Add given elements to the set virtual void addSet(const topoSet& set); - //- Subtract elements present in set. + //- Subtract given elements from the set + virtual void subtractSet(const labelUList& elems); + + //- Subtract given elements from the set virtual void subtractSet(const topoSet& set); + //- Sync set across coupled patches. virtual void sync(const polyMesh& mesh); @@ -364,19 +413,23 @@ public: //- Return max allowable index (+1). Not implemented. virtual label maxSize(const polyMesh& mesh) const = 0; - //- Helper: call updateMesh on all sets in container (and - // updates instance) + //- Helper: call updateMesh on all items in container + //- (and updates instance) template<class Container> static void updateMesh ( const fileName& instance, const mapPolyMesh&, - Container& + Container& items ); - //- Helper: set instance on all sets in container + //- Helper: set instance on all items in container template<class Container> - static void setInstance(const fileName& instance, Container&); + static void setInstance + ( + const fileName& instance, + Container& items + ); //- Helper: remove all sets files from mesh instance static void removeFiles(const polyMesh&); @@ -392,7 +445,8 @@ public: //- Deprecated(2018-10) subtract elements present in set. // \deprecated(2018-10) - use subtractSet instead - virtual void deleteSet(const topoSet& set); + FOAM_DEPRECATED_FOR(2018-10, "subtractSet()") + virtual void deleteSet(const topoSet& set) { this->subtractSet(set); } }; diff --git a/src/meshTools/topoSet/topoSets/topoSetTemplates.C b/src/meshTools/topoSet/topoSets/topoSetTemplates.C index d163d2e1a3317220d1763c7d581e1ac6fb8593a8..02e501f5d09374a1298ea8aaa0088e1685549f3c 100644 --- a/src/meshTools/topoSet/topoSets/topoSetTemplates.C +++ b/src/meshTools/topoSet/topoSets/topoSetTemplates.C @@ -25,19 +25,18 @@ License \*---------------------------------------------------------------------------*/ - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Container> void Foam::topoSet::setInstance ( const fileName& instance, - Container& lst + Container& items ) { - forAll(lst, i) + for (auto& item : items) { - lst[i].instance() = instance; + item.instance() = instance; } } @@ -47,13 +46,13 @@ void Foam::topoSet::updateMesh ( const fileName& instance, const mapPolyMesh& map, - Container& lst + Container& items ) { - forAll(lst, i) + for (auto& item : items) { - lst[i].instance() = instance; - lst[i].updateMesh(map); + item.instance() = instance; + item.updateMesh(map); } } diff --git a/src/meshTools/triSurface/triSurfaceLoader/triSurfaceLoader.C b/src/meshTools/triSurface/triSurfaceLoader/triSurfaceLoader.C index 41fd1f783e6f64363dff155e9dd5d21e290c2a7a..e552d61cecef3271fcd30d2a74e7ece694c29f16 100644 --- a/src/meshTools/triSurface/triSurfaceLoader/triSurfaceLoader.C +++ b/src/meshTools/triSurface/triSurfaceLoader/triSurfaceLoader.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2022 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -106,7 +106,7 @@ Foam::label Foam::triSurfaceLoader::select(const word& name) if (available_.found(name)) { selected_.resize(1); - selected_.first() = name; + selected_.front() = name; } else { @@ -121,14 +121,14 @@ Foam::label Foam::triSurfaceLoader::select(const wordRe& mat) { if (mat.isPattern()) { - labelList foundIds = findStrings(mat, available_); + labelList foundIds = wordRes::matching(mat, available_); Foam::sort(foundIds); selected_ = wordList(available_, foundIds); } else if (available_.found(static_cast<const word&>(mat))) { selected_.resize(1); - selected_.first() = mat; + selected_.front() = mat; } else { @@ -162,7 +162,7 @@ Foam::label Foam::triSurfaceLoader::select(const UList<wordRe>& matcher) { if (mat.isPattern()) { - labelList indices = findStrings(mat, available_); + labelList indices = wordRes::matching(mat, available_); Foam::sort(indices); for (const label idx : indices) diff --git a/src/meshTools/triSurface/triSurfaceTools/triSurfaceCloseness.C b/src/meshTools/triSurface/triSurfaceTools/triSurfaceCloseness.C index c47ee9e62fd3d36dd0a2927dbce7518c332af8d2..b9add2217b7f6f3cba5dc3fbae0b07bfeca0bbf2 100644 --- a/src/meshTools/triSurface/triSurfaceTools/triSurfaceCloseness.C +++ b/src/meshTools/triSurface/triSurfaceTools/triSurfaceCloseness.C @@ -103,8 +103,8 @@ Foam::triSurfaceTools::writeCloseness { Pair<tmp<scalarField>> tpair ( - tmp<scalarField>(new scalarField(surf.size(), GREAT)), - tmp<scalarField>(new scalarField(surf.size(), GREAT)) + tmp<scalarField>::New(surf.size(), GREAT), + tmp<scalarField>::New(surf.size(), GREAT) ); Info<< "Extracting internal and external closeness of surface." << endl; diff --git a/src/meshTools/triangulatedPatch/triangulatedPatch.C b/src/meshTools/triangulatedPatch/triangulatedPatch.C index f80ec255957c5b2c592f391719044f08ce7873b7..ab2763b9afe7a8a8ccdaa96d91963f47675f60f0 100644 --- a/src/meshTools/triangulatedPatch/triangulatedPatch.C +++ b/src/meshTools/triangulatedPatch/triangulatedPatch.C @@ -171,31 +171,32 @@ void Foam::triangulatedPatch::update() // Set zero value at the start of the tri area/weight list scalar patchArea = 0; - *iter = patchArea; - ++iter; + *iter++ = patchArea; // Calculate cumulative and total area (processor-local at this point) for (const auto& t : triFace_) { patchArea += t.mag(points); - - *iter = patchArea; - ++iter; + *iter++ = patchArea; } - // FIXME: use allGatherList of subslice - scalarList procSumWght(numProc+1, Foam::zero{}); - procSumWght[myProci+1] = patchArea; - Pstream::listCombineReduce(procSumWght, maxEqOp<scalar>()); + scalarList procSumArea(numProc+1); + procSumArea[0] = 0; + + { + scalarList::subList slice(procSumArea, numProc, 1); + slice[myProci] = patchArea; + Pstream::allGatherList(slice); + } // Convert to cumulative - for (label i = 1; i < procSumWght.size(); ++i) + for (label i = 1; i < procSumArea.size(); ++i) { - procSumWght[i] += procSumWght[i-1]; + procSumArea[i] += procSumArea[i-1]; } - const scalar offset = procSumWght[myProci]; - const scalar totalArea = procSumWght.back(); + const scalar offset = procSumArea[myProci]; + const scalar totalArea = procSumArea.back(); // Apply processor offset and normalise - for a global 0-1 interval for (scalar& w : triWght_) diff --git a/src/meshTools/twoDPointCorrector/twoDPointCorrector.C b/src/meshTools/twoDPointCorrector/twoDPointCorrector.C index 29fcae294fab799a20039f92b627d00c42428442..827faa279cb9189632598d19fe9e5db8e08c2971 100644 --- a/src/meshTools/twoDPointCorrector/twoDPointCorrector.C +++ b/src/meshTools/twoDPointCorrector/twoDPointCorrector.C @@ -199,7 +199,7 @@ void Foam::twoDPointCorrector::snapToWedge Foam::twoDPointCorrector::twoDPointCorrector(const polyMesh& mesh) : - MeshObject<polyMesh, Foam::UpdateableMeshObject, twoDPointCorrector>(mesh), + MeshObject_type(mesh), required_(mesh_.nGeometricD() == 2), planeNormalPtr_(nullptr), normalEdgeIndicesPtr_(nullptr), @@ -209,7 +209,6 @@ Foam::twoDPointCorrector::twoDPointCorrector(const polyMesh& mesh) {} - // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::twoDPointCorrector::~twoDPointCorrector() diff --git a/src/meshTools/twoDPointCorrector/twoDPointCorrector.H b/src/meshTools/twoDPointCorrector/twoDPointCorrector.H index b7c7d831ffb7174d2ebee3d431d484795ccc5c37..ff9c6195f05c8d17977d9692a644be7126a1c06c 100644 --- a/src/meshTools/twoDPointCorrector/twoDPointCorrector.H +++ b/src/meshTools/twoDPointCorrector/twoDPointCorrector.H @@ -54,7 +54,7 @@ SourceFiles namespace Foam { -// Forward class declarations +// Forward Declarations class polyMesh; /*---------------------------------------------------------------------------*\ @@ -65,7 +65,17 @@ class twoDPointCorrector : public MeshObject<polyMesh, UpdateableMeshObject, twoDPointCorrector> { - // Private data + // Private Typedefs + + typedef MeshObject + < + polyMesh, + UpdateableMeshObject, + twoDPointCorrector + > MeshObject_type; + + + // Private Data //- Is 2D correction required, i.e. is the mesh bool required_; diff --git a/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCModel/ATCModel.C b/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCModel/ATCModel.C index 9a3bb69b9fe7c858ae734a2a68eb3c5e88ec2dae..2adc5016f83d46dcdfa83c7119940a564be63189 100644 --- a/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCModel/ATCModel.C +++ b/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCModel/ATCModel.C @@ -229,25 +229,16 @@ tmp<volScalarField> ATCModel::createLimiter const labelList& zeroCells = zeroType->getZeroATCcells(); const label nSmooth = dict.getOrDefault<label>("nSmooth", 0); - tmp<volScalarField> tlimiter + auto tlimiter = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "limiter", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh, - scalar(1), - dimless, - fvPatchFieldBase::zeroGradientType() - ) + "limiter", + IOobject::NO_REGISTER, + mesh, + scalar(1), + dimless, + fvPatchFieldBase::zeroGradientType() ); - volScalarField& limiter = tlimiter.ref(); + auto& limiter = tlimiter.ref(); computeLimiter(limiter, zeroCells, nSmooth); diff --git a/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCUaGradU/ATCUaGradU.C b/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCUaGradU/ATCUaGradU.C index 62048a5e95dc165eafa38b6d961c394495a646a6..ae5e9ea36af389560395715af23532e5ad841455 100644 --- a/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCUaGradU/ATCUaGradU.C +++ b/src/optimisation/adjointOptimisation/adjoint/ATCModel/ATCUaGradU/ATCUaGradU.C @@ -102,23 +102,14 @@ void ATCUaGradU::addATC(fvVectorMatrix& UaEqn) tmp<volTensorField> ATCUaGradU::getFISensitivityTerm() const { - tmp<volTensorField> tvolSDTerm + auto tvolSDTerm = volTensorField::New ( - new volTensorField - ( - IOobject - ( - "ATCFISensitivityTerm" + type(), - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedTensor(sqr(dimLength)/pow(dimTime, 3), Zero) - ) + "ATCFISensitivityTerm" + type(), + IOobject::NO_REGISTER, + mesh_, + dimensionedTensor(sqr(dimLength)/pow(dimTime, 3), Zero) ); - volTensorField& volSDTerm = tvolSDTerm.ref(); + auto& volSDTerm = tvolSDTerm.ref(); const volVectorField& U = primalVars_.U(); const volVectorField& Ua = adjointVars_.Ua(); diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointBoundaryCondition/adjointBoundaryCondition.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointBoundaryCondition/adjointBoundaryCondition.H index 9d30c4bc773f667f5c7d1b1822eca87ccc37d9b3..22ce358b907bb965382076676952b051fa9caf4b 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointBoundaryCondition/adjointBoundaryCondition.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointBoundaryCondition/adjointBoundaryCondition.H @@ -116,7 +116,7 @@ public: //- Destructor - virtual ~adjointBoundaryCondition<Type>() = default; + virtual ~adjointBoundaryCondition() = default; // Member Functions diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldPressure/adjointFarFieldPressureFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldPressure/adjointFarFieldPressureFvPatchScalarField.H index 97406ef979ac3f0ea2c99b1e2f52279d8dc9b4b4..085e282dcab8aa31a8259e55afd6fffd4716f651 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldPressure/adjointFarFieldPressureFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldPressure/adjointFarFieldPressureFvPatchScalarField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointFarFieldPressureFvPatchScalarField ( @@ -106,16 +97,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldVelocity/adjointFarFieldVelocityFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldVelocity/adjointFarFieldVelocityFvPatchVectorField.H index 1f61a89d7a188e4a9cc23f9a8fd30f4369d7f678..68ccdf27d1eb9116a193544d6445b39f67636b1b 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldVelocity/adjointFarFieldVelocityFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointFarFieldVelocity/adjointFarFieldVelocityFvPatchVectorField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointFarFieldVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointFarFieldVelocityFvPatchVectorField ( @@ -106,16 +97,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointFarFieldVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointInletVelocity/adjointInletVelocityFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointInletVelocity/adjointInletVelocityFvPatchVectorField.H index 04d4891f0966af67446f1d69b9e9bb6cccc6c441..b760aac7475a70636d88f7043a7410773a9ce6b4 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointInletVelocity/adjointInletVelocityFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointInletVelocity/adjointInletVelocityFvPatchVectorField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointInletVelocityFvPatchVectorField ( @@ -106,16 +97,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H index ad035cc6ff7f9eaac33884b80be1d6877ef15902..8765168bd14b9e95ea530c605b83dc4a08a0cbe5 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletPressure/adjointOutletPressureFvPatchScalarField.H @@ -90,15 +90,6 @@ 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 ( @@ -106,16 +97,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H index 95c57078aa6e78b21ea3a6f9a81c890b97eaa4fd..9b8d6cd1e6f07b3ddcf945cc9af51ce9f4990d67 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.H @@ -100,15 +100,6 @@ 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 ( @@ -116,20 +107,22 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointOutletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } - // Member functions //- Return true: Allow adjoint solvers to obtain the outlet phia @@ -145,7 +138,7 @@ public: // adjoint pressure BC virtual void evaluate ( - const Pstream::commsTypes commsType = Pstream::commsTypes::blocking + const Pstream::commsTypes commsType = Pstream::commsTypes::buffered ); //virtual void updateCoeffs(); diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocityFlux/adjointOutletVelocityFluxFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocityFlux/adjointOutletVelocityFluxFvPatchVectorField.H index 160da9dd9518c051d51736667e41ee0985ebbc87..af2402bf0fde3fb1f7c23a0d6bbf4978a6db304b 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocityFlux/adjointOutletVelocityFluxFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointOutletVelocityFlux/adjointOutletVelocityFluxFvPatchVectorField.H @@ -97,15 +97,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointOutletVelocityFluxFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletVelocityFluxFvPatchVectorField ( @@ -113,20 +104,22 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointOutletVelocityFluxFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } - // Member functions //- Return true: Allow adjoint solvers to obtain the outlet phia diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointRotatingWallVelocity/adjointRotatingWallVelocityFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointRotatingWallVelocity/adjointRotatingWallVelocityFvPatchVectorField.H index 382ffa5baaaf9791b1521668825a0f70a096222f..e76012d5eea695c635888c78ac1e32edff5ba8a0 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointRotatingWallVelocity/adjointRotatingWallVelocityFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointRotatingWallVelocity/adjointRotatingWallVelocityFvPatchVectorField.H @@ -104,15 +104,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointRotatingWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointRotatingWallVelocityFvPatchVectorField ( @@ -120,16 +111,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointRotatingWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocity/adjointWallVelocityFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocity/adjointWallVelocityFvPatchVectorField.H index 7ead8328d5b09f6d8221d49fbc2eec88614b4972..5597759c1fddeb4b8d20784b217e13c727d32cb4 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocity/adjointWallVelocityFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocity/adjointWallVelocityFvPatchVectorField.H @@ -112,15 +112,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointWallVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointWallVelocityFvPatchVectorField ( @@ -128,16 +119,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointWallVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocityLowRe/adjointWallVelocityLowReFvPatchVectorField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocityLowRe/adjointWallVelocityLowReFvPatchVectorField.H index 30a1752191db6267a3a98a2854050aa398dee02c..399b8f8829e3f4bb4a1f8da520e9cc6a05ba718d 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocityLowRe/adjointWallVelocityLowReFvPatchVectorField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointWallVelocityLowRe/adjointWallVelocityLowReFvPatchVectorField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new adjointWallVelocityLowReFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference adjointWallVelocityLowReFvPatchVectorField ( @@ -106,16 +97,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new adjointWallVelocityLowReFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointZeroInlet/adjointZeroInletFvPatchField.H b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointZeroInlet/adjointZeroInletFvPatchField.H index 62b1dc4e8c9f1c19f7caf057abd9fa8053da53b6..055493c62880a5d0baf63d7df770e046fb370186 100644 --- a/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointZeroInlet/adjointZeroInletFvPatchField.H +++ b/src/optimisation/adjointOptimisation/adjoint/adjointBoundaryConditions/adjointZeroInlet/adjointZeroInletFvPatchField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new adjointZeroInletFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference adjointZeroInletFvPatchField ( @@ -106,16 +97,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new adjointZeroInletFvPatchField(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContribution/boundaryAdjointContribution.C b/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContribution/boundaryAdjointContribution.C index a8220f2639d9af36ca102ef8e6e9a0ab17bbe3d8..a36d646dff2aa6e0951f1852f676bcbb6a601703 100644 --- a/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContribution/boundaryAdjointContribution.C +++ b/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContribution/boundaryAdjointContribution.C @@ -144,7 +144,7 @@ tmp<fvPatchScalarField> boundaryAdjointContribution::turbulentDiffusivity() const { NotImplemented; - return tmp<fvPatchScalarField>(nullptr); + return nullptr; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContributionIncompressible/boundaryAdjointContributionIncompressible.C b/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContributionIncompressible/boundaryAdjointContributionIncompressible.C index 86f780e6b1cd46efdda2cde457fdd9b91d5b520e..51c29df2557c4458816a1b16dd395905d13fb66e 100644 --- a/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContributionIncompressible/boundaryAdjointContributionIncompressible.C +++ b/src/optimisation/adjointOptimisation/adjoint/boundaryAdjointContributions/boundaryAdjointContributionIncompressible/boundaryAdjointContributionIncompressible.C @@ -251,8 +251,8 @@ tmp<scalarField> boundaryAdjointContributionIncompressible::momentumDiffusion() tmp<scalarField> boundaryAdjointContributionIncompressible::laminarDiffusivity() { - tmp<scalarField> tnu(new scalarField(patch_.size(), Zero)); - scalarField& nu = tnu.ref(); + auto tnu = tmp<scalarField>::New(patch_.size(), Zero); + auto& nu = tnu.ref(); const autoPtr<incompressible::turbulenceModel>& turbulenceModel = primalVars_.turbulence(); @@ -272,13 +272,10 @@ tmp<scalarField> boundaryAdjointContributionIncompressible::thermalDiffusion() tmp<scalarField> talphaEff = turbulenceModel.alphaEff(patch_.index()); */ - tmp<scalarField> talphaEff(new scalarField(patch_.size(), Zero)); - WarningInFunction << "no abstract thermalDiffusion is implemented. Returning zero field"; - - return talphaEff; + return tmp<scalarField>::New(patch_.size(), Zero); } diff --git a/src/optimisation/adjointOptimisation/adjoint/displacementMethod/displacementMethodpLaplacianMotionSolver/displacementMethodpLaplacianMotionSolver.C b/src/optimisation/adjointOptimisation/adjoint/displacementMethod/displacementMethodpLaplacianMotionSolver/displacementMethodpLaplacianMotionSolver.C index d73d0d270b327b9af3fab8296345e5978cdb5d90..7e33bac17d9a9056cf6f205aae92c0e746999d11 100644 --- a/src/optimisation/adjointOptimisation/adjoint/displacementMethod/displacementMethodpLaplacianMotionSolver/displacementMethodpLaplacianMotionSolver.C +++ b/src/optimisation/adjointOptimisation/adjoint/displacementMethod/displacementMethodpLaplacianMotionSolver/displacementMethodpLaplacianMotionSolver.C @@ -65,9 +65,9 @@ displacementMethodpLaplacianMotionSolver "dynamicMeshDict", mesh.time().constant(), mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::AUTO_WRITE, - false + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER ) ).subDict("pLaplacianMotionSolverCoeffs").getOrDefault<bool> ( diff --git a/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C b/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C index 3778a5cce99a42d0236c23a170121958eb811e3c..172b675c1f9d1edd6837615b44f24b80dcf131a3 100644 --- a/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C +++ b/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C @@ -171,9 +171,7 @@ Foam::elasticityMotionSolver::elasticityMotionSolver Foam::tmp<Foam::pointField> Foam::elasticityMotionSolver::curPoints() const { - tmp<pointField> tnewPoints(new pointField(mesh().points())); - - return tnewPoints; + return tmp<pointField>::New(mesh().points()); } @@ -264,10 +262,11 @@ void Foam::elasticityMotionSolver::solve() ( "points", mesh().pointsInstance(), - mesh().meshSubDir, + polyMesh::meshSubDir, mesh(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), mesh().points() ); diff --git a/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/volumetricBSplinesMotionSolver/volumetricBSplinesMotionSolver.C b/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/volumetricBSplinesMotionSolver/volumetricBSplinesMotionSolver.C index 89fa4dd4a417b1dfb31a05963cdbedcab65279c3..143c9b84ad018af4df9cb2c587d91b70397e6350 100644 --- a/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/volumetricBSplinesMotionSolver/volumetricBSplinesMotionSolver.C +++ b/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/volumetricBSplinesMotionSolver/volumetricBSplinesMotionSolver.C @@ -74,8 +74,8 @@ Foam::volumetricBSplinesMotionSolver::volumetricBSplinesMotionSolver Foam::tmp<Foam::pointField> Foam::volumetricBSplinesMotionSolver::curPoints() const { - tmp<vectorField> tPointMovement(new vectorField(mesh().points())); - vectorField& pointMovement = tPointMovement.ref(); + auto tPointMovement = tmp<vectorField>::New(mesh().points()); + auto& pointMovement = tPointMovement.ref(); label pastControlPoints(0); PtrList<NURBS3DVolume>& boxes = volBSplinesBase_.boxesRef(); diff --git a/src/optimisation/adjointOptimisation/adjoint/global/boundaryFieldsFwd.H b/src/optimisation/adjointOptimisation/adjoint/global/boundaryFieldsFwd.H index 4a4292e4e1834700d1e7f8676b057a6839dd40af..c2a4f36d407acd760f80fbc5f9c29fa7e7c88a80 100644 --- a/src/optimisation/adjointOptimisation/adjoint/global/boundaryFieldsFwd.H +++ b/src/optimisation/adjointOptimisation/adjoint/global/boundaryFieldsFwd.H @@ -36,8 +36,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef boundaryFieldsFwd_H -#define boundaryFieldsFwd_H +#ifndef Foam_boundaryFieldsFwd_H +#define Foam_boundaryFieldsFwd_H #include "fieldTypes.H" #include "volFields.H" @@ -50,13 +50,13 @@ namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -//volFields +//- volFields typedef typename volScalarField::Boundary boundaryScalarField; typedef typename volVectorField::Boundary boundaryVectorField; typedef typename volTensorField::Boundary boundaryTensorField; -//pointFields - actually a plain list of fields with dimension equal to the -// number of points per patch +//- pointFields - actually a plain list of fields with dimension equal to the +//- number of points per patch typedef List<Field<scalar>> pointBoundaryScalarField; typedef List<Field<vector>> pointBoundaryVectorField; typedef List<Field<tensor>> pointBoundaryTensorField; diff --git a/src/optimisation/adjointOptimisation/adjoint/global/createZeroField.H b/src/optimisation/adjointOptimisation/adjoint/global/createZeroField.H index 384f0f16f40ae41ae2eaf058d0542d72ed3086c9..8f9d7734563aaebb3ed4b8a866994e4b8fe8557f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/global/createZeroField.H +++ b/src/optimisation/adjointOptimisation/adjoint/global/createZeroField.H @@ -89,18 +89,22 @@ createZeroBoundaryPtr Boundary; // Make sure that the patchFields to be generated will be of type - // calculated, even if they are of constraint type + // calculated, even if they are of constraint type. // Necessary to avoid unexpected behaviour when computing sensitivities // on symmetry patches (not a good practice either way) const fvBoundaryMesh& bm = mesh.boundary(); wordList actualPatchTypes(bm.size(), word::null); - forAll(actualPatchTypes, pI) + forAll(actualPatchTypes, patchi) { - auto patchTypeCstrIter = - fvPatchField<Type>::patchConstructorTablePtr_->cfind(bm[pI].type()); - if (patchTypeCstrIter.good()) + if + ( + fvPatchField<Type>::patchConstructorTablePtr_->contains + ( + bm[patchi].type() + ) + ) { - actualPatchTypes[pI] = bm[pI].type(); + actualPatchTypes[patchi] = bm[patchi].type(); } } @@ -109,7 +113,7 @@ createZeroBoundaryPtr new Boundary ( mesh.boundary(), - mesh.V()*pTraits<Type>::zero, // Dummy internal field, + DimensionedField<Type, volMesh>::null(), wordList(bm.size(), fvPatchFieldBase::calculatedType()), actualPatchTypes ) diff --git a/src/optimisation/adjointOptimisation/adjoint/interpolation/pointVolInterpolation/pointVolInterpolation.H b/src/optimisation/adjointOptimisation/adjoint/interpolation/pointVolInterpolation/pointVolInterpolation.H index 642b3062e10fdf2271a71e405e788079ce16a93a..b3372d82baa69b4fe567d961dd0ca4ba0a38517c 100644 --- a/src/optimisation/adjointOptimisation/adjoint/interpolation/pointVolInterpolation/pointVolInterpolation.H +++ b/src/optimisation/adjointOptimisation/adjoint/interpolation/pointVolInterpolation/pointVolInterpolation.H @@ -53,6 +53,7 @@ SourceFiles namespace Foam { +// Forward Declarations class fvMesh; class pointMesh; @@ -62,7 +63,7 @@ class pointMesh; class pointVolInterpolation { - // Private data + // Private Data const pointMesh& pointMesh_; const fvMesh& fvMesh_; @@ -110,13 +111,12 @@ public: // Constructors - //- Constructor given pointMesh and fvMesh. + //- Construct given pointMesh and fvMesh. pointVolInterpolation(const pointMesh&, const fvMesh&); - // Destructor - - ~pointVolInterpolation(); + //- Destructor + ~pointVolInterpolation(); // Member functions diff --git a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolateAdjoint.C b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolateAdjoint.C index e174ef78889cb553931227efac3733400d566261..a4841aea9d761f4b4b7aaf788e82969e8f47e57f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolateAdjoint.C +++ b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolateAdjoint.C @@ -81,7 +81,8 @@ void Foam::volPointInterpolationAdjoint::pushUntransformedData template<class Type> -Foam::tmp<Foam::Field<Type>> Foam::volPointInterpolationAdjoint::flatBoundaryField +Foam::tmp<Foam::Field<Type>> +Foam::volPointInterpolationAdjoint::flatBoundaryField ( const GeometricField<Type, fvPatchField, volMesh>& vf ) const @@ -89,11 +90,8 @@ Foam::tmp<Foam::Field<Type>> Foam::volPointInterpolationAdjoint::flatBoundaryFie const fvMesh& mesh = vf.mesh(); const fvBoundaryMesh& bm = mesh.boundary(); - tmp<Field<Type>> tboundaryVals - ( - new Field<Type>(mesh.nBoundaryFaces()) - ); - Field<Type>& boundaryVals = tboundaryVals.ref(); + auto tboundaryVals = tmp<Field<Type>>::New(mesh.nBoundaryFaces()); + auto& boundaryVals = tboundaryVals.ref(); forAll(vf.boundaryField(), patchi) { @@ -188,11 +186,8 @@ void Foam::volPointInterpolationAdjoint::interpolateSensitivitiesField const fvMesh& Mesh = mesh(); const fvBoundaryMesh& bm = Mesh.boundary(); - tmp<Field<Type>> tboundaryVals - ( - new Field<Type>(Mesh.nBoundaryFaces(), Zero) - ); - Field<Type>& boundaryVals = tboundaryVals.ref(); + auto tboundaryVals = tmp<Field<Type>>::New(Mesh.nBoundaryFaces(), Zero); + auto& boundaryVals = tboundaryVals.ref(); // Do points on 'normal' patches from the surrounding patch faces // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.C b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.C index 63e07ae5266317080b92e899a5ffba5afe4507e0..0d63d8cff345d7562d95a7bed048c6cda7c50b93 100644 --- a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.C +++ b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.C @@ -297,10 +297,7 @@ void Foam::volPointInterpolationAdjoint::makeWeights() Foam::volPointInterpolationAdjoint::volPointInterpolationAdjoint(const fvMesh& vm) : - MeshObject<fvMesh, Foam::UpdateableMeshObject, volPointInterpolationAdjoint> - ( - vm - ) + MeshObject_type(vm) { makeWeights(); } diff --git a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.H b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.H index 78225457b8ba34b3a8a826df5bb05f2cc5954272..7d6c7339790dd54e7fea51a5f719b8f5a9b8b706 100644 --- a/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.H +++ b/src/optimisation/adjointOptimisation/adjoint/interpolation/volPointInterpolation/volPointInterpolationAdjoint.H @@ -50,6 +50,7 @@ SourceFiles namespace Foam { +// Forward Declarations class fvMesh; class pointMesh; @@ -59,8 +60,23 @@ class pointMesh; class volPointInterpolationAdjoint : - public MeshObject<fvMesh, UpdateableMeshObject, volPointInterpolationAdjoint> + public MeshObject + < + fvMesh, + UpdateableMeshObject, + volPointInterpolationAdjoint + > { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + UpdateableMeshObject, + volPointInterpolationAdjoint + > MeshObject_type; + + protected: // Protected data @@ -128,7 +144,7 @@ public: // Constructors - //- Constructor given fvMesh and pointMesh. + //- Construct given fvMesh explicit volPointInterpolationAdjoint(const fvMesh&); diff --git a/src/optimisation/adjointOptimisation/adjoint/objectiveManager/objectiveManager.C b/src/optimisation/adjointOptimisation/adjoint/objectiveManager/objectiveManager.C index 39b36884316b017a38265f9e9e2366b7bcfb4eec..937bcb4587f2f46b3eb8c11f2e015620fbfec0c8 100644 --- a/src/optimisation/adjointOptimisation/adjoint/objectiveManager/objectiveManager.C +++ b/src/optimisation/adjointOptimisation/adjoint/objectiveManager/objectiveManager.C @@ -254,19 +254,21 @@ bool objectiveManager::writeObjectives const bool valid ) { - if (weightedObjectiveFile_.valid()) + if (weightedObjectiveFile_) { + auto& os = weightedObjectiveFile_(); + unsigned int width = IOstream::defaultPrecision() + 5; - weightedObjectiveFile_() + + os << setw(4) << mesh_.time().timeName() << " " << setw(width) << weightedObjective << " "; for (objective& objI : objectives_) { - weightedObjectiveFile_() - << setw(width) << objI.JCycle() << " "; + os << setw(width) << objI.JCycle() << " "; } - weightedObjectiveFile_() << endl; + os << endl; } return writeObjectives(); diff --git a/src/optimisation/adjointOptimisation/adjoint/objectives/objective/objective.C b/src/optimisation/adjointOptimisation/adjoint/objectives/objective/objective.C index eca940fdf7af312e0ddb1ed7d3e00f75e76fe0ed..fafdf44dcbb5d5738534ef0769dc715c0b020939 100644 --- a/src/optimisation/adjointOptimisation/adjoint/objectives/objective/objective.C +++ b/src/optimisation/adjointOptimisation/adjoint/objectives/objective/objective.C @@ -275,7 +275,7 @@ scalar objective::JCycle(bool negate) const } // Subtract target, in case the objective is used as a constraint - if (target_.valid()) + if (target_) { if (negate) { @@ -538,15 +538,14 @@ bool objective::write(const bool valid) const { setObjectiveFilePtr(); OFstream& file = objFunctionFilePtr_(); - ios_base::fmtflags flags = file.flags(); - flags |= std::cout.left; - file.flags(flags); - if (target_.valid()) + file.setf(std::ios_base::left); + + if (target_) { file<< setw(width_) << "#target" << " " << setw(width_) << target_() << endl; } - if (targetLeft_.valid()) + if (targetLeft_) { file<< setw(width_) << "#targetLeft" << " " << setw(width_) << targetLeft_() << endl; diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/adjointEikonalSolver/adjointEikonalSolver.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/adjointEikonalSolver/adjointEikonalSolver.C index 782f4c1e7834390fc7d73121e2f68bfc30a35c54..37e6b9d942bafe47435dd2b2ea00bbf07f746baa 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/adjointEikonalSolver/adjointEikonalSolver.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/adjointEikonalSolver/adjointEikonalSolver.C @@ -48,6 +48,7 @@ namespace Foam defineTypeNameAndDebug(adjointEikonalSolver, 0); + // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // wordList adjointEikonalSolver::patchTypes() const @@ -60,7 +61,7 @@ wordList adjointEikonalSolver::patchTypes() const for (const label patchi : wallPatchIDs_) { - daTypes[patchi] = zeroGradientFvPatchScalarField::typeName; + daTypes[patchi] = fvPatchFieldBase::zeroGradientType(); } return daTypes; @@ -82,7 +83,8 @@ void adjointEikonalSolver::read() tmp<surfaceScalarField> adjointEikonalSolver::computeYPhi() { // Primal distance field - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); volVectorField ny ( @@ -197,7 +199,8 @@ void adjointEikonalSolver::solve() read(); // Primal distance field - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); // Convecting flux tmp<surfaceScalarField> tyPhi = computeYPhi(); @@ -212,7 +215,7 @@ void adjointEikonalSolver::solve() mesh_, IOobject::NO_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ), mesh_, dimensionedScalar("scaleDims", dimTime/dimLength, scalar(1)) @@ -274,7 +277,9 @@ boundaryVectorField& adjointEikonalSolver::distanceSensitivities() boundaryVectorField& distanceSens = distanceSensPtr_(); - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); + for (const label patchi : sensitivityPatchIDs_) { vectorField nf(mesh_.boundary()[patchi].nf()); @@ -293,7 +298,8 @@ tmp<volTensorField> adjointEikonalSolver::getFISensitivityTerm() const { Info<< "Calculating distance sensitivities " << endl; - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); const volVectorField gradD(fvc::grad(d)); auto gradDDa @@ -329,7 +335,7 @@ tmp<volTensorField> adjointEikonalSolver::getFISensitivityTerm() const ), mesh_, dimensionedTensor(da_.dimensions(), Zero), - zeroGradientFvPatchField<tensor>::typeName + fvPatchFieldBase::zeroGradientType() ) ); volTensorField& distanceSens = tdistanceSens.ref(); @@ -353,7 +359,8 @@ tmp<scalarField> adjointEikonalSolver::topologySensitivities const word& designVarsName ) const { - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); auto tres(tmp<scalarField>::New(d.primitiveField().size(), Zero)); scalarField dSens(d.primitiveField()*da_.primitiveField()); @@ -376,7 +383,9 @@ const volScalarField& adjointEikonalSolver::da() tmp<volVectorField> adjointEikonalSolver::gradEikonal() { - const volScalarField& d = adjointSolver_.yWall(); + const tmp<volScalarField> td(adjointSolver_.yWall()); + const volScalarField& d = td(); + volVectorField gradD(fvc::grad(d)); return tmp<volVectorField>::New("gradEikonal", 2*gradD & fvc::grad(gradD)); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/shape/surface/sensitivitySurface.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/shape/surface/sensitivitySurface.C index 3d1b1dfd898fe2c79c0d970e7469660330d96c07..94c7b26562b8ef526ad9ba5292658ac001bf5a3a 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/shape/surface/sensitivitySurface.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/adjointSensitivity/adjointSensitivity/shape/surface/sensitivitySurface.C @@ -74,55 +74,70 @@ void sensitivitySurface::smoothSensitivities() // Read in parameters const label iters(dict().getOrDefault<label>("iters", 500)); const scalar tolerance(dict().getOrDefault<scalar>("tolerance", 1.e-06)); - autoPtr<faMesh> aMeshPtr(nullptr); - IOobject faceLabels - ( - "faceLabels", - mesh_.time().findInstance - ( - mesh_.dbDir()/faMesh::meshSubDir, - "faceLabels", - IOobject::READ_IF_PRESENT - ), - faMesh::meshSubDir, - mesh_, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE - ); + autoPtr<faMesh> aMeshPtr = faMesh::TryNew(mesh_); - // If the faMesh already exists, read it - if (faceLabels.typeHeaderOk<labelIOList>(false)) + if (aMeshPtr) { - Info<< "Reading the already constructed faMesh" << endl; - aMeshPtr.reset(new faMesh(mesh_)); + Info<< "Loaded the existing faMesh" << nl; } else { // Dictionary used to construct the faMesh dictionary faMeshDefinition; - IOobject faMeshDefinitionDict - ( - "faMeshDefinition", - mesh_.time().caseSystem(), - mesh_, - IOobject::MUST_READ, - IOobject::NO_WRITE - ); + // Check and read system/faMeshDefinition + { + IOobject io + ( + "faMeshDefinition", + mesh_.time().caseSystem(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + + if (io.typeHeaderOk<IOdictionary>(false)) + { + Info<< "Using system/faMeshDefinition" << nl; + faMeshDefinition = IOdictionary(io); + } + else if (debug) + { + Info<< "No " << io.name() << " in " << io.path() << nl; + } + } - // If the faMeshDefinitionDict exists, use it to construct the mesh - if (faMeshDefinitionDict.typeHeaderOk<IOdictionary>(false)) + // Check and read system/finite-area/faMeshDefinition + if (faMeshDefinition.empty()) { - Info<< "Reading faMeshDefinition from system " << endl; - faMeshDefinition = IOdictionary(faMeshDefinitionDict); + IOobject io + ( + "faMeshDefinition", + mesh_.time().caseSystem()/faMesh::prefix(), + mesh_, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER + ); + + if (io.typeHeaderOk<IOdictionary>(false)) + { + Info<< "Using system/finite-area/faMeshDefinition" << nl; + faMeshDefinition = IOdictionary(io); + } + else if (debug) + { + Info<< "No " << io.name() << " in " << io.path() << nl; + } } - // Otherwise, faMesh is generated from all patches on which we compute - // sensitivities - else + + // No specified faMeshDefinition? + // - generate faMesh from all patches on which we compute sensitivities + + if (faMeshDefinition.empty()) { - Info<< "Constructing faMeshDefinition from sensitivity patches" - << endl; wordList polyMeshPatches(sensitivityPatchIDs_.size()); label i(0); for (const label patchID : sensitivityPatchIDs_) @@ -131,13 +146,22 @@ void sensitivitySurface::smoothSensitivities() } faMeshDefinition.add<wordList>("polyMeshPatches", polyMeshPatches); (void)faMeshDefinition.subDictOrAdd("boundary"); - Info<< faMeshDefinition << endl; + + // TBD: Place all edges into the "defaultPatch" ? + // faMeshDefinition.subDictOrAdd("defaultPatch") + // .add("name", "undefined"); + + Info<< "Create faMeshDefinition from sensitivity patches" + << nl << nl; + + faMeshDefinition.writeEntry("faMeshDefinition", Info); } - // Construct faMesh + // Construct faMesh from faMeshDefinition aMeshPtr.reset(new faMesh(mesh_, faMeshDefinition)); } - faMesh& aMesh = aMeshPtr.ref(); + faMesh& aMesh = *aMeshPtr; + // Physical radius of the smoothing, provided either directly or computed // based on the average 'length' of boundary faces @@ -154,7 +178,7 @@ void sensitivitySurface::smoothSensitivities() "RpdeSqr", dimArea, sqr(Rphysical/(2.*::sqrt(3.))) ); - dimensionedScalar one("1", dimless, 1.); + dimensionedScalar one(dimless, Foam::one{}); // Mapping engine volSurfaceMapping vsm(aMesh); @@ -162,16 +186,9 @@ void sensitivitySurface::smoothSensitivities() // Source term in faMatrix needs to be an areaField areaVectorField sens ( - IOobject - ( - "sens", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + aMesh.newIOobject("sens"), aMesh, - dimensionedVector(dimless, Zero), + dimensionedVector(dimless, Foam::zero{}), faPatchFieldBase::zeroGradientType() ); @@ -220,14 +237,7 @@ void sensitivitySurface::smoothSensitivities() // Write normal, regularised sensitivities to file volScalarField volSmoothedSens ( - IOobject - ( - "smoothedSurfaceSens" + suffix_, - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + mesh_.newIOobject("smoothedSurfaceSens" + suffix_), mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C index 459b4ed2d669f1105477c8b8f1cb55fea2036bb5..3c3c3e4f349b9a2e3a60967d5bdf720b20359c1f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C @@ -66,9 +66,9 @@ void Foam::designVariables::readBounds scalar lowerBound(dict_.get<scalar>("lowerBound")); lowerBounds_.reset(new scalarField(getVars().size(), lowerBound)); } - else if (lowerBoundPtr.valid()) + else if (lowerBoundPtr) { - lowerBounds_.reset(new scalarField(getVars().size(), lowerBoundPtr())); + lowerBounds_.reset(new scalarField(getVars().size(), *lowerBoundPtr)); } // Read upper bounds for the design variables, if present @@ -91,9 +91,9 @@ void Foam::designVariables::readBounds scalar upperBound(dict_.get<scalar>("upperBound")); upperBounds_.reset(new scalarField(getVars().size(), upperBound)); } - else if (upperBoundPtr.valid()) + else if (upperBoundPtr) { - upperBounds_.reset(new scalarField(getVars().size(), upperBoundPtr())); + upperBounds_.reset(new scalarField(getVars().size(), *upperBoundPtr)); } } @@ -164,9 +164,9 @@ Foam::autoPtr<Foam::designVariables> Foam::designVariables::New Info<< "designVariables type : " << modelType << endl; - auto cstrIter = designVariablesConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = designVariablesConstructorTable(modelType); - if (!cstrIter.found()) + if (!ctorPtr) { FatalErrorInLookup ( @@ -176,7 +176,7 @@ Foam::autoPtr<Foam::designVariables> Foam::designVariables::New ) << exit(FatalError); } - return autoPtr<designVariables>(cstrIter()(mesh, dict)); + return autoPtr<designVariables>(ctorPtr(mesh, dict)); } @@ -262,7 +262,7 @@ void Foam::designVariables::addFvOptions Foam::tmp<Foam::scalarField> Foam::designVariables::constraintValues() { - return tmp<scalarField>(nullptr); + return nullptr; } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariablesI.H b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariablesI.H index 28c7f05bbe84955234a07eb5789d18747073c341..025cf5dc57a4b5884c0b978dc5207972bd73ce64 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariablesI.H +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariablesI.H @@ -37,7 +37,7 @@ Foam::designVariables::activeDesignVariables() const bool Foam::designVariables::isMaxInitChangeSet() const { - return maxInitChange_.valid(); + return bool(maxInitChange_); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/levelSetDesignVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/levelSetDesignVariables.C index e28b90547c45b26bf0da3757e4714f6c66c02340..ea00083fed9ee9f277c699719421123218060db9 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/levelSetDesignVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/levelSetDesignVariables.C @@ -227,11 +227,7 @@ void Foam::levelSetDesignVariables::updateSignedDistances() ), mesh_, dimensionedScalar(dimLength, Zero), - wordList - ( - mesh_.boundary().size(), - zeroGradientFvPatchField<scalar>::typeName - ) + fvPatchFieldBase::zeroGradientType() ); y.primitiveFieldRef() = aTilda_.primitiveFieldRef(); y.correctBoundaryConditions(); @@ -297,7 +293,7 @@ levelSetDesignVariables::levelSetDesignVariables ), mesh_, dimensionedScalar(dimless, Zero), - zeroGradientFvPatchField<scalar>::typeName + fvPatchFieldBase::zeroGradientType() ), signedDistances_ ( @@ -311,7 +307,7 @@ levelSetDesignVariables::levelSetDesignVariables ), mesh_, dimensionedScalar(dimless, Zero), - zeroGradientFvPatchField<scalar>::typeName + fvPatchFieldBase::zeroGradientType() ), interpolation_ ( @@ -421,11 +417,8 @@ void levelSetDesignVariables::update(scalarField& correction) // Though the mesh is kept constant, the distance from wall may change // due to fvOptions depending on beta. Trick wallDist into updating it - if (mesh_.foundObject<UpdateableMeshObject<fvMesh>>("wallDist")) - { - mesh_.lookupObjectRef<UpdateableMeshObject<fvMesh>>("wallDist"). - movePoints(); - } + + wallDist::try_movePoints(mesh_); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/Bezier/BezierDesignVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/Bezier/BezierDesignVariables.C index 05e11c7614243c838bfa7a98e54c4e03b79d94f2..af96e7c30e80b8755226d95a9d8a5c01d0e6a436 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/Bezier/BezierDesignVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/Bezier/BezierDesignVariables.C @@ -159,7 +159,7 @@ Foam::BezierDesignVariables::BezierDesignVariables mesh, IOobject::MUST_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ) ) ), diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/shapeDesignVariables/shapeDesignVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/shapeDesignVariables/shapeDesignVariables.C index c1eca2034bcbe36eeb65d91bbb166cdc60f2a518..388b1dc77b108d4f1e47eebe16df2387a54b9ffa 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/shapeDesignVariables/shapeDesignVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/shapeDesignVariables/shapeDesignVariables.C @@ -211,9 +211,9 @@ Foam::autoPtr<Foam::shapeDesignVariables> Foam::shapeDesignVariables::New Info<< "shapeDesignVariables type : " << modelType << endl; - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); - if (!cstrIter.found()) + if (!ctorPtr) { FatalErrorInLookup ( @@ -223,7 +223,7 @@ Foam::autoPtr<Foam::shapeDesignVariables> Foam::shapeDesignVariables::New ) << exit(FatalError); } - return autoPtr<shapeDesignVariables>(cstrIter()(mesh, dict)); + return autoPtr<shapeDesignVariables>(ctorPtr(mesh, dict)); } @@ -281,11 +281,11 @@ void Foam::shapeDesignVariables::moveMesh() ( "points", mesh_.pointsInstance(), - mesh_.meshSubDir, + polyMesh::meshSubDir, mesh_, IOobject::NO_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ), mesh_.points() ); diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/morphingBoxConstraints/morphingBoxConstaint/morphingBoxConstraint.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/morphingBoxConstraints/morphingBoxConstaint/morphingBoxConstraint.C index 377230d2424d89f163493bef2183251cdd4142e9..334c05f5b60a0448f1b5e2dedb7e47cf0ff58ddb 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/morphingBoxConstraints/morphingBoxConstaint/morphingBoxConstraint.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/morphingBoxConstraints/morphingBoxConstaint/morphingBoxConstraint.C @@ -121,9 +121,9 @@ Foam::autoPtr<Foam::morphingBoxConstraint> Foam::morphingBoxConstraint::New Info<< "morphingBoxConstraint type : " << modelType << endl; - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); - if (!cstrIter.found()) + if (!ctorPtr) { FatalErrorInLookup ( @@ -135,10 +135,11 @@ Foam::autoPtr<Foam::morphingBoxConstraint> Foam::morphingBoxConstraint::New return autoPtr<morphingBoxConstraint> ( - cstrIter()(mesh, dict, designVariables) + ctorPtr(mesh, dict, designVariables) ); } + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * // void Foam::morphingBoxConstraint::computeBounds diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/volumetricBSplinesDesignVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/volumetricBSplinesDesignVariables.C index d20d3e08b7de961d0c97d661481faa536ccab182..3c22b4327d5944c2eafa32462a749d9437837f1a 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/volumetricBSplinesDesignVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/shape/volumetricBSplines/volumetricBSplinesDesignVariables.C @@ -307,7 +307,7 @@ void Foam::volumetricBSplinesDesignVariables::setDisplacement mesh_, IOobject::NO_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ), pointMesh::New(mesh_), dimensionedVector(dimless, Zero) diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C index 69c9c47001ab3771fe99b2112883ef88f5e48a44..787a92789c78989b48665982304846bd6d137544 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C @@ -58,12 +58,12 @@ Foam::betaMaxDarcy::betaMaxDarcy ( IOobject ( - "transportProperties", - mesh.time().constant(), - mesh, - IOobject::MUST_READ, - IOobject::NO_WRITE, - false + "transportProperties", + mesh.time().constant(), + mesh, + IOobject::MUST_READ, + IOobject::NO_WRITE, + IOobject::NO_REGISTER ) ).get<dimensionedScalar>("nu").value(); diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/betaMax/betaMax.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/betaMax/betaMax.C index 3490e914074b7b9e11bd3de41e2334bacfe04cca..99a1c78eb34a08341f71250d9c7af068c80f83ff 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/betaMax/betaMax.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/betaMax/betaMax.C @@ -173,7 +173,7 @@ Foam::boolList Foam::betaMax::markProcessorEdges const edge meshE = edge(mp[e[0]], mp[e[1]]); auto iter = isInletEdge.find(meshE); - if (iter.found()) + if (iter.good()) { iter.val() = true; } @@ -196,9 +196,8 @@ Foam::boolList Foam::betaMax::markProcessorEdges { const edge& e = edges[edgeI]; const edge meshE = edge(mp[e[0]], mp[e[1]]); - const auto iter = isInletEdge.cfind(meshE); - if (iter.found() && iter.val()) + if (isInletEdge.lookup(meshE, false)) { isProcessorEdge[edgeI - nInternalEdges] = true; } @@ -208,7 +207,6 @@ Foam::boolList Foam::betaMax::markProcessorEdges } - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::betaMax::betaMax @@ -232,11 +230,11 @@ Foam::autoPtr<Foam::betaMax> Foam::betaMax::New { const word modelType(dict.getOrDefault<word>("betaMaxType", "value")); - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); Info<< "betaMax type " << modelType << endl; - if (!cstrIter.found()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -247,7 +245,7 @@ Foam::autoPtr<Foam::betaMax> Foam::betaMax::New ) << exit(FatalIOError); } - return autoPtr<betaMax>(cstrIter()(mesh, dict)); + return autoPtr<betaMax>(ctorPtr(mesh, dict)); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/interpolationFunctions/interpolationFunction/topOInterpolationFunction.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/interpolationFunctions/interpolationFunction/topOInterpolationFunction.C index c71e55afe4910bcd53569ea6e8c1f2eff390a398..918f2c0154ab9b58b59078b5297b937e5e14c68f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/interpolationFunctions/interpolationFunction/topOInterpolationFunction.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/interpolationFunctions/interpolationFunction/topOInterpolationFunction.C @@ -64,9 +64,9 @@ Foam::topOInterpolationFunction::New Info<< "topOInterpolationFunction type : " << type << endl; - auto cstrIter = dictionaryConstructorTablePtr_->cfind(type); + auto* ctorPtr = dictionaryConstructorTable(type); - if (!cstrIter.found()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -77,7 +77,7 @@ Foam::topOInterpolationFunction::New ) << exit(FatalIOError); } - return autoPtr<topOInterpolationFunction>(cstrIter()(mesh, dict)); + return autoPtr<topOInterpolationFunction>(ctorPtr(mesh, dict)); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/fieldRegularisation.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/fieldRegularisation.C index 4887f48ce1f9f6b42cc91564433510ef970708cd..29ff486a6a6992f7429503ce0ff143e1b308a717 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/fieldRegularisation.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/fieldRegularisation.C @@ -28,7 +28,6 @@ License #include "fieldRegularisation.H" #include "fixedValueFvPatchFields.H" -#include "zeroGradientFvPatchFields.H" #include "wallFvPatch.H" #include "fvm.H" @@ -96,7 +95,7 @@ Foam::fieldRegularisation::fieldRegularisation ), mesh_, dimensionedScalar(dimless, Zero), - zeroGradientFvPatchScalarField::typeName + fvPatchFieldBase::zeroGradientType() ) { DebugInfo diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationPDE/regularisationPDE/regularisationPDE.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationPDE/regularisationPDE/regularisationPDE.C index ee6870d36a3fafcc291b27c0c8626d408f88bb93..78e6c5394d4f6aeb60eb9c1b711f223e66269b51 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationPDE/regularisationPDE/regularisationPDE.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationPDE/regularisationPDE/regularisationPDE.C @@ -138,11 +138,11 @@ Foam::autoPtr<Foam::regularisationPDE> Foam::regularisationPDE::New const word modelType = dict.getOrDefault<word>("regularisationPDE", "Helmholtz"); - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); Info<< "regularisationPDE type " << modelType << endl; - if (!cstrIter.found()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -155,7 +155,7 @@ Foam::autoPtr<Foam::regularisationPDE> Foam::regularisationPDE::New return autoPtr<regularisationPDE> ( - cstrIter()(mesh, dict, zones) + ctorPtr(mesh, dict, zones) ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationRadius/regularisationRadius/regularisationRadius.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationRadius/regularisationRadius/regularisationRadius.C index 2d50c741e2dc9db3571ef7f4590a9491ba3b51f9..04667a8b143848d4f5c7910cdc6d058b2aca767e 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationRadius/regularisationRadius/regularisationRadius.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/regularisation/regularisationRadius/regularisationRadius/regularisationRadius.C @@ -62,11 +62,11 @@ Foam::autoPtr<Foam::regularisationRadius> Foam::regularisationRadius::New { const word modelType = dict.getOrDefault<word>("type", "isotropic"); - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); Info<< "regularisationRadius type " << modelType << endl; - if (!cstrIter.found()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -79,7 +79,7 @@ Foam::autoPtr<Foam::regularisationRadius> Foam::regularisationRadius::New return autoPtr<regularisationRadius> ( - cstrIter()(mesh, dict, adjustWallThickness) + ctorPtr(mesh, dict, adjustWallThickness) ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topODesignVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topODesignVariables.C index 9b7b1416289014e1b998d014552b5efdd106fc68..5aa934df68d82bdf1446a0842f9265afcdffd3fa 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topODesignVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topODesignVariables.C @@ -28,7 +28,7 @@ License #include "localIOdictionary.H" #include "topODesignVariables.H" -#include "MeshObject.H" +#include "wallDist.H" #include "wallFvPatch.H" #include "cutFaceIso.H" #include "cutCellIso.H" @@ -452,11 +452,9 @@ void Foam::topODesignVariables::update(scalarField& correction) // if the method computing it includes fvOptions that depend on the // indicator field. // Trick wallDist into updating it - if (mesh_.foundObject<UpdateableMeshObject<fvMesh>>("wallDist")) - { - mesh_.lookupObjectRef<UpdateableMeshObject<fvMesh>>("wallDist"). - movePoints(); - } + + wallDist::try_movePoints(mesh_); + // Write the 0.5 beta iso-line to files, as an indication of the // fluid-solid interface diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topOVariablesBase/topOVariablesBase.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topOVariablesBase/topOVariablesBase.C index 1fc071bbd7609f09ac06e9990b4cbd094bde42ed..bc33b041e59e8091ff39efc98c01244ea4710a3a 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topOVariablesBase/topOVariablesBase.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/topOVariablesBase/topOVariablesBase.C @@ -669,19 +669,13 @@ void Foam::topOVariablesBase::writeFluidSolidInterface // invertOneToMany(surfFaces_.size(), changedFaceToCutFace); // Transform origin cut faces to a global numbering - labelList cuttingFacesPerProc(Pstream::nProcs(), Zero); - cuttingFacesPerProc[Pstream::myProcNo()] = changedFaces.size(); - Pstream::listCombineReduce(cuttingFacesPerProc, plusEqOp<label>()); - labelList passedFaces(Pstream::nProcs(), Zero); - for (label i = 1; i < Pstream::nProcs(); ++i) - { - passedFaces[i] = passedFaces[i - 1] + cuttingFacesPerProc[i - 1]; - } + const label changedFacesOffset = + globalIndex::calcOffset(changedFaces.size()); - forAll(changedFacesInfo, facei) + for (auto& info : changedFacesInfo) { - changedFacesInfo[facei].data() += passedFaces[Pstream::myProcNo()]; + info.data() += changedFacesOffset; } } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/designVariablesUpdate/designVariablesUpdate.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/designVariablesUpdate/designVariablesUpdate.C index 0e41d4e59f6f1288e79291af0f1440501a7fda81..690b2dde1560e0ee732bbb60ce2345950580bbce 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/designVariablesUpdate/designVariablesUpdate.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/designVariablesUpdate/designVariablesUpdate.C @@ -372,7 +372,7 @@ void Foam::designVariablesUpdate::update(const scalarField& direction) { // Multiply with line search step, if necessary scalarField correction(direction); - if (lineSearch_.valid()) + if (lineSearch_) { lineSearch_->updateCorrection(correction); } @@ -551,9 +551,10 @@ void Foam::designVariablesUpdate::postUpdate(const scalarField& oldCorrection) updateOldCorrection(oldCorrection); write(); designVars_->evolveNumber(); - if (lineSearch_.valid()) + if (lineSearch_) { - lineSearch_().postUpdate(); + lineSearch_->postUpdate(); + // Append additional empty line at the end of the instantaneous // objective file to indicate the end of the block corresponding to // this optimisation cycle diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/optimisationManager.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/optimisationManager.C index 6073e1e7d740ff9b11c1f51439dca3625f6446c7..796a373eaa423c39d396ab8f4a6bc0cc92c59fca 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/optimisationManager.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/optimisationManager/optimisationManager/optimisationManager.C @@ -323,29 +323,29 @@ Foam::optimisationManager::optimisationManager(fvMesh& mesh) "optimisationDict", mesh.time().system(), mesh, - IOobject::MUST_READ_IF_MODIFIED, + IOobject::READ_MODIFIED, IOobject::NO_WRITE, IOobject::REGISTER ) ), mesh_(mesh), time_(const_cast<Time&>(mesh.time())), - designVars_ - ( - this->subOrEmptyDict("optimisation").isDict("designVariables") ? - designVariables::New - ( - mesh_, - subDict("optimisation").subDict("designVariables") - ) : - nullptr - ), + designVars_(nullptr), primalSolvers_(), adjointSolverManagers_(), managerType_(get<word>("optimisationManager")), dvUpdate_(nullptr), shouldUpdateDesignVariables_(true) -{} +{ + // The "designVariables" sub-dictionary is optional + const dictionary odict(this->subOrEmptyDict("optimisation")); + const dictionary* designVarsDictPtr = odict.findDict("designVariables"); + + if (designVarsDictPtr) + { + designVars_ = designVariables::New(mesh_, *designVarsDictPtr); + } +} // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * // diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.C index f6ab3de548510280a7f828f29a1d4104b3fffe51..08893cbc4989c2049b189b25f2110621faa2f69c 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.C @@ -429,12 +429,12 @@ Foam::tmp<Foam::scalarField> Foam::ISQP::ShermanMorrisonPrecon // process, the diagonal matrix related to bound constraints is treated as // the initial matrix of the L-BFGS update. - // Constribution from bound constraints, treated as the seed of the + // Contribution from bound constraints, treated as the seed of the // L-BFGS inverse - tmp<scalarField> tdiag(nullptr); + refPtr<scalarField> tdiag(nullptr); if (includeBoundConstraints_) { - tdiag.reset(lTilda_()/ls_() + uTilda_()/us_()); + tdiag.reset((lTilda_()/ls_() + uTilda_()/us_()).ptr()); } // List of vectors to be used in the rank-1 updates related to the flow @@ -462,7 +462,7 @@ Foam::tmp<Foam::scalarField> Foam::ISQP::ShermanMorrisonRank1Update ( const PtrList<scalarField>& r1Updates, const scalarField& p, - const tmp<scalarField>& diag, + const refPtr<scalarField>& diag, const scalarField& mult, label n ) @@ -472,7 +472,7 @@ Foam::tmp<Foam::scalarField> Foam::ISQP::ShermanMorrisonRank1Update if (n == 0) { - Ap = invHessianVectorProduct(p, counter_, diag); + Ap = invHessianVectorProduct(p, counter_, diag.shallowClone()); return tAp; } diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.H b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.H index d94f444dedbcc9351c0f5ba62fb0c5602f241c13..537e0b43a012a6f8c511085ac587e64bb68dc99d 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.H +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/ISQP/ISQP.H @@ -248,7 +248,7 @@ protected: ( const PtrList<scalarField>& r1Updates, const scalarField& p, - const tmp<scalarField>& diag, + const refPtr<scalarField>& diag, const scalarField& mult, label n ); diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.C index 3617635957e0d44b7ad69ab7081a8a6d59194122..654e857912db3eadf190e7237445bd171b96c5b4 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.C @@ -175,7 +175,7 @@ Foam::LBFGS::invHessianVectorProduct ( const scalarField& vector, const label counter, - tmp<scalarField> diag + const refPtr<scalarField> diag ) { // Sanity checks diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.H b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.H index e785e7997ad00e1abb3784e0a87c0d383420e811..384e997d4ece7956a075e20d08d473a89c5e83e8 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.H +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/LBFGS/LBFGS.H @@ -131,7 +131,7 @@ protected: ( const scalarField& vector, const label counter, - tmp<scalarField> diag = nullptr + const refPtr<scalarField> diag = nullptr ); //- Compute the Hessian - vector product diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/updateMethod/updateMethod.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/updateMethod/updateMethod.C index 4178195c9b2136dd10c47bfef44da56e7315df7a..b08a2ffe2c6595f4d5e7bc44d2462d498dd36221 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/updateMethod/updateMethod.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/updateMethod/updateMethod/updateMethod.C @@ -267,12 +267,7 @@ Foam::tmp<Foam::scalarField> Foam::updateMethod::readOrZeroField const label size ) { - return tmp<scalarField> - ( - found(name) ? - new scalarField(name, *this, size) : - new scalarField(size, Zero) - ); + return tmp<scalarField>::New(name, *this, size, IOobjectOption::LAZY_READ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/NURBS3DVolume/NURBS3DVolume.C b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/NURBS3DVolume/NURBS3DVolume.C index fc43049d1f9771305e9ca8298a9fa91a6e0658d7..3ad91b1aafbc632b66f93c9f2a6dbddeefe13426 100644 --- a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/NURBS3DVolume/NURBS3DVolume.C +++ b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/NURBS3DVolume/NURBS3DVolume.C @@ -1342,8 +1342,9 @@ Foam::tmp<Foam::tensorField> Foam::NURBS3DVolume::dndbBasedSensitivities const fvPatch& patch = mesh_.boundary()[patchI]; const polyPatch& ppatch = patch.patch(); // Return field - tmp<tensorField> tdndbSens(new tensorField(patch.size(), Zero)); - tensorField& dndbSens = tdndbSens.ref(); + auto tdndbSens = tmp<tensorField>::New(patch.size(), Zero); + auto& dndbSens = tdndbSens.ref(); + // Auxiliary quantities deltaBoundary deltaBoundary(mesh_); const label patchStart = ppatch.start(); @@ -1574,8 +1575,8 @@ Foam::tmp<Foam::vectorField> Foam::NURBS3DVolume::computeNewPoints const vectorField& parameterizedPoints = tparameterizedPoints(); // Return field. Initialized with current mesh points - tmp<vectorField> tnewPoints(new vectorField(mesh_.points())); - vectorField& newPoints = tnewPoints.ref(); + auto tnewPoints = tmp<vectorField>::New(mesh_.points()); + auto& newPoints = tnewPoints.ref(); // Update position of parameterized points forAll(parameterizedPoints, pI) @@ -1612,8 +1613,8 @@ Foam::tmp<Foam::vectorField> Foam::NURBS3DVolume::computeNewBoundaryPoints } // Return field. Initialized with current mesh points - tmp<vectorField> tnewPoints(new vectorField(mesh_.points())); - vectorField& newPoints = tnewPoints.ref(); + auto tnewPoints = tmp<vectorField>::New(mesh_.points()); + auto& newPoints = tnewPoints.ref(); // Update position of parameterized boundary points for (const label patchI : patchesToBeMoved) @@ -1883,21 +1884,12 @@ Foam::tmp<Foam::volTensorField> Foam::NURBS3DVolume::getDxCellsDb const vectorField& parametricCoordinates = getParametricCoordinates(); // Set return field to zero - tmp<volTensorField> tDxDb + auto tDxDb = volTensorField::New ( - new volTensorField - ( - IOobject - ( - "DxDb", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedTensor(dimless, Zero) - ) + "DxDb", + IOobject::NO_REGISTER, + mesh_, + dimensionedTensor(dimless, Zero) ); volTensorField& DxDb = tDxDb.ref(); diff --git a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C index 4ff3278479ba6b193774eda72d3e993dd8bdc5ae..2e38bb25a9148b0e0ec98e1454ff49b5220214a2 100644 --- a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C +++ b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C @@ -45,7 +45,7 @@ volBSplinesBase::volBSplinesBase const fvMesh& mesh ) : - MeshObject<fvMesh, UpdateableMeshObject, volBSplinesBase>(mesh), + MeshObject_type(mesh), volume_(0), activeDesignVariables_(0) { @@ -58,7 +58,7 @@ volBSplinesBase::volBSplinesBase "dynamicMeshDict", mesh.time().constant(), mesh, - IOobject::MUST_READ_IF_MODIFIED, + IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER ) diff --git a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H index 93e03929f00b37d123dc221a5ec0413053eef6f9..01a0244b11c2e4a50c81b55de7221cbaf9861b20 100644 --- a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H +++ b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H @@ -61,20 +61,16 @@ class volBSplinesBase : public MeshObject<fvMesh, UpdateableMeshObject, volBSplinesBase> { -protected: - - // Protected data - - //- List with volumetric B-splines boxes. - // No overlapping is supported - PtrList<NURBS3DVolume> volume_; + // Private Typedefs - //- Active design variables numbering for all boxes - labelList activeDesignVariables_; + typedef MeshObject + < + fvMesh, + UpdateableMeshObject, + volBSplinesBase + > MeshObject_type; -private: - // Private Member Functions //- No copy construct @@ -84,6 +80,18 @@ private: void operator=(const volBSplinesBase&) = delete; +protected: + + // Protected Data + + //- List with volumetric B-splines boxes. + // No overlapping is supported + PtrList<NURBS3DVolume> volume_; + + //- Active design variables numbering for all boxes + labelList activeDesignVariables_; + + public: //- Runtime type information @@ -93,7 +101,7 @@ public: // Constructors //- Construct from components - volBSplinesBase(const fvMesh& mesh); + explicit volBSplinesBase(const fvMesh& mesh); //- Destructor diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolverManager/adjointSolverManager.C b/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolverManager/adjointSolverManager.C index ed51b74da3c895920dd3cbaf188c848ac93fc888..69a56f42449802eb6ed4e33e75a5c12a0f23c447 100644 --- a/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolverManager/adjointSolverManager.C +++ b/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolverManager/adjointSolverManager.C @@ -301,8 +301,8 @@ void Foam::adjointSolverManager::solveAdjointEquations() Foam::tmp<Foam::scalarField> Foam::adjointSolverManager::aggregateSensitivities() { - tmp<scalarField> tsens(new scalarField(0)); - scalarField& sens = tsens.ref(); + auto tsens = tmp<scalarField>::New(); + auto& sens = tsens.ref(); // Sum sensitivities from all objectives expect the constraints for (const label solveri : objectiveSolverIDs_) diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolvers/adjointSolver/adjointSolver.C b/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolvers/adjointSolver/adjointSolver.C index 9510d1977d0617d428bdb38a095d0066a0275ffb..90259b2e15700fbd3de6ec1af264db25c04096e7 100644 --- a/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolvers/adjointSolver/adjointSolver.C +++ b/src/optimisation/adjointOptimisation/adjoint/solvers/adjointSolvers/adjointSolver/adjointSolver.C @@ -67,7 +67,7 @@ Foam::dictionary Foam::adjointSolver::designVarsDict() const mesh_, IOobject::MUST_READ, IOobject::NO_WRITE, - false + IOobject::NO_REGISTER ) ).subDict("optimisation").subDict("designVariables"); } @@ -270,7 +270,7 @@ void Foam::adjointSolver::updatePrimalBasedQuantities() bool Foam::adjointSolver::writeData(Ostream& os) const { - if (sensitivities_.valid()) + if (sensitivities_.good()) { sensitivities_().writeEntry("sensitivities", os); } diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressible/incompressibleVars.C b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressible/incompressibleVars.C index 0fe83537d5ab48643484bb68763264b38923fe38..09b49f83369b142cd143ef4c8a87d7928b9d2b72 100644 --- a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressible/incompressibleVars.C +++ b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressible/incompressibleVars.C @@ -131,7 +131,8 @@ void incompressibleVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), pInst() ) @@ -146,7 +147,8 @@ void incompressibleVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), UInst() ) @@ -161,7 +163,8 @@ void incompressibleVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), phiInst() ) diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressibleAdjointMeanFlow/incompressibleAdjointMeanFlowVars.C b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressibleAdjointMeanFlow/incompressibleAdjointMeanFlowVars.C index 2b03684a2d755b35fb8e26a3bea92c5a0c58c46e..576a20f97e51d819dec1cfb9d5a8bb11a85aa583 100644 --- a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressibleAdjointMeanFlow/incompressibleAdjointMeanFlowVars.C +++ b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/incompressibleAdjointMeanFlow/incompressibleAdjointMeanFlowVars.C @@ -76,7 +76,8 @@ void incompressibleAdjointMeanFlowVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), paInst() ) @@ -91,7 +92,8 @@ void incompressibleAdjointMeanFlowVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), UaInst() ) @@ -106,7 +108,8 @@ void incompressibleAdjointMeanFlowVars::setMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), phiaInst() ) diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/variablesSet/variablesSetTemplates.C b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/variablesSet/variablesSetTemplates.C index 92bc073275d16da4e90ebf237440251dd44873ca..d52815787ead4b82f40c193830aa6cd13b3984fa 100644 --- a/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/variablesSet/variablesSetTemplates.C +++ b/src/optimisation/adjointOptimisation/adjoint/solvers/variablesSet/variablesSet/variablesSetTemplates.C @@ -170,7 +170,7 @@ variablesSet::allocateRenamedField { typedef GeometricField<Type, PatchField, GeoMesh> fieldType; autoPtr<fieldType> returnField(nullptr); - if (bf.valid()) + if (bf) { const word timeName = bf().mesh().time().timeName(); returnField.reset diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointLaminar/adjointLaminar.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointLaminar/adjointLaminar.C index 2413c420efd6a8032a854108ae3ab18dd0d7d784..1300c7edba41fcf2086587688b13d84fa445ebbe 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointLaminar/adjointLaminar.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointLaminar/adjointLaminar.C @@ -80,18 +80,11 @@ tmp<volSymmTensorField> adjointLaminar::devReff const volVectorField& U ) const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + "devRhoReff", + IOobject::NO_REGISTER, ( - IOobject - ( - "devRhoReff", - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), -nu()*devTwoSymm(fvc::grad(U)) ) ); @@ -110,23 +103,13 @@ tmp<fvVectorMatrix> adjointLaminar::divDevReff(volVectorField& U) const tmp<volVectorField> adjointLaminar::adjointMeanFlowSource() { - return tmp<volVectorField>::New - ( - IOobject - ( - "adjointMeanFlowSource", - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedVector - ( - dimensionSet(0, 1, -2, 0, 0), - Zero - ) - ); + return volVectorField::New + ( + "adjointMeanFlowSource", + IOobject::NO_REGISTER, + mesh_, + dimensionedVector(dimensionSet(0, 1, -2, 0, 0), Zero) + ); } @@ -151,37 +134,25 @@ const boundaryVectorField& adjointLaminar::wallFloCoSensitivities() tmp<volScalarField> adjointLaminar::distanceSensitivities() { - return tmp<volScalarField>::New - ( - IOobject - ( - "adjointEikonalSource" + type(), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimLength/pow3(dimTime), Zero) - ); + return volScalarField::New + ( + "adjointEikonalSource" + type(), + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimLength/pow3(dimTime), Zero) + ); } tmp<volTensorField> adjointLaminar::FISensitivityTerm() { - return tmp<volTensorField>::New - ( - IOobject - ( - "volumeSensTerm" + type(), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedTensor(dimensionSet(0, 2, -3, 0, 0), Zero) - ); + return volTensorField::New + ( + "volumeSensTerm" + type(), + IOobject::NO_REGISTER, + mesh_, + dimensionedTensor(dimensionSet(0, 2, -3, 0, 0), Zero) + ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointSpalartAllmaras/adjointSpalartAllmaras.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointSpalartAllmaras/adjointSpalartAllmaras.C index d4c6e8f8f64f5a2ef724f703b74de56c39e865d3..72bf06a488758b3aae7a28111cfc9ecbb41af5d8 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointSpalartAllmaras/adjointSpalartAllmaras.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointSpalartAllmaras/adjointSpalartAllmaras.C @@ -440,32 +440,18 @@ void adjointSpalartAllmaras::updatePrimalRelatedFields() tmp<volScalarField> adjointSpalartAllmaras::allocateMask() { - tmp<volScalarField> mask; if (limitAdjointProduction_) { - mask = ATCModel::createLimiter(mesh_, coeffDict_); - } - else - { - mask = tmp<volScalarField> - ( - new volScalarField - ( - IOobject - ( - "unitMask", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar("unit", dimless, scalar(1)) - ) - ); + return ATCModel::createLimiter(mesh_, coeffDict_); } - return mask; + return volScalarField::New + ( + "unitMask", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar("unit", dimless, scalar(1)) + ); } @@ -714,19 +700,12 @@ tmp<volSymmTensorField> adjointSpalartAllmaras::devReff const volVectorField& U ) const { - return - tmp<volSymmTensorField>::New - ( - IOobject - ( - "devRhoReff", - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - -nuEff()*devTwoSymm(fvc::grad(U)) - ); + return volSymmTensorField::New + ( + "devRhoReff", + IOobject::NO_REGISTER, + -nuEff()*devTwoSymm(fvc::grad(U)) + ); } @@ -746,7 +725,10 @@ tmp<fvVectorMatrix> adjointSpalartAllmaras::divDevReff(volVectorField& Ua) const tmp<volVectorField> adjointSpalartAllmaras::adjointMeanFlowSource() { addProfiling - (adjointSpalartAllmaras, "adjointSpalartAllmaras::addMomentumSource"); + ( + adjointSpalartAllmaras, + "adjointSpalartAllmaras::addMomentumSource" + ); // cm formulation //return (- nuTilda()*fvc::grad(nuaTilda() - conservativeMomentumSource()); @@ -767,10 +749,8 @@ tmp<volScalarField> adjointSpalartAllmaras::nutJacobianTMVar1() const tmp<scalarField> adjointSpalartAllmaras::diffusionCoeffVar1(label patchI) const { - tmp<scalarField> tdiffCoeff - ( - new scalarField(mesh_.boundary()[patchI].size(), Zero) - ); + auto tdiffCoeff = + tmp<scalarField>::New(mesh_.boundary()[patchI].size(), Zero); scalarField& diffCoeff = tdiffCoeff.ref(); @@ -1066,7 +1046,11 @@ void adjointSpalartAllmaras::nullify() void adjointSpalartAllmaras::correct() { addProfiling - (adjointSpalartAllmaras, "adjointSpalartAllmaras::correct"); + ( + adjointSpalartAllmaras, + "adjointSpalartAllmaras::correct" + ); + if (!adjointTurbulence_) { return; diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointkOmegaSST/adjointkOmegaSST.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointkOmegaSST/adjointkOmegaSST.C index fa3d542ff76c35a6db1d7771c80736468adc8e76..e04e223705972935db61a76f08f64c5beb0307ac 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointkOmegaSST/adjointkOmegaSST.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/adjointkOmegaSST/adjointkOmegaSST.C @@ -125,21 +125,14 @@ tmp<volScalarField::Internal> adjointkOmegaSST::GbyNu tmp<volScalarField> adjointkOmegaSST::zeroFirstCell() { - auto tzeroFirstCell = - tmp<volScalarField>::New - ( - IOobject - ( - "zeroFirstCell", - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimless, Foam::one{}) - ); - volScalarField& zeroFirstCell = tzeroFirstCell.ref(); + auto tzeroFirstCell = volScalarField::New + ( + "zeroFirstCell", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless, Foam::one{}) + ); + auto& zeroFirstCell = tzeroFirstCell.ref(); firstCellIDs_.resize(mesh_.nCells(), -1); label counter(0); @@ -1799,8 +1792,7 @@ tmp<volSymmTensorField> adjointkOmegaSST::devReff const volVectorField& U ) const { - return - tmp<volSymmTensorField>::New + return tmp<volSymmTensorField>::New ( IOobject ( diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldNuaTilda/adjointFarFieldNuaTildaFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldNuaTilda/adjointFarFieldNuaTildaFvPatchScalarField.H index 65d801600cf68b03080e4f8734bcd22e65c186da..178d8d22ba388019af43512737e477d8be00102a 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldNuaTilda/adjointFarFieldNuaTildaFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldNuaTilda/adjointFarFieldNuaTildaFvPatchScalarField.H @@ -89,15 +89,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldNuaTildaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointFarFieldNuaTildaFvPatchScalarField ( @@ -105,16 +96,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldNuaTildaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar1/adjointFarFieldTMVar1FvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar1/adjointFarFieldTMVar1FvPatchScalarField.H index 291ea991b0f2abd6392d3af3907052c757b6b177..6e80cc55fd676fd696c5bc2aead29653aab6cfcb 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar1/adjointFarFieldTMVar1FvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar1/adjointFarFieldTMVar1FvPatchScalarField.H @@ -88,15 +88,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldTMVar1FvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointFarFieldTMVar1FvPatchScalarField ( @@ -104,16 +95,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldTMVar1FvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar2/adjointFarFieldTMVar2FvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar2/adjointFarFieldTMVar2FvPatchScalarField.H index 99d5674c26366c90b026c7cd8a10dc3210f4e19b..b3affc40f477d50213dcd0d4596869cc33466f96 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar2/adjointFarFieldTMVar2FvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointFarFieldTMVar2/adjointFarFieldTMVar2FvPatchScalarField.H @@ -88,15 +88,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldTMVar2FvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointFarFieldTMVar2FvPatchScalarField ( @@ -104,16 +95,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointFarFieldTMVar2FvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointInletNuaTilda/adjointInletNuaTildaFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointInletNuaTilda/adjointInletNuaTildaFvPatchScalarField.H index 5cf3d8cb522860e13b94fd3366c3cf1c07891cfe..dfc89cb325143aaf422f3e64d09715563c2971bb 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointInletNuaTilda/adjointInletNuaTildaFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointInletNuaTilda/adjointInletNuaTildaFvPatchScalarField.H @@ -92,15 +92,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointInletNuaTildaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointInletNuaTildaFvPatchScalarField ( @@ -108,17 +99,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - Info<< "manager name " << managerName_ << endl; - return tmp<fvPatchScalarField> - ( - new adjointInletNuaTildaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletFlux/adjointOutletFluxFvPatchField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletFlux/adjointOutletFluxFvPatchField.H index 888ce70940af1ea666f55b2be343b7219c9c04d8..3e8ed6f4d717c5857e8ec7a4faef92157e435aa7 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletFlux/adjointOutletFluxFvPatchField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletFlux/adjointOutletFluxFvPatchField.H @@ -88,15 +88,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new adjointOutletFluxFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletFluxFvPatchField ( @@ -104,16 +95,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new adjointOutletFluxFvPatchField(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletKa/adjointOutletKaFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletKa/adjointOutletKaFvPatchScalarField.H index ae73acd7c34e668c2d650ff103a6b5d1f20f003d..2ce51e82e2a95a29f52b767c457cdbeab153dc76 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletKa/adjointOutletKaFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletKa/adjointOutletKaFvPatchScalarField.H @@ -88,15 +88,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointOutletKaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletKaFvPatchScalarField ( @@ -104,16 +95,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletKaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTilda/adjointOutletNuaTildaFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTilda/adjointOutletNuaTildaFvPatchScalarField.H index 8f20dcb0ea3425811818fc68cee414146dabea34..4a03b1af8577e352dec9ee27aacb51e7b5834f04 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTilda/adjointOutletNuaTildaFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTilda/adjointOutletNuaTildaFvPatchScalarField.H @@ -89,15 +89,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointOutletNuaTildaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletNuaTildaFvPatchScalarField ( @@ -105,16 +96,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletNuaTildaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTildaFlux/adjointOutletNuaTildaFluxFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTildaFlux/adjointOutletNuaTildaFluxFvPatchScalarField.H index 246a33a557bb6635bf0ebf55924fa7c19778f460..ace90b07d09e1759684134542bba32e92632d638 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTildaFlux/adjointOutletNuaTildaFluxFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletNuaTildaFlux/adjointOutletNuaTildaFluxFvPatchScalarField.H @@ -90,15 +90,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointOutletNuaTildaFluxFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletNuaTildaFluxFvPatchScalarField ( @@ -106,16 +97,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletNuaTildaFluxFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletWa/adjointOutletWaFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletWa/adjointOutletWaFvPatchScalarField.H index dd04e830f3f34b1d89d5368bd95818933ae44a00..93fb25d2d933e5eb832128f6d0c9c8fa3946693f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletWa/adjointOutletWaFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/adjointOutletWa/adjointOutletWaFvPatchScalarField.H @@ -88,15 +88,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new adjointOutletWaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference adjointOutletWaFvPatchScalarField ( @@ -104,16 +95,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new adjointOutletWaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/kaqRWallFunction/kaqRWallFunctionFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/kaqRWallFunction/kaqRWallFunctionFvPatchScalarField.H index 7f93602416642091c781abe76b734ffc4281f9b7..0c549f6a5bd97d5b506a6e3df0e8360ef5805f5b 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/kaqRWallFunction/kaqRWallFunctionFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/kaqRWallFunction/kaqRWallFunctionFvPatchScalarField.H @@ -94,15 +94,6 @@ public: const kaqRWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new kaqRWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference kaqRWallFunctionFvPatchScalarField ( @@ -110,16 +101,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new kaqRWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/waWallFunction/waWallFunctionFvPatchScalarField.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/waWallFunction/waWallFunctionFvPatchScalarField.H index c1e95db2aac30c6fb5973d31addb30c7e3fe4c1c..f4ed962fbaba13d1ed99e4427194a3d536e32866 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/waWallFunction/waWallFunctionFvPatchScalarField.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointRAS/derivedFvPatchFields/waWallFunction/waWallFunctionFvPatchScalarField.H @@ -102,15 +102,6 @@ public: const waWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new waWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference waWallFunctionFvPatchScalarField ( @@ -118,16 +109,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new waWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointTurbulenceModel/adjointTurbulenceModel.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointTurbulenceModel/adjointTurbulenceModel.H index ebabdf33667f5f0d5d6e4c7d03b485d329d50276..0ddf9e2385e1651cb196554203725244be75ad6f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointTurbulenceModel/adjointTurbulenceModel.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/incompressibleAdjoint/adjointTurbulenceModel/adjointTurbulenceModel.H @@ -174,12 +174,12 @@ public: const autoPtr<incompressible::RASModelVariables>& turbVars = primalVars_.RASModelVariables(); - return - tmp<volScalarField>::New - ( - "nuEff", - lamTrans.nu() + turbVars().nut() - ); + return volScalarField::New + ( + "nuEff", + IOobject::NO_REGISTER, + lamTrans.nu() + turbVars().nut() + ); } //- Return the effective viscosity on a given patch diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariables.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariables.C index a16f7677e7d164056a5a3ac1cb0152cb3f5a5895..076507717798575a15c52cfb2ab715fdd5cb871c 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariables.C @@ -305,16 +305,10 @@ tmp<volScalarField> RASModelVariables::nutJacobianVar1 << "jutJacobianVar1 not implemented for the current turbulence model." << "Returning zero field" << endl; - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "nutJacobianVar1", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "nutJacobianVar1", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); @@ -330,16 +324,10 @@ tmp<volScalarField> RASModelVariables::nutJacobianVar2 << "nutJacobianVar2 not implemented for the current turbulence model." << "Returning zero field" << endl; - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "nutJacobianVar2", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "nutJacobianVar2", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); @@ -426,16 +414,10 @@ tmp<volSymmTensorField> RASModelVariables::devReff const volVectorField& U ) const { - return tmp<volSymmTensorField>::New + return volSymmTensorField::New ( - IOobject - ( - "devRhoReff", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "devRhoReff", + IOobject::NO_REGISTER, - (laminarTransport.nu() + nut())*devTwoSymm(fvc::grad(U)) ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariablesI.H b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariablesI.H index ccbc5285b8d8a5a7279bec2d7ec188c491c2e952..e05c8ea5c933bad7818e3766ebe60aac894975ed 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariablesI.H +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/RASModelVariables/RASModelVariablesI.H @@ -148,20 +148,13 @@ inline tmp<volScalarField> RASModelVariables::nut() const return tmp<volScalarField>(nutRef()); } - return - tmp<volScalarField>::New - ( - IOobject - ( - "dummylaminarNut", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimViscosity, Zero) - ); + return volScalarField::New + ( + "dummylaminarNut", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimViscosity, Zero) + ); } diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/SpalartAllmaras/SpalartAllmaras.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/SpalartAllmaras/SpalartAllmaras.C index 9e17b38e59263943a96edf29f24b38948ee4398a..44a15b8222f8109cd4f07ba28f1e63f5f9f348ef 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/SpalartAllmaras/SpalartAllmaras.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/SpalartAllmaras/SpalartAllmaras.C @@ -80,22 +80,17 @@ tmp<volScalarField> SpalartAllmaras::nutJacobianVar1 const singlePhaseTransportModel& laminarTransport ) const { - auto tnutJacobian = tmp<volScalarField>::New + auto tnutJacobian = volScalarField::New ( - IOobject - ( - "nutJacobianVar1", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "nutJacobianVar1", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); auto& nutJacobian = tnutJacobian.ref(); - const volScalarField& nu = laminarTransport.nu(); + const tmp<volScalarField> tnu(laminarTransport.nu()); + const volScalarField& nu = tnu(); const volScalarField& nuTilda = TMVar1(); volScalarField chi(nuTilda/nu); diff --git a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/kOmegaSST/kOmegaSST.C b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/kOmegaSST/kOmegaSST.C index cb02c4b7b6075dd1441632e26c7442f629956ade..fde3ec198a3c9df0f6eb79b38ee2ce8c77cd1013 100644 --- a/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/kOmegaSST/kOmegaSST.C +++ b/src/optimisation/adjointOptimisation/adjoint/turbulenceModels/turbulenceModelVariables/RAS/kOmegaSST/kOmegaSST.C @@ -63,7 +63,8 @@ void kOmegaSST::allocateMeanFields() mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimArea/pow3(dimTime), Zero) @@ -120,12 +121,13 @@ tmp<volScalarField::Internal> kOmegaSST::computeG() ); // NB: leave tmp registered (for correctBoundaryConditions) - auto tG = - tmp<volScalarField::Internal>::New - ( - turbModel.GName(), - nutRefInst()*GbyNu0 - ); + auto tG = volScalarField::Internal::New + ( + turbModel.GName(), + IOobject::REGISTER, + nutRefInst()*GbyNu0 + ); + // Use correctBoundaryConditions instead of updateCoeffs to avoid // messing with updateCoeffs in the next iteration of omegaEqn TMVar2Inst().correctBoundaryConditions(); diff --git a/src/overset/cellCellStencil/cellCellStencil/cellCellStencil.C b/src/overset/cellCellStencil/cellCellStencil/cellCellStencil.C index 58104fca9dc4155f03b0df955929b50fd7766577..ff12dadc36e4fc0aff8aee2e5c17eaa9c949dbc3 100644 --- a/src/overset/cellCellStencil/cellCellStencil/cellCellStencil.C +++ b/src/overset/cellCellStencil/cellCellStencil/cellCellStencil.C @@ -246,7 +246,7 @@ void Foam::cellCellStencil::globalCellCells // 1. Determine global cell number on other side of coupled patches - labelList globalCellIDs(identity(gi.localSize(), gi.localStart())); + labelList globalCellIDs(Foam::identity(gi.range())); labelList nbrGlobalCellIDs; syncTools::swapBoundaryCellList diff --git a/src/overset/cellCellStencil/cellCellStencil/cellCellStencilObject.H b/src/overset/cellCellStencil/cellCellStencil/cellCellStencilObject.H index 4ecd06006f32abbd229512b4c3ab1004ca98eb55..911cb661021bd61ea150b8f33cba15b4c1509be9 100644 --- a/src/overset/cellCellStencil/cellCellStencil/cellCellStencilObject.H +++ b/src/overset/cellCellStencil/cellCellStencil/cellCellStencilObject.H @@ -32,8 +32,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef cellCellStencilObject_H -#define cellCellStencilObject_H +#ifndef Foam_cellCellStencilObject_H +#define Foam_cellCellStencilObject_H #include "cellCellStencil.H" #include "MeshObject.H" @@ -43,13 +43,10 @@ SourceFiles namespace Foam { +// Typedefs class cellCellStencilObject; -typedef MeshObject -< - fvMesh, - Foam::MoveableMeshObject, - cellCellStencilObject -> Stencil; +typedef MeshObject<fvMesh, MoveableMeshObject, cellCellStencilObject> Stencil; + /*---------------------------------------------------------------------------*\ Class cellCellStencilObject Declaration @@ -57,10 +54,20 @@ typedef MeshObject class cellCellStencilObject : - public Stencil, + public MeshObject<fvMesh, MoveableMeshObject, cellCellStencilObject>, public cellCellStencil { - // Private data + // Private Typedefs + + typedef MeshObject + < + fvMesh, + MoveableMeshObject, + cellCellStencilObject + > MeshObject_type; + + + // Private Data autoPtr<cellCellStencil> stencilPtr_; @@ -69,6 +76,7 @@ public: TypeName("cellCellStencilObject"); + // Constructors //- Construct with mesh @@ -78,12 +86,8 @@ public: const bool update = true ) : - MeshObject - < - fvMesh, - Foam::MoveableMeshObject, - cellCellStencilObject - >(mesh), + MeshObject_type(mesh), + cellCellStencil(mesh), stencilPtr_ ( diff --git a/src/overset/cellCellStencil/cellCellStencil/cellCellStencilTemplates.C b/src/overset/cellCellStencil/cellCellStencil/cellCellStencilTemplates.C index bb441cb79a2e2c91c8be0b0c50df88614b36e290..f110df646323b6ec8edfdf52b1d987708976f99c 100644 --- a/src/overset/cellCellStencil/cellCellStencil/cellCellStencilTemplates.C +++ b/src/overset/cellCellStencil/cellCellStencil/cellCellStencilTemplates.C @@ -158,22 +158,15 @@ Foam::cellCellStencil::createField const UList<Type>& psi ) { - auto tfld = tmp<volScalarField>::New + auto tfld = volScalarField::New ( - IOobject - ( - name, - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + name, + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() ); - volScalarField& fld = tfld.ref(); + auto& fld = tfld.ref(); forAll(psi, cellI) { @@ -192,29 +185,26 @@ void Foam::cellCellStencil::correctBoundaryConditions // Version of GeoField::correctBoundaryConditions that exclude evaluation // of oversetFvPatchFields - typename GeoField::Boundary& bfld = psi.boundaryFieldRef(); + auto& bfld = psi.boundaryFieldRef(); - const label nReq = Pstream::nRequests(); + const label startOfRequests = UPstream::nRequests(); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (!isA<SuppressBC>(bfld[patchi])) + if (!isA<SuppressBC>(pfld)) { - bfld[patchi].initEvaluate(Pstream::commsTypes::nonBlocking); + pfld.initEvaluate(UPstream::commsTypes::nonBlocking); } } - // Block for any outstanding requests - if (Pstream::parRun()) - { - Pstream::waitRequests(nReq); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (!isA<SuppressBC>(bfld[patchi])) + if (!isA<SuppressBC>(pfld)) { - bfld[patchi].evaluate(Pstream::commsTypes::nonBlocking); + pfld.evaluate(UPstream::commsTypes::nonBlocking); } } } diff --git a/src/overset/cellCellStencil/inverseDistance/inverseDistanceCellCellStencil.C b/src/overset/cellCellStencil/inverseDistance/inverseDistanceCellCellStencil.C index b0e999c0f88855ab14d359dfafa3d54b7533974a..f606f5bdd440b046afaa3ea44e462809e7e0db25 100644 --- a/src/overset/cellCellStencil/inverseDistance/inverseDistanceCellCellStencil.C +++ b/src/overset/cellCellStencil/inverseDistance/inverseDistanceCellCellStencil.C @@ -1970,7 +1970,7 @@ bool Foam::cellCellStencils::inverseDistance::update() const globalIndex globalCells(mesh_.nCells()); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Mark holes (in allCellTypes) for (label srcI = 0; srcI < meshParts.size()-1; srcI++) diff --git a/src/overset/cellCellStencil/trackingInverseDistance/trackingInverseDistanceCellCellStencil.C b/src/overset/cellCellStencil/trackingInverseDistance/trackingInverseDistanceCellCellStencil.C index 5aa941503500251a822e31d28ab51fae31295877..73d421c58f5d03578a4e1f5578b85adf1f65ae44 100644 --- a/src/overset/cellCellStencil/trackingInverseDistance/trackingInverseDistanceCellCellStencil.C +++ b/src/overset/cellCellStencil/trackingInverseDistance/trackingInverseDistanceCellCellStencil.C @@ -765,7 +765,7 @@ bool Foam::cellCellStencils::trackingInverseDistance::update() const globalIndex globalCells(mesh_.nCells()); - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; DebugInfo<< FUNCTION_NAME << " : Allocated donor-cell structures" << endl; diff --git a/src/overset/lduPrimitiveProcessorInterface/GAMG/calculatedProcessorGAMGInterfaceField.H b/src/overset/lduPrimitiveProcessorInterface/GAMG/calculatedProcessorGAMGInterfaceField.H index d1e78eed35cd970df20f1ce251295335773d777a..f06a90edb869c93348a389594638635cb668c933 100644 --- a/src/overset/lduPrimitiveProcessorInterface/GAMG/calculatedProcessorGAMGInterfaceField.H +++ b/src/overset/lduPrimitiveProcessorInterface/GAMG/calculatedProcessorGAMGInterfaceField.H @@ -133,7 +133,7 @@ public: ) const { NotImplemented; - return autoPtr<GAMGInterfaceField>(nullptr); + return nullptr; } diff --git a/src/overset/oversetCoupledPolyPatch/oversetGAMGInterfaceField/oversetGAMGInterfaceField.H b/src/overset/oversetCoupledPolyPatch/oversetGAMGInterfaceField/oversetGAMGInterfaceField.H index 5edbd651f61772e7620cc622e318486d7064c9f8..640a9940a26cf3591c0d05b941627ec1c8af09f4 100644 --- a/src/overset/oversetCoupledPolyPatch/oversetGAMGInterfaceField/oversetGAMGInterfaceField.H +++ b/src/overset/oversetCoupledPolyPatch/oversetGAMGInterfaceField/oversetGAMGInterfaceField.H @@ -105,7 +105,7 @@ public: ) const { NotImplemented; - return autoPtr<GAMGInterfaceField>(nullptr); + return nullptr; } diff --git a/src/overset/oversetFvMesh/oversetFvMeshBase.H b/src/overset/oversetFvMesh/oversetFvMeshBase.H index 4951322195407967f1542ce710d892d10e4abaeb..b0678b1a24b4ec27483d9d39b2c049b6487be18a 100644 --- a/src/overset/oversetFvMesh/oversetFvMeshBase.H +++ b/src/overset/oversetFvMesh/oversetFvMeshBase.H @@ -256,7 +256,7 @@ public: static void checkCoupledBC(const GeoField& fld); //- Correct boundary conditions of certain type (typeOnly = true) - // or explicitly not of the type (typeOnly = false) + //- or explicitly not of the type (typeOnly = false) template<class GeoField, class PatchType> static void correctBoundaryConditions ( diff --git a/src/overset/oversetFvMesh/oversetFvMeshBaseTemplates.C b/src/overset/oversetFvMesh/oversetFvMeshBaseTemplates.C index c57a63581880f4fe96015ae4f73da1c748deca70..471cbee742facc2807b554ff4b78613c20321ac7 100644 --- a/src/overset/oversetFvMesh/oversetFvMeshBaseTemplates.C +++ b/src/overset/oversetFvMesh/oversetFvMeshBaseTemplates.C @@ -80,28 +80,36 @@ void Foam::oversetFvMeshBase::correctBoundaryConditions const bool typeOnly ) { + // Alternative (C++14) + // + // bfld.evaluate_if + // ( + // [typeOnly](const auto& pfld) -> bool + // { + // return (typeOnly == bool(isA<PatchType>(pfld))); + // }, + // UPstream::defaultCommsType + // ); + const UPstream::commsTypes commsType = UPstream::defaultCommsType; const label startOfRequests = UPstream::nRequests(); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (typeOnly == (isA<PatchType>(bfld[patchi]) != nullptr)) + if (typeOnly == bool(isA<PatchType>(pfld))) { - bfld[patchi].initEvaluate(commsType); + pfld.initEvaluate(commsType); } } - // Wait for outstanding requests - if (commsType == UPstream::commsTypes::nonBlocking) - { - Pstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (typeOnly == (isA<PatchType>(bfld[patchi]) != nullptr)) + if (typeOnly == bool(isA<PatchType>(pfld))) { - bfld[patchi].evaluate(commsType); + pfld.evaluate(commsType); } } } @@ -989,32 +997,30 @@ void Foam::oversetFvMeshBase::write template<class GeoField> void Foam::oversetFvMeshBase::correctCoupledBoundaryConditions(GeoField& fld) { - typename GeoField::Boundary& bfld = fld.boundaryFieldRef(); + auto& bfld = fld.boundaryFieldRef(); const UPstream::commsTypes commsType = UPstream::defaultCommsType; + const label startOfRequests = UPstream::nRequests(); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (bfld[patchi].coupled()) + if (pfld.coupled()) { - //Pout<< "initEval of " << bfld[patchi].patch().name() << endl; - bfld[patchi].initEvaluate(commsType); + //Pout<< "initEval of " << pfld.patch().name() << endl; + pfld.initEvaluate(commsType); } } - // Wait for outstanding requests - if (commsType == UPstream::commsTypes::nonBlocking) - { - Pstream::waitRequests(startOfRequests); - } + // Wait for outstanding requests (non-blocking) + UPstream::waitRequests(startOfRequests); - forAll(bfld, patchi) + for (auto& pfld : bfld) { - if (bfld[patchi].coupled()) + if (pfld.coupled()) { - //Pout<< "eval of " << bfld[patchi].patch().name() << endl; - bfld[patchi].evaluate(commsType); + //Pout<< "eval of " << pfld.patch().name() << endl; + pfld.evaluate(commsType); } } } diff --git a/src/overset/oversetPolyPatch/oversetFvPatchField.C b/src/overset/oversetPolyPatch/oversetFvPatchField.C index 3beba4a72f3c05bf72e76fceebd70ee225bcd590..1ab511b730d0ca29c61e99f939b57cd34b17a199 100644 --- a/src/overset/oversetPolyPatch/oversetFvPatchField.C +++ b/src/overset/oversetPolyPatch/oversetFvPatchField.C @@ -585,10 +585,7 @@ template<class Type> Foam::tmp<Foam::Field<Type>> Foam::oversetFvPatchField<Type>:: patchNeighbourField() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Zero); } diff --git a/src/overset/oversetPolyPatch/oversetFvPatchField.H b/src/overset/oversetPolyPatch/oversetFvPatchField.H index f681a9cd6413b11d1234611b34e49939113560d9..ead67e8fab97d2905aeb84674f53bb864c061569 100644 --- a/src/overset/oversetPolyPatch/oversetFvPatchField.H +++ b/src/overset/oversetPolyPatch/oversetFvPatchField.H @@ -132,15 +132,6 @@ public: //- Construct as copy oversetFvPatchField(const oversetFvPatchField<Type>&); - //- Construct and return a clone - virtual tmp<fvPatchField<Type>> clone() const - { - return tmp<fvPatchField<Type>> - ( - new oversetFvPatchField<Type>(*this) - ); - } - //- Construct as copy setting internal field reference oversetFvPatchField ( @@ -148,16 +139,19 @@ public: const DimensionedField<Type, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- Return a clone + virtual tmp<fvPatchField<Type>> clone() const + { + return fvPatchField<Type>::Clone(*this); + } + + //- Clone with an internal field reference virtual tmp<fvPatchField<Type>> clone ( const DimensionedField<Type, volMesh>& iF ) const { - return tmp<fvPatchField<Type>> - ( - new oversetFvPatchField<Type>(*this, iF) - ); + return fvPatchField<Type>::Clone(*this, iF); } @@ -201,10 +195,7 @@ public: const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } //- Return the matrix source coefficients corresponding to the @@ -214,30 +205,21 @@ public: const tmp<scalarField>& ) const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } //- Return the matrix diagonal coefficients corresponding to the //- evaluation of the gradient of this patchField tmp<Field<Type>> gradientInternalCoeffs() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } //- Return the matrix source coefficients corresponding to the //- evaluation of the gradient of this patchField tmp<Field<Type>> gradientBoundaryCoeffs() const { - return tmp<Field<Type>> - ( - new Field<Type>(this->size(), Zero) - ); + return tmp<Field<Type>>::New(this->size(), Foam::zero{}); } //- Manipulate matrix diff --git a/src/overset/regionsToCell/regionsToCell.C b/src/overset/regionsToCell/regionsToCell.C index 996743d394a0c72d8f0a2b49e86f9dcbca32ec22..af36c7fe3eb63c9c777c3d387d7217ef5ff4f0d2 100644 --- a/src/overset/regionsToCell/regionsToCell.C +++ b/src/overset/regionsToCell/regionsToCell.C @@ -377,14 +377,16 @@ void Foam::regionsToCell::combine(topoSet& set, const bool add) const // Note: wip. Select cells first boolList selectedCell(mesh_.nCells(), true); - if (setName_.size() && setName_ != "none") + if (!setName_.empty() && setName_ != "none") { - Info<< " Loading subset " << setName_ << " to delimit search region." - << endl; - cellSet subSet(mesh_, setName_); + Info<< " Loading subset " << setName_ + << " to delimit search region." << nl; + + cellSet loadedSet(mesh_, setName_, IOobject::NO_REGISTER); + const labelHashSet& cellLabels = loadedSet; selectedCell = false; - for (const label celli : static_cast<const labelHashSet&>(subSet)) + for (const label celli : cellLabels) { selectedCell[celli] = true; } diff --git a/src/parallel/decompose/decompose/decompositionInformation.C b/src/parallel/decompose/decompose/decompositionInformation.C index ba3bc31a2c1146d97177b80153baa9c0016209ef..8b4a31b7b4ad769a48405d49553387389fbb8bf2 100644 --- a/src/parallel/decompose/decompose/decompositionInformation.C +++ b/src/parallel/decompose/decompose/decompositionInformation.C @@ -40,17 +40,16 @@ void Foam::decompositionInformation::populate { nDomains_ = nDomain; - distrib_.clear(); - distrib_.resize(nDomain); + distrib_.resize_nocopy(nDomain); for (labelList& subdist : distrib_) { - subdist.clear(); - subdist.resize(nDomain, Zero); + subdist.resize_nocopy(nDomain); + subdist = Foam::zero{}; } // Protect against zero-sized offset list - const label numCells = max(0, (xadj.size()-1)); + const label numCells = Foam::max(0, (xadj.size()-1)); for (label celli = 0; celli < numCells; ++celli) { @@ -75,9 +74,9 @@ void Foam::decompositionInformation::populate // Build summary - labelList cellsCount(nDomains_, Zero); - labelList neighCount(nDomains_, Zero); - labelList facesCount(nDomains_, Zero); + labelList cellsCount(nDomains_, Foam::zero{}); + labelList neighCount(nDomains_, Foam::zero{}); + labelList facesCount(nDomains_, Foam::zero{}); forAll(distrib_, ownProc) { diff --git a/src/parallel/decompose/decompose/decompositionModel.C b/src/parallel/decompose/decompose/decompositionModel.C index 074e83c6f2e04449521c2179df65bb672581f9a1..63d7d0902d7a4d6747322f07c16cb431f49e8d10 100644 --- a/src/parallel/decompose/decompose/decompositionModel.C +++ b/src/parallel/decompose/decompose/decompositionModel.C @@ -49,12 +49,8 @@ Foam::decompositionModel::decompositionModel const dictionary* fallback ) : - MeshObject - < - polyMesh, - Foam::UpdateableMeshObject, - decompositionModel - >(mesh), + MeshObject_type(mesh), + IOdictionary ( IOobject::selectIO @@ -86,13 +82,7 @@ const Foam::decompositionModel& Foam::decompositionModel::New const dictionary* content ) { - return - MeshObject - < - polyMesh, - Foam::UpdateableMeshObject, - decompositionModel - >::New(mesh, decompDictFile, content); + return MeshObject_type::New(mesh, decompDictFile, content); } diff --git a/src/parallel/decompose/decompose/decompositionModel.H b/src/parallel/decompose/decompose/decompositionModel.H index 2624219caf1e6dc95da1c12157e62c96b4d2f1e1..2068bcd978e73b59cd84aa97852b1ef9eb8a761b 100644 --- a/src/parallel/decompose/decompose/decompositionModel.H +++ b/src/parallel/decompose/decompose/decompositionModel.H @@ -65,6 +65,16 @@ class decompositionModel >, public IOdictionary { + // Private Typedefs + + typedef MeshObject + < + polyMesh, + UpdateableMeshObject, + decompositionModel + > MeshObject_type; + + // Private Data mutable autoPtr<decompositionMethod> decomposerPtr_; diff --git a/src/parallel/decompose/decompose/dimFieldDecomposerTemplates.C b/src/parallel/decompose/decompose/dimFieldDecomposerTemplates.C index de5e73cc7fccbd49142163a44b2116ab6023dcf3..4ffa33ec85b31a024722f83b74b216c43b71d915 100644 --- a/src/parallel/decompose/decompose/dimFieldDecomposerTemplates.C +++ b/src/parallel/decompose/decompose/dimFieldDecomposerTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,26 +37,17 @@ Foam::dimFieldDecomposer::decomposeField const DimensionedField<Type, volMesh>& field ) const { - // Create and map the internal field values - Field<Type> mappedField(field, cellAddressing_); - // Create the field for the processor - return - tmp<DimensionedField<Type, volMesh>>::New - ( - IOobject - ( - field.name(), - procMesh_.thisDb().time().timeName(), - procMesh_.thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - procMesh_, - field.dimensions(), - std::move(mappedField) - ); + + return DimensionedField<Type, volMesh>::New + ( + field.name(), + IOobject::NO_REGISTER, + procMesh_, + field.dimensions(), + // Internal field - mapped values + Field<Type>(field.field(), cellAddressing_) + ); } diff --git a/src/parallel/decompose/decompose/fvFieldDecomposerTemplates.C b/src/parallel/decompose/decompose/fvFieldDecomposerTemplates.C index caa7884053f10100264be19078c10d1b80dee1b7..9e5cfd727b7882051ca43f2adab0e32004d1facf 100644 --- a/src/parallel/decompose/decompose/fvFieldDecomposerTemplates.C +++ b/src/parallel/decompose/decompose/fvFieldDecomposerTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,26 +44,17 @@ Foam::fvFieldDecomposer::decomposeField const DimensionedField<Type, volMesh>& field ) const { - // Create and map the internal field values - Field<Type> mappedField(field, cellAddressing_); - // Create the field for the processor - return - tmp<DimensionedField<Type, volMesh>>::New - ( - IOobject - ( - field.name(), - procMesh_.thisDb().time().timeName(), - procMesh_.thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - procMesh_, - field.dimensions(), - std::move(mappedField) - ); + + return DimensionedField<Type, volMesh>::New + ( + field.name(), + IOobject::NO_REGISTER, + procMesh_, + field.dimensions(), + // Internal field - mapped values + Field<Type>(field.field(), cellAddressing_) + ); } @@ -75,52 +66,26 @@ Foam::fvFieldDecomposer::decomposeField const bool allowUnknownPatchFields ) const { - typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType; - - // 1. Create the complete field with dummy patch fields - PtrList<fvPatchField<Type>> patchFields(boundaryAddressing_.size()); - - forAll(boundaryAddressing_, patchi) - { - patchFields.set - ( - patchi, - fvPatchField<Type>::New - ( - fvPatchFieldBase::calculatedType(), - procMesh_.boundary()[patchi], - DimensionedField<Type, volMesh>::null() - ) - ); - } - // Create the field for the processor - tmp<VolFieldType> tresF + // - with dummy patch fields + auto tresult = GeometricField<Type, fvPatchField, volMesh>::New ( - new VolFieldType - ( - IOobject - ( - field.name(), - procMesh_.thisDb().time().timeName(), - procMesh_.thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - procMesh_, - field.dimensions(), - Field<Type>(field.primitiveField(), cellAddressing_), - patchFields - ) + field.name(), + IOobject::NO_REGISTER, + procMesh_, + field.dimensions(), + // Internal field - mapped values + Field<Type>(field.primitiveField(), cellAddressing_), + fvPatchFieldBase::calculatedType() ); - VolFieldType& resF = tresF.ref(); - resF.oriented() = field().oriented(); + auto& result = tresult.ref(); + result.oriented() = field.oriented(); // 2. Change the fvPatchFields to the correct type using a mapper // constructor (with reference to the now correct internal field) - auto& bf = resF.boundaryFieldRef(); + auto& bf = result.boundaryFieldRef(); forAll(bf, patchi) { @@ -133,7 +98,7 @@ Foam::fvFieldDecomposer::decomposeField ( field.boundaryField()[boundaryAddressing_[patchi]], procMesh_.boundary()[patchi], - resF(), + result.internalField(), patchFieldDecomposerPtrs_[patchi] ) ); @@ -146,7 +111,7 @@ Foam::fvFieldDecomposer::decomposeField new processorCyclicFvPatchField<Type> ( procMesh_.boundary()[patchi], - resF(), + result.internalField(), Field<Type> ( field.primitiveField(), @@ -163,7 +128,7 @@ Foam::fvFieldDecomposer::decomposeField new processorFvPatchField<Type> ( procMesh_.boundary()[patchi], - resF(), + result.internalField(), Field<Type> ( field.primitiveField(), @@ -180,7 +145,7 @@ Foam::fvFieldDecomposer::decomposeField new emptyFvPatchField<Type> ( procMesh_.boundary()[patchi], - resF() + result.internalField() ) ); } @@ -192,7 +157,7 @@ Foam::fvFieldDecomposer::decomposeField } // Create the field for the processor - return tresF; + return tresult; } @@ -203,27 +168,15 @@ Foam::fvFieldDecomposer::decomposeField const GeometricField<Type, fvsPatchField, surfaceMesh>& field ) const { - typedef GeometricField<Type, fvsPatchField, surfaceMesh> SurfaceFieldType; - labelList mapAddr ( - labelList::subList - ( - faceAddressing_, - procMesh_.nInternalFaces() - ) + labelList::subList(faceAddressing_, procMesh_.nInternalFaces()) ); forAll(mapAddr, i) { mapAddr[i] -= 1; } - // Create and map the internal field values - Field<Type> internalField - ( - field.primitiveField(), - mapAddr - ); // Problem with addressing when a processor patch picks up both internal // faces and faces from cyclic boundaries. This is a bit of a hack, but @@ -232,66 +185,40 @@ Foam::fvFieldDecomposer::decomposeField // (i.e. using slices) Field<Type> allFaceField(field.mesh().nFaces()); - forAll(field.primitiveField(), i) { - allFaceField[i] = field.primitiveField()[i]; - } + SubList<Type>(allFaceField, field.primitiveField().size()) = + field.primitiveField(); - forAll(field.boundaryField(), patchi) - { - const Field<Type>& p = field.boundaryField()[patchi]; + forAll(field.boundaryField(), patchi) + { + const Field<Type>& pfld = field.boundaryField()[patchi]; - const label patchStart = field.mesh().boundaryMesh()[patchi].start(); + const label start = field.mesh().boundaryMesh()[patchi].start(); - forAll(p, i) - { - allFaceField[patchStart + i] = p[i]; + SubList<Type>(allFaceField, pfld.size(), start) = pfld; } } // 1. Create the complete field with dummy patch fields - PtrList<fvsPatchField<Type>> patchFields(boundaryAddressing_.size()); - forAll(boundaryAddressing_, patchi) - { - patchFields.set - ( - patchi, - fvsPatchField<Type>::New - ( - fvsPatchFieldBase::calculatedType(), - procMesh_.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null() - ) - ); - } - - tmp<SurfaceFieldType> tresF + auto tresult = GeometricField<Type, fvsPatchField, surfaceMesh>::New ( - new SurfaceFieldType - ( - IOobject - ( - field.name(), - procMesh_.thisDb().time().timeName(), - procMesh_.thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - procMesh_, - field.dimensions(), - Field<Type>(field.primitiveField(), mapAddr), - patchFields - ) + field.name(), + IOobject::NO_REGISTER, + procMesh_, + field.dimensions(), + // Internal field - mapped values + Field<Type>(field.primitiveField(), mapAddr), + fvsPatchFieldBase::calculatedType() ); - SurfaceFieldType& resF = tresF.ref(); - resF.oriented() = field().oriented(); + auto& result = tresult.ref(); + result.oriented() = field.oriented(); // 2. Change the fvsPatchFields to the correct type using a mapper // constructor (with reference to the now correct internal field) - auto& bf = resF.boundaryFieldRef(); + auto& bf = result.boundaryFieldRef(); forAll(boundaryAddressing_, patchi) { @@ -304,7 +231,7 @@ Foam::fvFieldDecomposer::decomposeField ( field.boundaryField()[boundaryAddressing_[patchi]], procMesh_.boundary()[patchi], - resF(), + result.internalField(), patchFieldDecomposerPtrs_[patchi] ) ); @@ -317,7 +244,7 @@ Foam::fvFieldDecomposer::decomposeField new processorCyclicFvsPatchField<Type> ( procMesh_.boundary()[patchi], - resF(), + result.internalField(), Field<Type> ( allFaceField, @@ -326,7 +253,7 @@ Foam::fvFieldDecomposer::decomposeField ) ); - if (resF.is_oriented()) + if (result.is_oriented()) { bf[patchi] *= faceSign_[patchi]; } @@ -339,7 +266,7 @@ Foam::fvFieldDecomposer::decomposeField new processorFvsPatchField<Type> ( procMesh_.boundary()[patchi], - resF(), + result.internalField(), Field<Type> ( allFaceField, @@ -348,7 +275,7 @@ Foam::fvFieldDecomposer::decomposeField ) ); - if (resF.is_oriented()) + if (result.is_oriented()) { bf[patchi] *= faceSign_[patchi]; } @@ -361,7 +288,7 @@ Foam::fvFieldDecomposer::decomposeField } // Create the field for the processor - return tresF; + return tresult; } diff --git a/src/parallel/decompose/decompose/pointFieldDecomposerTemplates.C b/src/parallel/decompose/decompose/pointFieldDecomposerTemplates.C index b42fbc1a21fb14ea681ee5cb9b9cceaf1614e1df..cc2671e98fdb7921f0f836ce814cf0e2de2bf941 100644 --- a/src/parallel/decompose/decompose/pointFieldDecomposerTemplates.C +++ b/src/parallel/decompose/decompose/pointFieldDecomposerTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,9 +38,6 @@ Foam::pointFieldDecomposer::decomposeField const GeometricField<Type, pointPatchField, pointMesh>& field ) const { - // Create and map the internal field values - Field<Type> internalField(field.primitiveField(), pointAddressing_); - // Create a list of pointers for the patchFields PtrList<pointPatchField<Type>> patchFields(boundaryAddressing_.size()); @@ -56,7 +53,7 @@ Foam::pointFieldDecomposer::decomposeField ( field.boundaryField()[boundaryAddressing_[patchi]], procMesh_.boundary()[patchi], - DimensionedField<Type, pointMesh>::null(), + pointPatchField<Type>::Internal::null(), patchFieldDecomposerPtrs_[patchi] ) ); @@ -69,30 +66,24 @@ Foam::pointFieldDecomposer::decomposeField new processorPointPatchField<Type> ( procMesh_.boundary()[patchi], - DimensionedField<Type, pointMesh>::null() + pointPatchField<Type>::Internal::null() ) ); } } // Create the field for the processor - return - tmp<GeometricField<Type, pointPatchField, pointMesh>>::New - ( - IOobject - ( - field.name(), - procMesh_.thisDb().time().timeName(), - procMesh_.thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - procMesh_, - field.dimensions(), - internalField, - patchFields - ); + return GeometricField<Type, pointPatchField, pointMesh>::New + ( + field.name(), + IOobject::NO_REGISTER, + procMesh_, + field.dimensions(), + // Internal field - mapped values + Field<Type>(field.primitiveField(), pointAddressing_), + // Boundary field + patchFields + ); } diff --git a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C index 355899fe409edd72953f3040e6a9fd3499cce231..ba67ac89021ef9c2b71a77b422fa13d381df2c0f 100644 --- a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C +++ b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C @@ -413,7 +413,7 @@ Foam::labelList Foam::decompositionMethod::decompose mesh, fineToCoarse, coarsePoints.size(), - true, // use global cell labels + true, // Global mesh connectivity coarseCellCells ); @@ -589,7 +589,7 @@ Foam::labelList Foam::decompositionMethod::decompose // If we average the region centre instead, cyclics could cause // the average domain centre to be outside of domain. - scalarField regionWeights(localRegion.nLocalRegions(), Zero); + scalarField regionWeights(localRegion.nLocalRegions(), Foam::zero{}); pointField regionCentres(localRegion.nLocalRegions(), point::max); diff --git a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C index 210dcde5f3143dc03aba2a29cfe29e932a7729b7..2a07ac2a04717571fdb5c4b9ce82fa95c09b3bac 100644 --- a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C +++ b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,7 +59,7 @@ Foam::label Foam::metisLikeDecomp::decomposeGeneral } // Protect against zero-sized offset list - const label numCells = max(0, (xadj.size()-1)); + const label numCells = Foam::max(0, (xadj.size()-1)); const globalIndex globalAdjncy(adjncy.size()); const globalIndex globalCells(numCells); @@ -224,17 +224,10 @@ Foam::labelList Foam::metisLikeDecomp::decompose << exit(FatalError); } + // Global mesh connectivity CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - true, - cellCells - ); + globalMeshData::calcCellCells(mesh, cellCells, true); - // Decompose using default weights labelList decomp; decomposeGeneral ( @@ -274,11 +267,10 @@ Foam::labelList Foam::metisLikeDecomp::decompose mesh, agglom, agglomPoints.size(), - true, + true, // Global mesh connectivity cellCells ); - // Decompose using default weights labelList decomp; decomposeGeneral ( @@ -313,7 +305,6 @@ Foam::labelList Foam::metisLikeDecomp::decompose // adjncy : contains neighbours (= edges in graph) // xadj(celli) : start of information in adjncy for celli - // Decompose using default weights labelList decomp; decomposeGeneral ( @@ -349,7 +340,6 @@ Foam::labelList Foam::metisLikeDecomp::decompose auto cellCells(CompactListList<label>::pack(globalCellCells)); - // Decompose using default weights labelList decomp; decomposeGeneral ( diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C index d3d0f3469bc1776abeeb920887a5a2a08b24c75d..b91df7c6d69ee78770603c95ae7ef8d540be51d5 100644 --- a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C +++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -383,9 +383,6 @@ void Foam::multiLevelDecomp::decompose { // Recurse - // Determine points per domain - labelListList domainToPoints(invertOneToMany(nCurrDomains, dist)); - // Extract processor+local index from point-point addressing if (debug && Pstream::master()) { @@ -510,7 +507,7 @@ void Foam::multiLevelDecomp::decompose // Count the number inbetween blocks of nNext size label nPoints = 0; - labelList nOutsideConnections(nCurrDomains, Zero); + labelList nOutsideConnections(nCurrDomains, Foam::zero{}); forAll(pointPoints, pointi) { if ((dist[pointi] / nNext) == blockI) @@ -611,19 +608,19 @@ Foam::labelList Foam::multiLevelDecomp::decompose const scalarField& cWeights ) const { + labelList finalDecomp(cc.size(), Foam::zero{}); + labelList cellMap(Foam::identity(cc.size())); + CompactListList<label> cellCells; globalMeshData::calcCellCells ( mesh, - identity(cc.size()), - cc.size(), - true, + cellMap, + cellMap.size(), + true, // Global mesh connectivity cellCells ); - labelList finalDecomp(cc.size(), Foam::zero{}); - labelList cellMap(identity(cc.size())); - decompose ( cellCells.unpack(), @@ -648,7 +645,7 @@ Foam::labelList Foam::multiLevelDecomp::decompose ) const { labelList finalDecomp(cc.size(), Foam::zero{}); - labelList cellMap(identity(cc.size())); + labelList cellMap(Foam::identity(cc.size())); decompose ( @@ -674,7 +671,7 @@ Foam::labelList Foam::multiLevelDecomp::decompose ) const { labelList finalDecomp(cc.size(), Foam::zero{}); - labelList cellMap(identity(cc.size())); + labelList cellMap(Foam::identity(cc.size())); decompose ( diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H index 468af9c45d1b8f084714a6cbdad8c4b38c06537b..5baeca557df8e45ac06d3eef237f0834fac9f3f8 100644 --- a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H +++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H @@ -72,7 +72,7 @@ class multiLevelDecomp //- Given connectivity across processors work out connectivity - // for a (consistent) subset + //- for a (consistent) subset void subsetGlobalCellCells ( const label nDomains, diff --git a/src/parallel/decompose/faDecompose/faFieldDecomposerTemplates.C b/src/parallel/decompose/faDecompose/faFieldDecomposerTemplates.C index 2c6cfb251f750d614fd0dddea06b221070362ccb..ee072e7a67cbb979e5096dd85bcbfeddb2dc9615 100644 --- a/src/parallel/decompose/faDecompose/faFieldDecomposerTemplates.C +++ b/src/parallel/decompose/faDecompose/faFieldDecomposerTemplates.C @@ -60,7 +60,7 @@ Foam::faFieldDecomposer::decomposeField ( field.boundaryField()[oldPatchi], procMesh_.boundary()[patchi], - DimensionedField<Type, areaMesh>::null(), + faPatchField<Type>::Internal::null(), patchFieldDecomposerPtrs_[patchi] ) ); @@ -73,7 +73,7 @@ Foam::faFieldDecomposer::decomposeField new processorFaPatchField<Type> ( procMesh_.boundary()[patchi], - DimensionedField<Type, areaMesh>::null(), + faPatchField<Type>::Internal::null(), Field<Type> ( field.internalField(), @@ -171,7 +171,7 @@ Foam::faFieldDecomposer::decomposeField ( field.boundaryField()[oldPatchi], procMesh_.boundary()[patchi], - DimensionedField<Type, edgeMesh>::null(), + faePatchField<Type>::Internal::null(), patchFieldDecomposerPtrs_[patchi] ) ); @@ -184,7 +184,7 @@ Foam::faFieldDecomposer::decomposeField new processorFaePatchField<Type> ( procMesh_.boundary()[patchi], - DimensionedField<Type, edgeMesh>::null(), + faePatchField<Type>::Internal::null(), Field<Type> ( allEdgeField, diff --git a/src/parallel/decompose/faDecompose/faMeshDecomposition.C b/src/parallel/decompose/faDecompose/faMeshDecomposition.C index a3775f461b3941f733b4a155631edafba2e8aefa..006b556e5ad23416aebd13c46aea9d09716a9eeb 100644 --- a/src/parallel/decompose/faDecompose/faMeshDecomposition.C +++ b/src/parallel/decompose/faDecompose/faMeshDecomposition.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2016-2017 Wikki Ltd - Copyright (C) 2018-2022 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,6 +35,7 @@ License #include "OSspecific.H" #include "Map.H" #include "SLList.H" +#include "ListOps.H" #include "globalMeshData.H" // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -275,17 +276,9 @@ void Foam::faMeshDecomposition::decomposeMesh() ioAddr.rename("faceProcAddressing"); labelIOList fvFaceProcAddressing(ioAddr); - fvFaceProcAddressingHash.reserve(fvFaceProcAddressing.size()); + fvFaceProcAddressingHash = invertToMap(fvFaceProcAddressing); + } - forAll(fvFaceProcAddressing, facei) - { - fvFaceProcAddressingHash.insert - ( - fvFaceProcAddressing[facei], - facei - ); - } - }; const labelList& curProcFaceAddressing = procFaceAddressing_[procI]; @@ -1116,12 +1109,8 @@ bool Foam::faMeshDecomposition::writeDecomposition() Info<< "\nConstructing processor FA meshes" << endl; // Make a lookup map for globally shared points - Map<label> sharedPointLookup(2*globallySharedPoints_.size()); + Map<label> sharedPointLookup(invertToMap(globallySharedPoints_)); - forAll(globallySharedPoints_, pointi) - { - sharedPointLookup.insert(globallySharedPoints_[pointi], pointi); - } label maxProcFaces = 0; label totProcFaces = 0; @@ -1250,8 +1239,8 @@ bool Foam::faMeshDecomposition::writeDecomposition() // Add boundary patches procMesh.addFaPatches(procPatches); - // Set the precision of the points data to 10 - IOstream::defaultPrecision(10); + // More precision (for points data) + IOstream::minPrecision(10); procMesh.write(); diff --git a/src/parallel/decompose/kahipDecomp/kahipDecomp.C b/src/parallel/decompose/kahipDecomp/kahipDecomp.C index b889efa0200b008c5b72911659007427d3b15ff6..b2341cd69ceacc70cad282fbdd99b2e134a967a8 100644 --- a/src/parallel/decompose/kahipDecomp/kahipDecomp.C +++ b/src/parallel/decompose/kahipDecomp/kahipDecomp.C @@ -101,7 +101,7 @@ Foam::label Foam::kahipDecomp::decomposeSerial } #endif - int numCells = max(0, (xadj.size()-1)); + int numCells = Foam::max(0, (xadj.size()-1)); // Addressing ConstPrecisionAdaptor<int, label, List> adjncy_param(adjncy); diff --git a/src/parallel/decompose/metisDecomp/metisDecomp.C b/src/parallel/decompose/metisDecomp/metisDecomp.C index d62307cb48f60e3edcdbefea300c424b51d8f542..4557c6effc36bb5cd6cbe93935267ae12ece3582 100644 --- a/src/parallel/decompose/metisDecomp/metisDecomp.C +++ b/src/parallel/decompose/metisDecomp/metisDecomp.C @@ -85,7 +85,7 @@ Foam::label Foam::metisDecomp::decomposeSerial const dictionary* coeffsDictPtr = decompDict_.findDict("metisCoeffs"); - idx_t numCells = max(0, (xadj.size()-1)); + idx_t numCells = Foam::max(0, (xadj.size()-1)); // Decomposition options List<idx_t> options(METIS_NOPTIONS); diff --git a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C index 1fb105cf4f3434f2272fa06120b8aaa1a0196c55..f5e1d9b0bffe99cb7b51b40c7b7411ac065f05f2 100644 --- a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C +++ b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -117,7 +117,7 @@ Foam::label Foam::ptscotchDecomp::decompose labelList& decomp ) const { - const SCOTCH_Num numCells = max(0, (xadj.size()-1)); + const SCOTCH_Num numCells = Foam::max(0, (xadj.size()-1)); // Addressing ConstPrecisionAdaptor<SCOTCH_Num, label, List> adjncy_param(adjncy); @@ -559,17 +559,10 @@ Foam::labelList Foam::ptscotchDecomp::decompose // adjncy : contains neighbours (= edges in graph) // xadj(celli) : start of information in adjncy for celli + // Global mesh connectivity CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - true, - cellCells - ); + globalMeshData::calcCellCells(mesh, cellCells, true); - // Decompose using default weights labelList decomp; decompose ( @@ -606,13 +599,14 @@ Foam::labelList Foam::ptscotchDecomp::decompose // Make Metis CSR (Compressed Storage Format) storage // adjncy : contains neighbours (= edges in graph) // xadj(celli) : start of information in adjncy for celli + CompactListList<label> cellCells; globalMeshData::calcCellCells ( mesh, agglom, agglomPoints.size(), - true, + true, // Global mesh connectivity cellCells ); @@ -654,7 +648,6 @@ Foam::labelList Foam::ptscotchDecomp::decompose // adjncy : contains neighbours (= edges in graph) // xadj(celli) : start of information in adjncy for celli - // Decompose using default weights labelList decomp; decompose ( @@ -692,7 +685,6 @@ Foam::labelList Foam::ptscotchDecomp::decompose auto cellCells(CompactListList<label>::pack(globalCellCells)); - // Decompose using default weights labelList decomp; decompose ( diff --git a/src/parallel/decompose/scotchDecomp/scotchDecomp.C b/src/parallel/decompose/scotchDecomp/scotchDecomp.C index c3637bd4dd508b01b80e70530625d785ac82c496..b2e4dc65d4b3460e01166f3583370e3c4fdc86f2 100644 --- a/src/parallel/decompose/scotchDecomp/scotchDecomp.C +++ b/src/parallel/decompose/scotchDecomp/scotchDecomp.C @@ -113,7 +113,7 @@ Foam::label Foam::scotchDecomp::decomposeSerial labelList& decomp ) const { - const SCOTCH_Num numCells = max(0, (xadj.size()-1)); + const SCOTCH_Num numCells = Foam::max(0, (xadj.size()-1)); // Addressing ConstPrecisionAdaptor<SCOTCH_Num, label, List> adjncy_param(adjncy); diff --git a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C index f3949c5b960cea4114d6eaa760ea2f3f3ff87e34..8c32aface9d13a59d0e1510d601f641950f01d5e 100644 --- a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C +++ b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -230,13 +230,16 @@ Foam::word Foam::distributedTriSurfaceMesh::findLocalInstance ) { // Modified findInstance which also looks in parent directory + word instance ( io.time().findInstance ( io.local(), word::null, - IOobject::READ_IF_PRESENT + IOobject::READ_IF_PRESENT, + word::null, // No stop instance + !UPstream::parRun() // Fallback to "constant" for non-parallel ) ); @@ -246,47 +249,56 @@ Foam::word Foam::distributedTriSurfaceMesh::findLocalInstance } + // The rest of this code is only when parRun == true ... + // Replicate findInstance operation but now on parent directory // Search in parent directory fileName parentDir = - io.rootPath()/io.time().globalCaseName() - /io.instance()/io.db().dbDir()/io.local()/io.name(); + ( + io.rootPath()/io.globalCaseName() + /io.instance()/io.db().dbDir()/io.local()/io.name() + ); if (fileHandler().isDir(parentDir)) { return io.instance(); } - instantList ts = io.time().times(); - label instanceI; const scalar startValue = io.time().timeOutputValue(); - for (instanceI = ts.size()-1; instanceI >= 0; --instanceI) + instantList ts = io.time().times(); + + label instIndex = ts.size()-1; + + // Backward search for first time that is <= startValue + for (; instIndex >= 0; --instIndex) { - if (ts[instanceI].value() <= startValue) + if (ts[instIndex].value() <= startValue) { break; } } - // continue searching from here - for (; instanceI >= 0; --instanceI) + // Continue searching from here + for (; instIndex >= 0; --instIndex) { // Shortcut: if actual directory is the timeName we've already tested it - if (ts[instanceI].name() == io.instance()) + if (ts[instIndex].name() == io.instance()) { continue; } - fileName parentDir = - io.rootPath()/io.time().globalCaseName() - /ts[instanceI].name()/io.db().dbDir()/io.local()/io.name(); + parentDir = + ( + io.rootPath()/io.globalCaseName() + /ts[instIndex].name()/io.db().dbDir()/io.local()/io.name() + ); if (fileHandler().isDir(parentDir)) { - return ts[instanceI].name(); + return ts[instIndex].name(); } } @@ -301,9 +313,11 @@ Foam::word Foam::distributedTriSurfaceMesh::findLocalInstance // constant function of the time, because the latter points to // the case constant directory in parallel cases - fileName parentDir = - io.rootPath()/io.time().globalCaseName() - /io.time().constant()/io.db().dbDir()/io.local()/io.name(); + parentDir = + ( + io.rootPath()/io.globalCaseName() + /io.time().constant()/io.db().dbDir()/io.local()/io.name() + ); if (fileHandler().isDir(parentDir)) { @@ -311,11 +325,15 @@ Foam::word Foam::distributedTriSurfaceMesh::findLocalInstance } } - FatalErrorInFunction - << "Cannot find directory " << io.local() << " in times " << ts - << exit(FatalError); + // FatalErrorInFunction + // << "Cannot find directory " << io.local() << " in times " << ts + // << exit(FatalError); + // + // return word::null; - return word::null; + // Nothing found in parent? + // - treat like regular findInstance with "constant" fallback + return io.time().constant(); } @@ -1814,6 +1832,11 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs // Now combine for all processors and convert to correct format. forAll(bbs, proci) { + // Inflate a bit for if triangle coincide with processor boundaries + for (auto& bb : bbs[proci]) + { + bb.grow(mergeDist_); + } Pstream::listCombineGather(bbs[proci], plusEqOp<boundBox>()); } Pstream::broadcast(bbs); @@ -1864,6 +1887,11 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs // Now combine for all processors and convert to correct format. forAll(bbs, proci) { + // Inflate a bit for if triangle coincide with processor boundaries + for (auto& bb : bbs[proci]) + { + bb.grow(mergeDist_); + } Pstream::listCombineGather(bbs[proci], plusEqOp<boundBox>()); } Pstream::broadcast(bbs); @@ -2165,6 +2193,11 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs // Now combine for all processors and convert to correct format. forAll(bbs, proci) { + // Inflate a bit for if triangle coincide with processor boundaries + for (auto& bb : bbs[proci]) + { + bb.grow(mergeDist_); + } Pstream::listCombineGather(bbs[proci], plusEqOp<boundBox>()); } Pstream::broadcast(bbs); @@ -2724,16 +2757,16 @@ Foam::distributedTriSurfaceMesh::distributedTriSurfaceMesh distributionTypeNames_.readIfPresent ( "distributionType", - dict_, + dict, distType_ ); // Merge distance - dict_.readIfPresent("mergeDistance", mergeDist_); + dict.readIfPresent("mergeDistance", mergeDist_); // Distribution type bool closed; - if (dict_.readIfPresent<bool>("closed", closed)) + if (dict.readIfPresent<bool>("closed", closed)) { surfaceClosed_ = closed; } @@ -2741,7 +2774,7 @@ Foam::distributedTriSurfaceMesh::distributedTriSurfaceMesh outsideVolType_ = volumeType::names.getOrDefault ( "outsideVolumeType", - dict_, + dict, outsideVolType_ ); } @@ -4751,7 +4784,7 @@ void Foam::distributedTriSurfaceMesh::distribute // Send all // ~~~~~~~~ - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; forAll(faceSendMap, proci) { diff --git a/src/parallel/reconstruct/faReconstruct/faFieldReconstructorTemplates.C b/src/parallel/reconstruct/faReconstruct/faFieldReconstructorTemplates.C index e5c27951ff7cefbcf5f5f2b1445c1991725cb849..15d1fb3b63db1a89097b082754d86c06ac0f795c 100644 --- a/src/parallel/reconstruct/faReconstruct/faFieldReconstructorTemplates.C +++ b/src/parallel/reconstruct/faReconstruct/faFieldReconstructorTemplates.C @@ -29,10 +29,9 @@ License #include "faFieldReconstructor.H" #include "Time.H" #include "PtrList.H" -#include "faPatchFields.H" #include "emptyFaPatch.H" -#include "emptyFaPatchField.H" -#include "emptyFaePatchField.H" +#include "faPatchFields.H" +#include "faePatchFields.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -130,7 +129,7 @@ Foam::faFieldReconstructor::reconstructField ( procField.boundaryField()[patchI], mesh_.boundary()[curBPatch], - DimensionedField<Type, areaMesh>::null(), + faPatchField<Type>::Internal::null(), faPatchFieldReconstructor ( mesh_.boundary()[curBPatch].size(), @@ -204,7 +203,7 @@ Foam::faFieldReconstructor::reconstructField ( mesh_.boundary()[curBPatch].type(), mesh_.boundary()[curBPatch], - DimensionedField<Type, areaMesh>::null() + faPatchField<Type>::Internal::null() ) ); } @@ -238,9 +237,9 @@ Foam::faFieldReconstructor::reconstructField patchI, faPatchField<Type>::New ( - emptyFaPatchField<Type>::typeName, + faPatchFieldBase::emptyType(), mesh_.boundary()[patchI], - DimensionedField<Type, areaMesh>::null() + faPatchField<Type>::Internal::null() ) ); } @@ -371,7 +370,7 @@ Foam::faFieldReconstructor::reconstructField ( procField.boundaryField()[patchI], mesh_.boundary()[curBPatch], - DimensionedField<Type, edgeMesh>::null(), + faePatchField<Type>::Internal::null(), faPatchFieldReconstructor ( mesh_.boundary()[curBPatch].size(), @@ -448,8 +447,7 @@ Foam::faFieldReconstructor::reconstructField ( mesh_.boundary()[curBPatch].type(), mesh_.boundary()[curBPatch], - DimensionedField<Type, edgeMesh> - ::null() + faePatchField<Type>::Internal::null() ) ); } @@ -489,9 +487,9 @@ Foam::faFieldReconstructor::reconstructField patchI, faePatchField<Type>::New ( - emptyFaePatchField<Type>::typeName, + faePatchFieldBase::emptyType(), mesh_.boundary()[patchI], - DimensionedField<Type, edgeMesh>::null() + faePatchField<Type>::Internal::null() ) ); } diff --git a/src/parallel/reconstruct/faReconstruct/faMeshReconstructor.C b/src/parallel/reconstruct/faReconstruct/faMeshReconstructor.C index 722a63e2ba57c4e4a1acd2e3b0a01da68cb3b9ea..71b7584fb4ea33384785dee018ad3c2c164c12ae 100644 --- a/src/parallel/reconstruct/faReconstruct/faMeshReconstructor.C +++ b/src/parallel/reconstruct/faReconstruct/faMeshReconstructor.C @@ -110,7 +110,7 @@ void Foam::faMeshReconstructor::calcAddressing } } - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; if (Pstream::master()) { diff --git a/src/parallel/reconstruct/reconstruct/fvFieldReconstructorTemplates.C b/src/parallel/reconstruct/reconstruct/fvFieldReconstructorTemplates.C index 70a31ea8ccc7abc68821b0eedf8c2967e1d7f49e..1549abe4e78f3286b56ba9ba8b9c837408a9fc79 100644 --- a/src/parallel/reconstruct/reconstruct/fvFieldReconstructorTemplates.C +++ b/src/parallel/reconstruct/reconstruct/fvFieldReconstructorTemplates.C @@ -29,10 +29,9 @@ License #include "fvFieldReconstructor.H" #include "Time.H" #include "PtrList.H" -#include "fvPatchFields.H" #include "emptyFvPatch.H" -#include "emptyFvPatchField.H" -#include "emptyFvsPatchField.H" +#include "fvPatchFields.H" +#include "fvsPatchFields.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -125,7 +124,7 @@ Foam::fvFieldReconstructor::reconstructField ( procField.boundaryField()[patchi], mesh_.boundary()[curBPatch], - DimensionedField<Type, volMesh>::null(), + fvPatchField<Type>::Internal::null(), fvPatchFieldReconstructor ( mesh_.boundary()[curBPatch].size() @@ -193,7 +192,7 @@ Foam::fvFieldReconstructor::reconstructField ( mesh_.boundary()[curBPatch].type(), mesh_.boundary()[curBPatch], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -225,9 +224,9 @@ Foam::fvFieldReconstructor::reconstructField patchi, fvPatchField<Type>::New ( - emptyFvPatchField<Type>::typeName, + fvPatchFieldBase::emptyType(), mesh_.boundary()[patchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -323,7 +322,7 @@ Foam::fvFieldReconstructor::reconstructField ( procField.boundaryField()[patchi], mesh_.boundary()[curBPatch], - DimensionedField<Type, surfaceMesh>::null(), + fvsPatchField<Type>::Internal::null(), fvPatchFieldReconstructor ( mesh_.boundary()[curBPatch].size() @@ -379,8 +378,7 @@ Foam::fvFieldReconstructor::reconstructField ( mesh_.boundary()[curBPatch].type(), mesh_.boundary()[curBPatch], - DimensionedField<Type, surfaceMesh> - ::null() + fvsPatchField<Type>::Internal::null() ) ); } @@ -418,9 +416,9 @@ Foam::fvFieldReconstructor::reconstructField patchi, fvsPatchField<Type>::New ( - emptyFvsPatchField<Type>::typeName, + fvsPatchFieldBase::emptyType(), mesh_.boundary()[patchi], - DimensionedField<Type, surfaceMesh>::null() + fvsPatchField<Type>::Internal::null() ) ); } diff --git a/src/parallel/reconstruct/reconstruct/passivePositionParticle.H b/src/parallel/reconstruct/reconstruct/passivePositionParticle.H index b7cb6bab060d93ac880dc264e10068006cf800e8..392b109d4321facd42a88b326b73b99a4c8a649f 100644 --- a/src/parallel/reconstruct/reconstruct/passivePositionParticle.H +++ b/src/parallel/reconstruct/reconstruct/passivePositionParticle.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,7 +43,6 @@ SourceFiles #include "particle.H" #include "IOstream.H" -#include "autoPtr.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -131,17 +130,17 @@ public: //- Construct as copy passivePositionParticle(const passivePositionParticle& p) : - particle(p) + particle(p), + location_(p.location_) {} - //- Construct and return a clone + //- Return a clone virtual autoPtr<particle> clone() const { - return autoPtr<particle>(new passivePositionParticle(*this)); + return particle::Clone(*this); } - //- Factory class to read-construct particles (for parallel transfer) class iNew { diff --git a/src/parallel/reconstruct/reconstruct/pointFieldReconstructorTemplates.C b/src/parallel/reconstruct/reconstruct/pointFieldReconstructorTemplates.C index ae49e24b1b7f9bed9076b946288398b51b58ac7c..bc7b03167a29a2990f2fdb4cc9eb01d5fdc3aed8 100644 --- a/src/parallel/reconstruct/reconstruct/pointFieldReconstructorTemplates.C +++ b/src/parallel/reconstruct/reconstruct/pointFieldReconstructorTemplates.C @@ -79,7 +79,7 @@ Foam::pointFieldReconstructor::reconstructField ( procField.boundaryField()[patchi], mesh_.boundary()[curBPatch], - DimensionedField<Type, pointMesh>::null(), + pointPatchField<Type>::Internal::null(), pointPatchFieldReconstructor ( mesh_.boundary()[curBPatch].size() diff --git a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H index a9fac35aa3ed79f5d48363cc37068be84cba1a09..c48dbed8614661d3148f4ba6d673dbbd976ab57d 100644 --- a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H +++ b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H @@ -167,15 +167,6 @@ 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 ( @@ -183,16 +174,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C index d3667c5204dd6d8aada4066069085768afc1784c..048ac18ad02d1087ad196b484bb51c810d3c3deb 100644 --- a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C +++ b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C @@ -68,19 +68,12 @@ Foam::multiphaseEuler::diameterModels::constant::constant Foam::tmp<Foam::volScalarField> Foam::multiphaseEuler::diameterModels::constant::d() const { - return tmp<Foam::volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "d", - phase_.U().time().timeName(), - phase_.U().mesh() - ), - phase_.U().mesh(), - d_ - ) + "d", + IOobject::NO_REGISTER, + phase_.U().mesh(), + d_ ); } diff --git a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/interfacialModels/dragModels/interface/interface.C b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/interfacialModels/dragModels/interface/interface.C index 4f4e171057193510d485491e3513f5afeb502fba..1138db3704cd849ce4557ce080fc7e957ad8610e 100644 --- a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/interfacialModels/dragModels/interface/interface.C +++ b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/interfacialModels/dragModels/interface/interface.C @@ -70,17 +70,10 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseEuler::dragModels::interface::K const volScalarField& Ur ) const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "K", - Ur.mesh().time().timeName(), - Ur.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "K", + IOobject::NO_REGISTER, Ur.mesh(), dimensionedScalar(dimDensity/dimTime, Zero) ); diff --git a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C index c8142628ac59f39d0909458d0413686dc17c79b5..c19e5e5ef8440b4046c1c44e278066a895f474c8 100644 --- a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C +++ b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C @@ -536,19 +536,12 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseSystem::Cvm const phaseModel& phase ) const { - tmp<volScalarField> tCvm + auto tCvm = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Cvm", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimDensity, Zero) - ) + "Cvm", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimDensity, Zero) ); for (const phaseModel& phase2 : phases_) @@ -584,23 +577,15 @@ Foam::tmp<Foam::volVectorField> Foam::multiphaseSystem::Svm const phaseModel& phase ) const { - tmp<volVectorField> tSvm + auto tSvm = volVectorField::New ( - new volVectorField + "Svm", + IOobject::NO_REGISTER, + mesh_, + dimensionedVector ( - IOobject - ( - "Svm", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedVector - ( - "Svm", - dimensionSet(1, -2, -2, 0, 0), - Zero - ) + dimensionSet(1, -2, -2, 0, 0), + Zero ) ); @@ -653,7 +638,7 @@ Foam::tmp<Foam::volVectorField> Foam::multiphaseSystem::Svm Foam::autoPtr<Foam::multiphaseSystem::dragCoeffFields> Foam::multiphaseSystem::dragCoeffs() const { - autoPtr<dragCoeffFields> dragCoeffsPtr(new dragCoeffFields); + auto dragCoeffsPtr = autoPtr<dragCoeffFields>::New(); forAllConstIters(dragModels_, iter) { @@ -708,24 +693,12 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseSystem::dragCoeff const dragCoeffFields& dragCoeffs ) const { - tmp<volScalarField> tdragCoeff + auto tdragCoeff = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "dragCoeff", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar - ( - "dragCoeff", - dimensionSet(1, -3, -1, 0, 0), - 0 - ) - ) + "dragCoeff", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimensionSet(1, -3, -1, 0, 0), Zero) ); dragModelTable::const_iterator dmIter = dragModels_.begin(); @@ -756,24 +729,12 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseSystem::surfaceTension const phaseModel& phase1 ) const { - tmp<surfaceScalarField> tSurfaceTension + auto tSurfaceTension = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - "surfaceTension", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar - ( - "surfaceTension", - dimensionSet(1, -2, -2, 0, 0), - 0 - ) - ) + "surfaceTension", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimensionSet(1, -2, -2, 0, 0), Zero) ); tSurfaceTension.ref().setOriented(); @@ -805,19 +766,12 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseSystem::surfaceTension Foam::tmp<Foam::volScalarField> Foam::multiphaseSystem::nearInterface() const { - tmp<volScalarField> tnearInt + auto tnearInt = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "nearInterface", - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar("nearInterface", dimless, 0.0) - ) + "nearInterface", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless, Zero) ); for (const phaseModel& phase : phases_) @@ -872,7 +826,7 @@ void Foam::multiphaseSystem::solve() mesh_ ), mesh_, - dimensionedScalar("0", dimensionSet(0, 3, -1, 0, 0), 0) + dimensionedScalar(dimensionSet(0, 3, -1, 0, 0), Zero) ) ); diff --git a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/phaseModel/phaseModel.C b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/phaseModel/phaseModel.C index 7f1270c5877d8954337021c3b5ec084388688c70..48df9c09f5bbaff192f8e4dbce3f975bed872155 100644 --- a/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/phaseModel/phaseModel.C +++ b/src/phaseSystemModels/multiphaseEuler/multiphaseSystem/phaseModel/phaseModel.C @@ -118,39 +118,27 @@ Foam::phaseModel::phaseModel { alphaPhi_.setOriented(); - const word phiName = IOobject::groupName("phi", name_); - - IOobject phiHeader + IOobject io ( - phiName, + IOobject::groupName("phi", name_), mesh.time().timeName(), mesh, - IOobject::NO_READ + IOobject::MUST_READ, + IOobject::AUTO_WRITE, + IOobject::REGISTER ); - if (phiHeader.typeHeaderOk<surfaceScalarField>(true)) + if (io.typeHeaderOk<surfaceScalarField>(true)) { - Info<< "Reading face flux field " << phiName << endl; + Info<< "Reading face flux field " << io.name() << endl; - phiPtr_.reset - ( - new surfaceScalarField - ( - IOobject - ( - phiName, - mesh.time().timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh - ) - ); + phiPtr_.reset(new surfaceScalarField(io, mesh)); } else { - Info<< "Calculating face flux field " << phiName << endl; + Info<< "Calculating face flux field " << io.name() << endl; + + io.readOpt(IOobject::NO_READ); wordList phiTypes ( @@ -175,14 +163,7 @@ Foam::phaseModel::phaseModel ( new surfaceScalarField ( - IOobject - ( - phiName, - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), + io, fvc::flux(U_), phiTypes ) @@ -241,7 +222,8 @@ void Foam::phaseModel::correctInflowOutflow(surfaceScalarField& alphaPhi) const { surfaceScalarField::Boundary& alphaPhiBf = alphaPhi.boundaryFieldRef(); const volScalarField::Boundary& alphaBf = boundaryField(); - const surfaceScalarField::Boundary& phiBf = phi().boundaryField(); + const tmp<surfaceScalarField> tphi(phi()); + const auto& phiBf = tphi().boundaryField(); forAll(alphaPhiBf, patchi) { diff --git a/src/phaseSystemModels/multiphaseInter/compressibleMultiPhaseTurbulenceModels/compressibleMultiPhaseTurbulenceModels.C b/src/phaseSystemModels/multiphaseInter/compressibleMultiPhaseTurbulenceModels/compressibleMultiPhaseTurbulenceModels.C index b5abbaa5f2ddbce0490d2b6f35da059d1052858c..6d444b325e3713119c40530f63c40c210b54abfb 100644 --- a/src/phaseSystemModels/multiphaseInter/compressibleMultiPhaseTurbulenceModels/compressibleMultiPhaseTurbulenceModels.C +++ b/src/phaseSystemModels/multiphaseInter/compressibleMultiPhaseTurbulenceModels/compressibleMultiPhaseTurbulenceModels.C @@ -91,6 +91,14 @@ makeLaminarModel(generalizedNewtonian); #include "kEpsilon.H" makeRASModel(kEpsilon); +#include "realizableKE.H" +makeRASModel(realizableKE); + +#include "kOmega.H" +makeRASModel(kOmega); + +#include "kOmegaSST.H" +makeRASModel(kOmegaSST); // -------------------------------------------------------------------------- // // LES models diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/InterfaceCompositionModel/InterfaceCompositionModel.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/InterfaceCompositionModel/InterfaceCompositionModel.C index 4c15779cc33c73fc0754d0bd9a2b1f7b8d1fdc4b..6a91b7313633d2e389e44bddcbf22469e5b0983b 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/InterfaceCompositionModel/InterfaceCompositionModel.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/InterfaceCompositionModel/InterfaceCompositionModel.C @@ -78,21 +78,14 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::getSpecieMassFraction { const fvMesh& mesh = fromThermo_.p().mesh(); - auto tY = tmp<volScalarField>::New + auto tY = volScalarField::New ( - IOobject - ( - "tY", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "tY", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() ); - auto& Ys = tY.ref(); Ys = mixture.Y(speciesName); @@ -112,16 +105,10 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::getSpecieMassFraction { const fvMesh& mesh = fromThermo_.p().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "tY", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "tY", + IOobject::NO_REGISTER, mesh, scalar(1), dimless, @@ -140,16 +127,10 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::MwMixture { const fvMesh& mesh = fromThermo_.p().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "tM", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "tM", + IOobject::NO_REGISTER, mesh, dimensionedScalar ( @@ -230,18 +211,13 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::Dto const volScalarField& T = toThermo_.T(); - auto tmpD = tmp<volScalarField>::New + auto tmpD = volScalarField::New ( - IOobject - ( - IOobject::groupName("D", pair_.name()), - p.time().timeName(), - p.mesh() - ), + IOobject::groupName("D", pair_.name()), + IOobject::NO_REGISTER, p.mesh(), dimensionedScalar(dimArea/dimTime, Zero) ); - auto& D = tmpD.ref(); forAll(p, celli) @@ -276,18 +252,13 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::Dfrom const volScalarField& T(fromThermo_.T()); - auto tmpD = tmp<volScalarField>::New + auto tmpD = volScalarField::New ( - IOobject - ( - IOobject::groupName("D", pair_.name()), - p.time().timeName(), - p.mesh() - ), + IOobject::groupName("D", pair_.name()), + IOobject::NO_REGISTER, p.mesh(), dimensionedScalar(dimArea/dimTime, Zero) ); - auto& D = tmpD.ref(); forAll(p, celli) @@ -319,19 +290,14 @@ Foam::InterfaceCompositionModel<Thermo, OtherThermo>::L const volScalarField& p(fromThermo_.p()); - auto tmpL = tmp<volScalarField>::New + auto tmpL = volScalarField::New ( - IOobject - ( - IOobject::groupName("L", pair_.name()), - p.time().timeName(), - p.mesh() - ), + IOobject::groupName("L", pair_.name()), + IOobject::NO_REGISTER, p.mesh(), dimensionedScalar(dimEnergy/dimMass, Zero), fvPatchFieldBase::zeroGradientType() ); - auto& L = tmpL.ref(); // from Thermo (from) to Thermo (to) diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/MassTransferPhaseSystem/MassTransferPhaseSystem.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/MassTransferPhaseSystem/MassTransferPhaseSystem.C index 9bdd167d898a9b591b2747d7209d98f996edcacd..c1a2aca8cf7804fac9d51813b906841a4e50337b 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/MassTransferPhaseSystem/MassTransferPhaseSystem.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/MassTransferPhaseSystem/MassTransferPhaseSystem.C @@ -62,7 +62,8 @@ Foam::MassTransferPhaseSystem<BasePhaseSystem>::MassTransferPhaseSystem this->mesh().time().timeName(), this->mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), this->mesh(), dimensionedScalar(dimDensity/dimTime, Zero) @@ -85,16 +86,10 @@ Foam::MassTransferPhaseSystem<BasePhaseSystem>::calculateL const volScalarField& T ) const { - auto tL = tmp<volScalarField>::New + auto tL = volScalarField::New ( - IOobject - ( - "tL", - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "tL", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimEnergy/dimMass, Zero) ); @@ -137,14 +132,10 @@ Foam::MassTransferPhaseSystem<BasePhaseSystem>::dmdt const phasePairKey& key ) const { - auto tdmdt = tmp<volScalarField>::New + auto tdmdt = volScalarField::New ( - IOobject - ( - "dmdt", - this->mesh().time().timeName(), - this->mesh() - ), + "dmdt", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimDensity/dimTime, Zero) ); @@ -188,40 +179,28 @@ Foam::MassTransferPhaseSystem<BasePhaseSystem>::heatTransfer const phasePairKey keyki(phasek.name(), phasei.name(), true); // Net mass transfer from k to i phase - auto tdmdtNetki = tmp<volScalarField>::New + auto tdmdtNetki = volScalarField::New ( - IOobject - ( - "tdmdtYki", - this->mesh().time().timeName(), - this->mesh() - ), + "tdmdtYki", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimDensity/dimTime, Zero) ); auto& dmdtNetki = tdmdtNetki.ref(); - auto tSp = tmp<volScalarField>::New + auto tSp = volScalarField::New ( - IOobject - ( - "Sp", - this->mesh().time().timeName(), - this->mesh() - ), + "Sp", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimDensity/dimTime/dimTemperature, Zero) ); auto& Sp = tSp.ref(); - auto tSu = tmp<volScalarField>::New + auto tSu = volScalarField::New ( - IOobject - ( - "Su", - this->mesh().time().timeName(), - this->mesh() - ), + "Su", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimDensity/dimTime, Zero) ); @@ -311,27 +290,19 @@ Foam::MassTransferPhaseSystem<BasePhaseSystem>::volTransfer auto teqn = tmp<fvScalarMatrix>::New(p, dimVolume/dimTime); auto& eqn = teqn.ref(); - auto tSp = tmp<volScalarField>::New + auto tSp = volScalarField::New ( - IOobject - ( - "Sp", - this->mesh().time().timeName(), - this->mesh() - ), + "Sp", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimless/dimTime/dimPressure, Zero) ); auto& Sp = tSp.ref(); - auto tSu = tmp<volScalarField>::New + auto tSu = volScalarField::New ( - IOobject - ( - "Su", - this->mesh().time().timeName(), - this->mesh() - ), + "Su", + IOobject::NO_REGISTER, this->mesh(), dimensionedScalar(dimless/dimTime, Zero) ); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/derivedFvPatchFields/timeVaryingMassSorption/timeVaryingMassSorptionFvPatchScalarField.H b/src/phaseSystemModels/multiphaseInter/phasesSystem/derivedFvPatchFields/timeVaryingMassSorption/timeVaryingMassSorptionFvPatchScalarField.H index e054fd12dbfcee834afb3856e13743e3bb9bd504..de01803baf6f9673f8329fe8844df543bcbccbd0 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/derivedFvPatchFields/timeVaryingMassSorption/timeVaryingMassSorptionFvPatchScalarField.H +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/derivedFvPatchFields/timeVaryingMassSorption/timeVaryingMassSorptionFvPatchScalarField.H @@ -175,15 +175,6 @@ public: const timeVaryingMassSorptionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new timeVaryingMassSorptionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingMassSorptionFvPatchScalarField ( @@ -191,16 +182,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new timeVaryingMassSorptionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels/surfaceTensionModels/constantSurfaceTensionCoefficient/constantSurfaceTensionCoefficient.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels/surfaceTensionModels/constantSurfaceTensionCoefficient/constantSurfaceTensionCoefficient.C index bb4970e78fee42d8d6f174f2d9fcec06665c18fa..ec2730a096e0473d22222cb2427867de59246a3a 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels/surfaceTensionModels/constantSurfaceTensionCoefficient/constantSurfaceTensionCoefficient.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels/surfaceTensionModels/constantSurfaceTensionCoefficient/constantSurfaceTensionCoefficient.C @@ -70,20 +70,15 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseInter::surfaceTensionModels::constantSurfaceTensionCoefficient:: sigma() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return - tmp<volScalarField>::New - ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh - ), - mesh, - sigma_ - ); + const fvMesh& mesh = this->pair_.phase1().mesh(); + + return volScalarField::New + ( + "zero", + IOobject::NO_REGISTER, + mesh, + sigma_ + ); } diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/diffusionGasEvaporation/diffusionGasEvaporation.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/diffusionGasEvaporation/diffusionGasEvaporation.C index 6a7e10ec02d1e62fa33d3341d847dfdadfc7dd7c..af1f1fd26042cb219afff67a6cc65d391759bf7c 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/diffusionGasEvaporation/diffusionGasEvaporation.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/diffusionGasEvaporation/diffusionGasEvaporation.C @@ -144,32 +144,26 @@ Foam::meltingEvaporationModels::diffusionGasEvaporation<Thermo, OtherThermo> updateInterface(T); - auto tRhog = tmp<volScalarField>::New + auto tRhog = volScalarField::New ( - IOobject - ( - "tRhog", - mesh.time().timeName(), - mesh - ), + "tRhog", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimDensity, Zero) ); - volScalarField& rhog = tRhog.ref(); + auto& rhog = tRhog.ref(); + rhog = this->pair().to().rho(); - auto tDvg = tmp<volScalarField>::New + auto tDvg = volScalarField::New ( - IOobject - ( - "tDvg", - mesh.time().timeName(), - mesh - ), + "tDvg", + IOobject::NO_REGISTER, mesh, dimensionedScalar(sqr(dimLength)/dimTime, Zero) ); - volScalarField& Dvg = tDvg.ref(); + auto& Dvg = tDvg.ref(); + Dvg = this->Dto(speciesName); tmp<volScalarField> tpSat = saturationModelPtr_->pSat(T); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceHeatResistance/interfaceHeatResistance.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceHeatResistance/interfaceHeatResistance.C index 0dfd7e8b117b3af5044a07a8b66ace78ca4e79c5..a4934d3c3d8ab85b513c6cb60e9de44892e9cd64 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceHeatResistance/interfaceHeatResistance.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceHeatResistance/interfaceHeatResistance.C @@ -195,14 +195,10 @@ Foam::meltingEvaporationModels::interfaceHeatResistance<Thermo, OtherThermo> updateInterface(T); - auto tdeltaT = tmp<volScalarField>::New + auto tdeltaT = volScalarField::New ( - IOobject - ( - "tdeltaT", - mesh.time().timeName(), - mesh - ), + "tdeltaT", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimTemperature, Zero) ); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceOxideRate/interfaceOxideRate.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceOxideRate/interfaceOxideRate.C index 617940487b7ad847d8aca9a8d0b88c20fc325b43..e052f6f3b173e6dfce8e23fad80b5ac95eef2ff2 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceOxideRate/interfaceOxideRate.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/interfaceOxideRate/interfaceOxideRate.C @@ -152,18 +152,14 @@ Foam::meltingEvaporationModels::interfaceOxideRate<Thermo, OtherThermo>::Kexp const labelUList& fc = mesh.boundary()[patchi].faceCells(); tmp<scalarField> tsb = pp.source(); - auto tRhoto = tmp<volScalarField>::New + auto tRhoto = volScalarField::New ( - IOobject - ( - "tRhoto", - mesh.time().timeName(), - mesh - ), + "tRhoto", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimDensity, Zero) ); - volScalarField& rhoto = tRhoto.ref(); + auto& rhoto = tRhoto.ref(); rhoto = this->pair().to().rho(); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/kineticGasEvaporation/kineticGasEvaporation.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/kineticGasEvaporation/kineticGasEvaporation.C index 83f0d399d43aeffa0ddfe921957865dc242bbe1e..1b42747e0aa501d79db36d832c0db65797ca253f 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/kineticGasEvaporation/kineticGasEvaporation.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/massTransferModels/kineticGasEvaporation/kineticGasEvaporation.C @@ -167,37 +167,23 @@ Foam::meltingEvaporationModels::kineticGasEvaporation<Thermo, OtherThermo> updateInterface(T); - tmp<volScalarField> tRhov + auto tRhov = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tRhov", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar(dimDensity, Zero) - ) + "tRhov", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar(dimDensity, Zero) ); - volScalarField& rhov = tRhov.ref(); + auto& rhov = tRhov.ref(); - tmp<volScalarField> tdeltaT + auto tdeltaT = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tdeltaT", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar(dimTemperature, Zero) - ) + "tdeltaT", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar(dimTemperature, Zero) ); - volScalarField& deltaT = tdeltaT.ref(); + auto& deltaT = tdeltaT.ref(); dimensionedScalar T0("T0", dimTemperature, Zero); @@ -216,7 +202,7 @@ Foam::meltingEvaporationModels::kineticGasEvaporation<Thermo, OtherThermo> mDotc_ = htc_*deltaT*interfaceArea_; - return tmp<volScalarField>(new volScalarField(mDotc_)); + return tmp<volScalarField>::New(mDotc_); } @@ -241,10 +227,8 @@ Foam::meltingEvaporationModels::kineticGasEvaporation<Thermo, OtherThermo>::KSp return(coeff*pos(Tactivate_ - refValue)); } } - else - { - return tmp<volScalarField> (); - } + + return nullptr; } @@ -269,10 +253,8 @@ Foam::meltingEvaporationModels::kineticGasEvaporation<Thermo, OtherThermo>::KSu return(coeff*pos(Tactivate_ - refValue)); } } - else - { - return tmp<volScalarField> (); - } + + return nullptr; } diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.C index 69d2927d8762d7b497ac7edeedcb56acf2ffe9ac..2a7fb6670ebdab4463813c7411608d32bd69f5a6 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.C @@ -94,9 +94,10 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseInterSystem::generatePhi { auto iter = phaseModels.cbegin(); - auto tmpPhi = tmp<surfaceScalarField>::New + auto tmpPhi = surfaceScalarField::New ( "phi", + IOobject::NO_REGISTER, fvc::interpolate(iter()()) * iter()->phi() ); @@ -925,12 +926,10 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseInterSystem::nuEff() const Foam::tmp<Foam::volScalarField> Foam::multiphaseInterSystem::kappaEff() const { - const volScalarField kappaEff + return ( this->kappa() + this->Cp()*turb_->mut()/Prt_ ); - - return tmp<volScalarField>::New(kappaEff); } @@ -1075,14 +1074,10 @@ const Foam::fvMesh& Foam::multiphaseInterSystem::mesh() const Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseInterSystem::surfaceTensionForce() const { - auto tstf = tmp<surfaceScalarField>::New + auto tstf = surfaceScalarField::New ( - IOobject - ( - "surfaceTensionForce", - mesh_.time().timeName(), - mesh_ - ), + "surfaceTensionForce", + IOobject::NO_REGISTER, mesh_, dimensionedScalar({1, -2, -2, 0, 0, 0}, Zero) ); @@ -1125,14 +1120,10 @@ Foam::multiphaseInterSystem::surfaceTensionForce() const Foam::tmp<Foam::volVectorField> Foam::multiphaseInterSystem::U() const { - auto tstf = tmp<volVectorField>::New + auto tstf = volVectorField::New ( - IOobject - ( - "U", - mesh_.time().timeName(), - mesh_ - ), + "U", + IOobject::NO_REGISTER, mesh_, dimensionedVector(dimVelocity, Zero) ); @@ -1232,14 +1223,10 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseInterSystem::nearInterface Foam::tmp<Foam::volScalarField> Foam::multiphaseInterSystem::nearInterface() const { - auto tnearInt = tmp<volScalarField>::New + auto tnearInt = volScalarField::New ( - IOobject - ( - "nearInterface", - mesh_.time().timeName(), - mesh_ - ), + "nearInterface", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.H b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.H index fbcacaefbc293eafbdeae7a324a690234fd91940..b9dfffb4a45bc74dfbc332f13a87a8530a54fc27 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.H +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseInterSystem/multiphaseInterSystem.H @@ -367,7 +367,7 @@ public: ) const { NotImplemented; - return tmp<scalarField>::New(p); + return nullptr; } //- Return Cv of the mixture diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseSystem/multiphaseSystem.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseSystem/multiphaseSystem.C index 4cf91a30e38faa9f6492a36d4716718eadfc99ee..7e2538f96428c57bae77c602ccd09568c57e4a6c 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseSystem/multiphaseSystem.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/multiphaseSystem/multiphaseSystem.C @@ -84,36 +84,22 @@ Foam::multiphaseInter::multiphaseSystem::multiphaseSystem { const multiphaseInter::phaseModel& pm = iter()(); - Su_.insert + Su_.emplace ( pm.name(), - volScalarField::Internal - ( - IOobject - ( - "Su" + pm.name(), - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimless/dimTime, Zero) - ) + // volScalarField::Internal + mesh_.newIOobject("Su" + pm.name()), + mesh_, + dimensionedScalar(dimless/dimTime, Zero) ); - Sp_.insert + Sp_.emplace ( pm.name(), - volScalarField::Internal - ( - IOobject - ( - "Sp" + pm.name(), - mesh_.time().timeName(), - mesh_ - ), - mesh_, - dimensionedScalar(dimless/dimTime, Zero) - ) + // volScalarField::Internal + mesh_.newIOobject("Sp" + pm.name()), + mesh_, + dimensionedScalar(dimless/dimTime, Zero) ); } } @@ -138,12 +124,7 @@ void Foam::multiphaseInter::multiphaseSystem::solve() { surfaceScalarField rhoPhiSum ( - IOobject - ( - "rhoPhiSum", - mesh_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("rhoPhiSum"), mesh_, dimensionedScalar(rhoPhi_.dimensions(), Zero) ); @@ -323,12 +304,7 @@ void Foam::multiphaseInter::multiphaseSystem::solveAlphas() volScalarField sumAlpha ( - IOobject - ( - "sumAlpha", - mesh_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("sumAlpha"), mesh_, dimensionedScalar(dimless, Zero) ); @@ -386,12 +362,7 @@ void Foam::multiphaseInter::multiphaseSystem::solveAlphas() { volScalarField sumAlpha ( - IOobject - ( - "sumAlpha", - mesh_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("sumAlpha"), mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C index efe8c61a6a078a2c758c300bef5f95befccb7d24..773bc831b5b6e9fce3782e96e0555629865f4444 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C @@ -124,14 +124,10 @@ template<class BasePhaseModel> Foam::tmp<Foam::surfaceScalarField> Foam::MovingPhaseModel<BasePhaseModel>:: diffNo() const { - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( - IOobject - ( - IOobject::groupName("diffNo", multiphaseInter::phaseModel::name()), - U_.mesh().time().timeName(), - U_.mesh() - ), + IOobject::groupName("diffNo", multiphaseInter::phaseModel::name()), + IOobject::NO_REGISTER, U_.mesh(), dimensionedScalar(dimless, Zero) ); diff --git a/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/StaticPhaseModel/StaticPhaseModel.C b/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/StaticPhaseModel/StaticPhaseModel.C index b86c773cc70bbee40be252aa8319ade8581fccf8..74e80086dc186edc3d302006b813bb695cf49208 100644 --- a/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/StaticPhaseModel/StaticPhaseModel.C +++ b/src/phaseSystemModels/multiphaseInter/phasesSystem/phaseModel/StaticPhaseModel/StaticPhaseModel.C @@ -87,14 +87,10 @@ template<class BasePhaseModel> Foam::tmp<Foam::surfaceScalarField> Foam::StaticPhaseModel<BasePhaseModel>::phi() const { - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( - IOobject - ( - IOobject::groupName("phi", multiphaseInter::phaseModel::name()), - U_.mesh().time().timeName(), - U_.mesh() - ), + IOobject::groupName("phi", multiphaseInter::phaseModel::name()), + IOobject::NO_REGISTER, U_.mesh(), dimensionedScalar(dimensionSet(0, 3, -1, 0, 0), Zero) ); @@ -114,18 +110,14 @@ template<class BasePhaseModel> Foam::tmp<Foam::surfaceScalarField> Foam::StaticPhaseModel<BasePhaseModel>::alphaPhi() const { - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( - IOobject + IOobject::groupName ( - IOobject::groupName - ( - "alphaPhi", - multiphaseInter::phaseModel::name() - ), - U_.mesh().time().timeName(), - U_.mesh() + "alphaPhi", + multiphaseInter::phaseModel::name() ), + IOobject::NO_REGISTER, U_.mesh(), dimensionedScalar(dimensionSet(0, 3, -1, 0, 0), Zero) ); @@ -145,14 +137,10 @@ template<class BasePhaseModel> Foam::tmp<Foam::volVectorField> Foam::StaticPhaseModel<BasePhaseModel>::U() const { - return tmp<volVectorField>::New + return volVectorField::New ( - IOobject - ( - IOobject::groupName("U", multiphaseInter::phaseModel::name()), - U_.mesh().time().timeName(), - U_.mesh() - ), + IOobject::groupName("U", multiphaseInter::phaseModel::name()), + IOobject::NO_REGISTER, U_.mesh(), dimensionedVector(dimVelocity, Zero) ); diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C index 1ecb0a60cf2f26e58d89a152d64a9498eaaa9dd1..cafe46b30fe0166cc8dc39d067be7ecbbbceb79b 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014-2018 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -125,22 +125,12 @@ Foam::BlendedInterfacialModel<ModelType>::evaluate ); } - tmp<typeGeoField> x + auto x = typeGeoField::New ( - new typeGeoField - ( - IOobject - ( - ModelType::typeName + ":" + name, - phase1_.mesh().time().timeName(), - phase1_.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - phase1_.mesh(), - dimensioned<Type>(dims, Zero) - ) + IOobject::scopedName(ModelType::typeName, name), + IOobject::NO_REGISTER, + phase1_.mesh(), + dimensioned<Type>(dims, Zero) ); if (model_) diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C index 9057336a1591d7175f97364922c81ad49c41db76..d53f32bef250723a5297bf2e1ab604dea77f0c10 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C @@ -73,13 +73,15 @@ Foam::tmp<Foam::volScalarField> Foam::blendingMethods::noBlending::f1 const phaseModel& phase2 ) const { - const fvMesh& mesh(phase1.mesh()); + const fvMesh& mesh = phase1.mesh(); return volScalarField::New ( "f", + IOobject::NO_REGISTER, mesh, - dimensionedScalar("one", dimless, phase2.name() == continuousPhase_) + scalar(phase2.name() == continuousPhase_), // value 0/1 + dimless ); } @@ -90,13 +92,15 @@ Foam::tmp<Foam::volScalarField> Foam::blendingMethods::noBlending::f2 const phaseModel& phase2 ) const { - const fvMesh& mesh(phase1.mesh()); + const fvMesh& mesh = phase1.mesh(); return volScalarField::New ( "f", + IOobject::NO_REGISTER, mesh, - dimensionedScalar("one", dimless, phase1.name() == continuousPhase_) + scalar(phase1.name() == continuousPhase_), // value 0/1 + dimless ); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.C index 7623bd2d7029e49ae7ee475a15baa2f7a4fce043..53b1551bb2e5afab4b3111055a72158beb92059e 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/PhaseSystems/MomentumTransferPhaseSystem/MomentumTransferPhaseSystem.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2018 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -61,15 +61,14 @@ Foam::MomentumTransferPhaseSystem<BasePhaseSystem>::Kd { return dragModels_[key]->K(); } - else - { - return volScalarField::New - ( - dragModel::typeName + ":K", - this->mesh_, - dimensionedScalar(dragModel::dimK) - ); - } + + return volScalarField::New + ( + IOobject::scopedName(dragModel::typeName, "K"), + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(dragModel::dimK) + ); } @@ -84,15 +83,14 @@ Foam::MomentumTransferPhaseSystem<BasePhaseSystem>::Kdf { return dragModels_[key]->Kf(); } - else - { - return surfaceScalarField::New - ( - dragModel::typeName + ":K", - this->mesh_, - dimensionedScalar(dragModel::dimK) - ); - } + + return surfaceScalarField::New + ( + IOobject::scopedName(dragModel::typeName, "K"), + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(dragModel::dimK) + ); } @@ -107,15 +105,14 @@ Foam::MomentumTransferPhaseSystem<BasePhaseSystem>::Vm { return virtualMassModels_[key]->K(); } - else - { - return volScalarField::New - ( - virtualMassModel::typeName + ":K", - this->mesh_, - dimensionedScalar(virtualMassModel::dimK) - ); - } + + return volScalarField::New + ( + IOobject::scopedName(virtualMassModel::typeName, "K"), + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(virtualMassModel::dimK) + ); } @@ -355,7 +352,8 @@ Foam::MomentumTransferPhaseSystem<BasePhaseSystem>::momentumTransfer() fvVectorMatrix& eqn = *eqns[phase.name()]; const volVectorField& U = eqn.psi(); - const surfaceScalarField& phi = phase.phi(); + const tmp<surfaceScalarField> tphi(phase.phi()); + const surfaceScalarField& phi = tphi(); eqn -= Vm @@ -408,7 +406,8 @@ Foam::MomentumTransferPhaseSystem<BasePhaseSystem>::momentumTransferf() if (!phase.stationary()) { - const volVectorField& U = phase.U(); + const tmp<volVectorField> tU(phase.U()); + const volVectorField& U = tU(); UgradUs.set ( diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H index a28a4e5f54afcdac1f68c52ddefee6d79da41d92..4c3ca140aaf3ce9f057bb357c1e7bf9c94770a87 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphaContactAngle/alphaContactAngleFvPatchScalarField.H @@ -204,15 +204,6 @@ 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 ( @@ -220,16 +211,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatFixedDmdtWallBoilingWallFunction/alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatFixedDmdtWallBoilingWallFunction/alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField.H index dbf31cc0e80378726259cd2e97725d0c06005228..7b89c0446f2f9d1ec26de0ae12c910572241b537 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatFixedDmdtWallBoilingWallFunction/alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatFixedDmdtWallBoilingWallFunction/alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField.H @@ -151,18 +151,6 @@ public: const alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField ( @@ -170,20 +158,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatPhaseChangeJayatillekeWallFunction/alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatPhaseChangeJayatillekeWallFunction/alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField.H index 03bb661c89ac009d2e8f02f3fdad160ab7b1a38c..88d9a5418f091711aa5c2577818213e8509b7238 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatPhaseChangeJayatillekeWallFunction/alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatPhaseChangeJayatillekeWallFunction/alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField.H @@ -182,18 +182,6 @@ public: const alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField ( @@ -201,20 +189,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C index c405a54f1a9982ecfca78cf46ec833df6c7538ff..7adb2c0d55af12442e6d5f018bfcbeb484279529 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.C @@ -116,7 +116,7 @@ alphatWallBoilingWallFunctionFvPatchScalarField alphatPhaseChangeJayatillekeWallFunctionFvPatchScalarField(p, iF, dict), otherPhaseName_(dict.get<word>("otherPhase")), phaseType_(phaseTypeNames_.get("phaseType", dict)), - relax_(Function1<scalar>::New("relax", dict)), + relax_(Function1<scalar>::New("relax", dict, &db())), AbyV_(p.size(), 0), alphatConv_(p.size(), 0), dDep_(p.size(), 1e-5), diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.H index e00efd363448548e768e04e5f70fcc752ffdd801..3040f6566c917fd77a1258ef5540690d70e80c01 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/alphatWallBoilingWallFunction/alphatWallBoilingWallFunctionFvPatchScalarField.H @@ -460,15 +460,6 @@ public: const alphatWallBoilingWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatWallBoilingWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphatWallBoilingWallFunctionFvPatchScalarField ( @@ -476,16 +467,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatWallBoilingWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/copiedFixedValue/copiedFixedValueFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/copiedFixedValue/copiedFixedValueFvPatchScalarField.H index 6c07141c7cb37286be24dbe8ad7d09a9c7de5f8d..97c4c47b84a6a81dacfa1e154f4118a2269f5948 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/copiedFixedValue/copiedFixedValueFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/copiedFixedValue/copiedFixedValueFvPatchScalarField.H @@ -127,15 +127,6 @@ public: const copiedFixedValueFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new copiedFixedValueFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference copiedFixedValueFvPatchScalarField ( @@ -143,16 +134,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new copiedFixedValueFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/fixedMultiPhaseHeatFlux/fixedMultiPhaseHeatFluxFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/fixedMultiPhaseHeatFlux/fixedMultiPhaseHeatFluxFvPatchScalarField.H index 7ec3dd8f9b6acef880a8e23d66bea7a4b7397951..28f6b789c566ab8a88c841ecb23dfe08653be6e0 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/fixedMultiPhaseHeatFlux/fixedMultiPhaseHeatFluxFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/fixedMultiPhaseHeatFlux/fixedMultiPhaseHeatFluxFvPatchScalarField.H @@ -145,15 +145,6 @@ public: const fixedMultiPhaseHeatFluxFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedMultiPhaseHeatFluxFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedMultiPhaseHeatFluxFvPatchScalarField ( @@ -161,16 +152,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedMultiPhaseHeatFluxFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/nucleateFluxModels/nucleateFluxModel/nucleateFluxModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/nucleateFluxModels/nucleateFluxModel/nucleateFluxModel.C index ecffddb653863d6fe8a96158986be40cb5fca549..3bc950ab26a5551d9b32d38ae26078fa5e77f1a2 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/nucleateFluxModels/nucleateFluxModel/nucleateFluxModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/derivedFvPatchFields/wallBoilingSubModels/nucleateFluxModels/nucleateFluxModel/nucleateFluxModel.C @@ -50,9 +50,9 @@ Foam::wallBoilingModels::nucleateFluxModel::New Info<< "Selecting nucleateFluxModel: " << modelType << endl; - auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType); + auto* ctorPtr = dictionaryConstructorTable(modelType); - if (!cstrIter.good()) + if (!ctorPtr) { FatalIOErrorInLookup ( @@ -63,7 +63,7 @@ Foam::wallBoilingModels::nucleateFluxModel::New ) << abort(FatalIOError); } - return cstrIter()(dict); + return ctorPtr(dict); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C index 8ec8a8be023cbb26768f7a151bc689a4faa2ae19..45a96bc20dd26f8ea1892b41b7c205f4d0d366b2 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/diameterModels/constantDiameter/constantDiameter.C @@ -70,19 +70,12 @@ Foam::diameterModels::constant::~constant() Foam::tmp<Foam::volScalarField> Foam::diameterModels::constant::d() const { - return tmp<Foam::volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "d", - phase_.time().timeName(), - phase_.mesh() - ), - phase_.mesh(), - d_ - ) + "d", + IOobject::NO_REGISTER, + phase_.mesh(), + d_ ); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C index 9b38688cdc9649b4f72c18d84f7c4b19949b8217..78c69f65b5d39c1b2af46993bb53b544dbd779d0 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014-2018 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -70,11 +71,12 @@ Foam::aspectRatioModels::constantAspectRatio::~constantAspectRatio() Foam::tmp<Foam::volScalarField> Foam::aspectRatioModels::constantAspectRatio::E() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); return volScalarField::New ( - aspectRatioModel::typeName + ":E", + IOobject::scopedName(aspectRatioModel::typeName, "E"), + IOobject::NO_REGISTER, mesh, E0_ ); diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/dragModels/segregated/segregated.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/dragModels/segregated/segregated.C index e3b8208670ac5d7336a83b9e148a76086c6f1e1e..467f1817aedd8a6ae7ead76a4cb2139490e3fda0 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/dragModels/segregated/segregated.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/interfacialModels/dragModels/segregated/segregated.C @@ -85,8 +85,11 @@ Foam::tmp<Foam::volScalarField> Foam::dragModels::segregated::K() const const volScalarField& alpha1(pair_.phase1()); const volScalarField& alpha2(pair_.phase2()); - const volScalarField& rho1(pair_.phase1().rho()); - const volScalarField& rho2(pair_.phase2().rho()); + const tmp<volScalarField> trho1(pair_.phase1().rho()); + const tmp<volScalarField> trho2(pair_.phase2().rho()); + + const volScalarField& rho1 = trho1(); + const volScalarField& rho2 = trho2(); tmp<volScalarField> tnu1(pair_.phase1().nu()); tmp<volScalarField> tnu2(pair_.phase2().nu()); diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C index e232ec1e39738a4db475bcf35cbeabac45ebfccf..19e4979a3e935f46f62d31df09bcbf4b33698a4a 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/multiphaseSystem/multiphaseSystem.C @@ -557,14 +557,12 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseSystem::surfaceTension const phaseModel& phase1 ) const { - tmp<surfaceScalarField> tSurfaceTension + auto tSurfaceTension = surfaceScalarField::New ( - surfaceScalarField::New - ( - "surfaceTension", - mesh_, - dimensionedScalar(dimensionSet(1, -2, -2, 0, 0), Zero) - ) + "surfaceTension", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimensionSet(1, -2, -2, 0, 0), Zero) ); tSurfaceTension.ref().setOriented(); @@ -600,14 +598,12 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseSystem::surfaceTension Foam::tmp<Foam::volScalarField> Foam::multiphaseSystem::nearInterface() const { - tmp<volScalarField> tnearInt + auto tnearInt = volScalarField::New ( - volScalarField::New - ( - "nearInterface", - mesh_, - dimensionedScalar(dimless, Zero) - ) + "nearInterface", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless, Zero) ); forAll(phases(), phasei) diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/AnisothermalPhaseModel/AnisothermalPhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/AnisothermalPhaseModel/AnisothermalPhaseModel.C index 54b2f2fbcd7076e337f1bbc6b750cc833ce99321..56e2b855dba73f7ed1aeb263b7f8b9bb7759f921 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/AnisothermalPhaseModel/AnisothermalPhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/AnisothermalPhaseModel/AnisothermalPhaseModel.C @@ -93,7 +93,8 @@ Foam::tmp<Foam::fvScalarMatrix> Foam::AnisothermalPhaseModel<BasePhaseModel>::heEqn() { const volScalarField& alpha = *this; - const volScalarField& rho = this->rho(); + const tmp<volScalarField> trho(this->rho()); + const volScalarField& rho(trho()); const tmp<volVectorField> tU(this->U()); const volVectorField& U(tU()); diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/InertPhaseModel/InertPhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/InertPhaseModel/InertPhaseModel.C index 275f2faa9e0bc16a8d53fffacfff369d1302049f..5497620c46deb9137150a566362b5b36a42af202 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/InertPhaseModel/InertPhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/InertPhaseModel/InertPhaseModel.C @@ -58,10 +58,7 @@ Foam::InertPhaseModel<BasePhaseModel>::R volScalarField& Yi ) const { - return tmp<fvScalarMatrix> - ( - new fvScalarMatrix(Yi, dimMass/dimTime) - ); + return tmp<fvScalarMatrix>::New(Yi, dimMass/dimTime); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/IsothermalPhaseModel/IsothermalPhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/IsothermalPhaseModel/IsothermalPhaseModel.C index 4ffe5c6f659fbb6de5282d4fed33a28b9085c518..8a0cbd79568cf55b74cfe7f1d0f039c2fcb440e0 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/IsothermalPhaseModel/IsothermalPhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/IsothermalPhaseModel/IsothermalPhaseModel.C @@ -50,15 +50,13 @@ void Foam::IsothermalPhaseModel<BasePhaseModel>::correctThermo() BasePhaseModel::correctThermo(); // Correct the thermo, but make sure that the temperature remains the same - tmp<volScalarField> TCopy + auto TCopy = volScalarField::New ( - volScalarField::New - ( - this->thermo().T().name() + ":Copy", - this->thermo().T() - ) + IOobject::scopedName(this->thermo().T().name(), "Copy"), + IOobject::NO_REGISTER, + this->thermo().T() ); - this->thermo_->he() = this->thermo().he(this->thermo().p(), TCopy); + this->thermo_->he() = this->thermo().he(this->thermo().p(), TCopy()); this->thermo_->correct(); this->thermo_->T() = TCopy; } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C index 4e75adec974092615c6d1146393e096701262d6b..8d616263308316fa2990e0012f7857c8c70c3682 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MovingPhaseModel/MovingPhaseModel.C @@ -48,41 +48,29 @@ template<class BasePhaseModel> Foam::tmp<Foam::surfaceScalarField> Foam::MovingPhaseModel<BasePhaseModel>::phi(const volVectorField& U) const { - word phiName(IOobject::groupName("phi", this->name())); - - IOobject phiHeader + IOobject io ( - phiName, + IOobject::groupName("phi", this->name()), U.mesh().time().timeName(), U.mesh(), - IOobject::NO_READ + IOobject::MUST_READ, + IOobject::AUTO_WRITE, + IOobject::REGISTER ); - if (phiHeader.typeHeaderOk<surfaceScalarField>(true)) + if (io.typeHeaderOk<surfaceScalarField>(true)) { - Info<< "Reading face flux field " << phiName << endl; + Info<< "Reading face flux field " << io.name() << endl; - return tmp<surfaceScalarField> - ( - new surfaceScalarField - ( - IOobject - ( - phiName, - U.mesh().time().timeName(), - U.mesh(), - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - U.mesh() - ) - ); + return tmp<surfaceScalarField>::New(io, U.mesh()); } else { - Info<< "Calculating face flux field " << phiName << endl; + Info<< "Calculating face flux field " << io.name() << endl; - wordList phiTypes + io.readOpt(IOobject::NO_READ); + + wordList patchTypes ( U.boundaryField().size(), fvsPatchFieldBase::calculatedType() @@ -97,25 +85,15 @@ Foam::MovingPhaseModel<BasePhaseModel>::phi(const volVectorField& U) const || isA<partialSlipFvPatchVectorField>(U.boundaryField()[i]) ) { - phiTypes[i] = fixedValueFvPatchScalarField::typeName; + patchTypes[i] = fixedValueFvPatchScalarField::typeName; } } - return tmp<surfaceScalarField> + return tmp<surfaceScalarField>::New ( - new surfaceScalarField - ( - IOobject - ( - phiName, - U.mesh().time().timeName(), - U.mesh(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - fvc::flux(U), - phiTypes - ) + io, + fvc::flux(U), + patchTypes ); } } @@ -140,7 +118,8 @@ Foam::MovingPhaseModel<BasePhaseModel>::MovingPhaseModel fluid.mesh().time().timeName(), fluid.mesh(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), fluid.mesh() ), @@ -283,7 +262,8 @@ Foam::tmp<Foam::fvVectorMatrix> Foam::MovingPhaseModel<BasePhaseModel>::UEqn() { const volScalarField& alpha = *this; - const volScalarField& rho = this->thermo().rho(); + const tmp<volScalarField> trho = this->thermo().rho(); + const volScalarField& rho = trho(); return ( @@ -303,14 +283,13 @@ Foam::MovingPhaseModel<BasePhaseModel>::UfEqn() // As the "normal" U-eqn but without the ddt terms const volScalarField& alpha = *this; - const volScalarField& rho = this->thermo().rho(); return ( fvm::div(alphaRhoPhi_, U_) - fvm::Sp(fvc::div(alphaRhoPhi_), U_) + fvm::SuSp(- this->continuityErrorSources(), U_) - + this->fluid().MRF().DDt(alpha*rho, U_) + + this->fluid().MRF().DDt(alpha*this->thermo().rho(), U_) + turbulence_->divDevRhoReff(U_) ); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C index 9482f0244cbf1bb86173005d4cf0e0f8c1c4ee6e..40c5464098bd86d0a10948ac1d120d693f90edc6 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C @@ -152,7 +152,8 @@ Foam::MultiComponentPhaseModel<BasePhaseModel>::YiEqn(volScalarField& Yi) { const volScalarField& alpha = *this; const surfaceScalarField alphaRhoPhi(this->alphaRhoPhi()); - const volScalarField& rho = this->thermo().rho(); + const tmp<volScalarField> trho(this->thermo().rho()); + const volScalarField& rho = trho(); return ( diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/PurePhaseModel/PurePhaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/PurePhaseModel/PurePhaseModel.C index 6279a080a45892767a73dab793511000bc9c83e7..de620d523a146cc16b1e2ac8be8d391ed2c39e36 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/PurePhaseModel/PurePhaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/PurePhaseModel/PurePhaseModel.C @@ -88,7 +88,7 @@ Foam::PurePhaseModel<BasePhaseModel>::Y(const word& name) const << "Cannot get a species fraction by name from a pure phase" << exit(FatalError); - return NullObjectRef<volScalarField>(); + return volScalarField::null(); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/phaseModel/phaseModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/phaseModel/phaseModel.C index 9cb69181e48962d1eed6e8dab179ffb9b15e6a50..d697c19a3890e47ab677ddc8446124917b12b839 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/phaseModel/phaseModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseModel/phaseModel/phaseModel.C @@ -207,7 +207,8 @@ void Foam::phaseModel::correctInflowOutflow(surfaceScalarField& alphaPhi) const { surfaceScalarField::Boundary& alphaPhiBf = alphaPhi.boundaryFieldRef(); const volScalarField::Boundary& alphaBf = boundaryField(); - const surfaceScalarField::Boundary& phiBf = phi()().boundaryField(); + const tmp<surfaceScalarField> tphi(phi()); + const auto& phiBf = tphi().boundaryField(); forAll(alphaPhiBf, patchi) { diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseSystem/phaseSystem.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseSystem/phaseSystem.C index bee5a74ba85bca8e2a4878fa62a24bf4616f5f4e..91335c81878a7d2401569b6c74aa1c2eeef4ab0e 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseSystem/phaseSystem.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/phaseSystem/phaseSystem.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2015-2018 OpenFOAM Foundation - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -53,13 +53,11 @@ Foam::tmp<Foam::surfaceScalarField> Foam::phaseSystem::calcPhi const phaseModelList& phaseModels ) const { - tmp<surfaceScalarField> tphi + auto tphi = surfaceScalarField::New ( - surfaceScalarField::New - ( - "phi", - fvc::interpolate(phaseModels[0])*phaseModels[0].phi() - ) + "phi", + IOobject::NO_REGISTER, + fvc::interpolate(phaseModels[0])*phaseModels[0].phi() ); for (label phasei=1; phasei<phaseModels.size(); ++phasei) @@ -136,8 +134,9 @@ Foam::phaseSystem::phaseSystem "phaseProperties", mesh.time().constant(), mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), @@ -156,7 +155,7 @@ Foam::phaseSystem::phaseSystem mesh ), mesh, - dimensionedScalar("zero", dimPressure/dimTime, 0) + dimensionedScalar(dimPressure/dimTime, Zero) ), MRF_(mesh_) @@ -303,15 +302,14 @@ Foam::phaseSystem::E(const phasePairKey& key) const { return aspectRatioModels_[key]->E(); } - else - { - return volScalarField::New - ( - aspectRatioModel::typeName + ":E", - this->mesh_, - dimensionedScalar("one", dimless, 1) - ); - } + + return volScalarField::New + ( + IOobject::scopedName(aspectRatioModel::typeName, "E"), + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar("one", dimless, 1) + ); } @@ -322,19 +320,21 @@ Foam::phaseSystem::sigma(const phasePairKey& key) const { return surfaceTensionModels_[key]->sigma(); } - else - { - return volScalarField::New + + return volScalarField::New + ( + IOobject::scopedName ( - reactingMultiphaseEuler::surfaceTensionModel::typeName + ":sigma", - this->mesh_, - dimensionedScalar - ( - reactingMultiphaseEuler::surfaceTensionModel::dimSigma, - 0 - ) - ); - } + reactingMultiphaseEuler::surfaceTensionModel::typeName, "sigma" + ), + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar + ( + reactingMultiphaseEuler::surfaceTensionModel::dimSigma, + Zero + ) + ); } @@ -346,8 +346,9 @@ Foam::tmp<Foam::volScalarField> Foam::phaseSystem::dmdt return volScalarField::New ( IOobject::groupName("dmdt", phasePairs_[key]->name()), + IOobject::NO_REGISTER, this->mesh_, - dimensionedScalar("zero", dimDensity/dimTime, 0) + dimensionedScalar(dimDensity/dimTime, Zero) ); } diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C index a38aaa2824bb864e5826ae35a0e4afabd7e62e33..445162fcb6282037393e78989e505868f741387d 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C @@ -154,7 +154,8 @@ Foam::diameterModels::nucleationModels::wallBoiling::addToNucleationRate { const sizeGroup& fi = popBal_.sizeGroups()[i]; const phaseModel& phase = fi.phase(); - const volScalarField& rho = phase.rho(); + const tmp<volScalarField> trho(phase.rho()); + const volScalarField& rho = trho(); const tmp<volScalarField> talphat(turbulence_.alphat()); const volScalarField::Boundary& alphatBf = talphat().boundaryField(); diff --git a/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/populationBalanceModel/populationBalanceModel.C b/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/populationBalanceModel/populationBalanceModel.C index db4ccbfac4d3b9053de7f2e24421b72fe1c5ad2b..9aac84604c34a378c7546ed86a767e78dc2b6721 100644 --- a/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/populationBalanceModel/populationBalanceModel.C +++ b/src/phaseSystemModels/reactingEuler/multiphaseSystem/populationBalanceModel/populationBalanceModel/populationBalanceModel.C @@ -148,31 +148,23 @@ void Foam::diameterModels::populationBalanceModel::registerSizeGroups Su_.append ( - new volScalarField + volScalarField::New ( - IOobject - ( - "Su", - fluid_.time().timeName(), - mesh_ - ), + "Su", + IOobject::NO_REGISTER, mesh_, - dimensionedScalar("zero", inv(dimTime), 0) + dimensionedScalar(inv(dimTime), Zero) ) ); SuSp_.append ( - new volScalarField + volScalarField::New ( - IOobject - ( - "SuSp", - fluid_.time().timeName(), - mesh_ - ), + "SuSp", + IOobject::NO_REGISTER, mesh_, - dimensionedScalar("zero", inv(dimTime), 0) + dimensionedScalar(inv(dimTime), Zero) ) ); } @@ -957,14 +949,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "coalescenceRate", - mesh_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("coalescenceRate"), mesh_, - dimensionedScalar("zero", dimVolume/dimTime, Zero) + dimensionedScalar(dimVolume/dimTime, Zero) ) ); } @@ -975,14 +962,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "breakupRate", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("breakupRate"), mesh_, - dimensionedScalar("zero", inv(dimTime), Zero) + dimensionedScalar(inv(dimTime), Zero) ) ); } @@ -993,19 +975,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "binaryBreakupRate", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("binaryBreakupRate"), mesh_, - dimensionedScalar - ( - "binaryBreakupRate", - inv(dimVolume*dimTime), - Zero - ) + dimensionedScalar(inv(dimVolume*dimTime), Zero) ) ); } @@ -1016,14 +988,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "driftRate", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("driftRate"), mesh_, - dimensionedScalar("zero", dimVolume/dimTime, Zero) + dimensionedScalar(dimVolume/dimTime, Zero) ) ); @@ -1031,14 +998,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "r", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("rx"), mesh_, - dimensionedScalar("zero", dimless, Zero) + dimensionedScalar(dimless, Zero) ) ); @@ -1046,14 +1008,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "r", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("rdx"), mesh_, - dimensionedScalar("zero", dimless, Zero) + dimensionedScalar(dimless, Zero) ) ); } @@ -1064,19 +1021,9 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel ( new volScalarField ( - IOobject - ( - "nucleationRate", - fluid_.time().timeName(), - mesh_ - ), + mesh_.newIOobject("nucleationRate"), mesh_, - dimensionedScalar - ( - "nucleationRate", - inv(dimTime*dimVolume), - Zero - ) + dimensionedScalar(inv(dimTime*dimVolume), Zero) ) ); } @@ -1093,10 +1040,11 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel fluid_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, - dimensionedScalar("zero", dimless, Zero) + dimensionedScalar(dimless, Zero) ) ); @@ -1110,10 +1058,11 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel fluid_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, - dimensionedScalar("zero", dimLength, Zero) + dimensionedScalar(dimLength, Zero) ) ); @@ -1127,7 +1076,8 @@ Foam::diameterModels::populationBalanceModel::populationBalanceModel fluid_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedVector(dimVelocity, Zero) @@ -1273,7 +1223,8 @@ void Foam::diameterModels::populationBalanceModel::solve() const phaseModel& phase = fi.phase(); const volScalarField& alpha = phase; const dimensionedScalar& residualAlpha = phase.residualAlpha(); - const volScalarField& rho = phase.thermo().rho(); + const tmp<volScalarField> trho(phase.thermo().rho()); + const volScalarField& rho = trho(); fvScalarMatrix sizeGroupEqn ( diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H index 77fb64736f65cf62f8cf76bf687f7be7b52ea61b..49f5bde9e438ecc2b40d6bd7a84ab95984e53628 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H @@ -112,15 +112,6 @@ public: const JohnsonJacksonParticleSlipFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference JohnsonJacksonParticleSlipFvPatchVectorField ( @@ -128,16 +119,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H index cb4690bb41bf7485ef091c67b9e4d6223c649d84..6396cdf9b68478d314f505061d36a426286da06d 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H @@ -115,15 +115,6 @@ public: const JohnsonJacksonParticleThetaFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference JohnsonJacksonParticleThetaFvPatchScalarField ( @@ -131,16 +122,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C index 4bde1a14c053a7461c5267183fb96eaa7b1b41a7..cf5b7670bd2479aa6febef1f2ebfb8b84f4d2fb1 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C @@ -156,7 +156,8 @@ JohnsonJacksonSchaeffer::nu } const fvPatchList& patches = phase.mesh().boundary(); - const volVectorField& U = phase.U(); + const tmp<volVectorField> tU(phase.U()); + const volVectorField& U = tU(); volScalarField::Boundary& nufBf = nuf.boundaryFieldRef(); diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C index b0aac1aa02cf4bd8030543bd19b39d55a0d4abab..3f8066a18cb50a88f4c9f5d05688608b90e1233e 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C @@ -120,25 +120,14 @@ Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::nu { const volScalarField& alpha = phase; - tmp<volScalarField> tnu + auto tnu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Schaeffer:nu", - phase.mesh().time().timeName(), - phase.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - phase.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) - ) + IOobject::scopedName("Schaeffer", "nu"), + IOobject::NO_REGISTER, + phase.mesh(), + dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) ); - - volScalarField& nuf = tnu.ref(); + auto& nuf = tnu.ref(); forAll(D, celli) { @@ -154,7 +143,8 @@ Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::nu } const fvPatchList& patches = phase.mesh().boundary(); - const volVectorField& U = phase.U(); + const tmp<volVectorField> tU(phase.U()); + const volVectorField& U = tU(); volScalarField::Boundary& nufBf = nuf.boundaryFieldRef(); diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C index 9ac98b1c21c32abd203f654eaab225d26589a5ae..b8bc3af38f265169015d18a772aadb1bd62537ee 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C @@ -113,7 +113,8 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel U.time().timeName(), U.mesh(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), U.mesh() ), @@ -168,7 +169,8 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel U.time().timeName(), U.mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), U.mesh(), dimensionedScalar(dimViscosity, Zero) @@ -244,18 +246,11 @@ Foam::RASModels::kineticTheoryModel::omega() const Foam::tmp<Foam::volSymmTensorField> Foam::RASModels::kineticTheoryModel::R() const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + IOobject::groupName("R", U_.group()), + IOobject::NO_REGISTER, ( - IOobject - ( - IOobject::groupName("R", U_.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - (nut_)*devTwoSymm(fvc::grad(U_)) - (lambda_*fvc::div(phi_))*symmTensor::I ) @@ -266,7 +261,8 @@ Foam::RASModels::kineticTheoryModel::R() const Foam::tmp<Foam::volScalarField> Foam::RASModels::kineticTheoryModel::pPrime() const { - const volScalarField& rho = phase_.rho(); + const tmp<volScalarField> trho(phase_.rho()); + const volScalarField& rho = trho(); tmp<volScalarField> tpPrime ( @@ -322,20 +318,13 @@ Foam::RASModels::kineticTheoryModel::devRhoReff const volVectorField& U ) const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + IOobject::groupName("devRhoReff", U.group()), + IOobject::NO_REGISTER, ( - IOobject - ( - IOobject::groupName("devRhoReff", U.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - (rho_*nut_) - *devTwoSymm(fvc::grad(U)) + * devTwoSymm(fvc::grad(U)) - ((rho_*lambda_)*fvc::div(phi_))*symmTensor::I ) ); @@ -365,11 +354,13 @@ void Foam::RASModels::kineticTheoryModel::correct() { // Local references volScalarField alpha(max(alpha_, scalar(0))); - const volScalarField& rho = phase_.rho(); + const tmp<volScalarField> trho(phase_.rho()); + const volScalarField& rho = trho(); const surfaceScalarField& alphaRhoPhi = alphaRhoPhi_; const volVectorField& U = U_; - const volVectorField& Uc_ = + const tmp<volVectorField> tUc = refCast<const twoPhaseSystem>(phase_.fluid()).otherPhase(phase_).U(); + const volVectorField& Uc = tUc(); const scalar sqrtPi = sqrt(constant::mathematical::pi); dimensionedScalar ThetaSmall("ThetaSmall", Theta_.dimensions(), 1e-6); @@ -421,7 +412,7 @@ void Foam::RASModels::kineticTheoryModel::correct() volScalarField J2 ( "J2", - 0.25*sqr(beta)*da*magSqr(U - Uc_) + 0.25*sqr(beta)*da*magSqr(U - Uc) /( max(alpha, residualAlpha_)*rho *sqrtPi*(ThetaSqrt + ThetaSmallSqrt) diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C index bf6fbd3316ddb2a91058505c34430e3ada383257..0f04837778f1d6d787a4d21279acce9adf37b139 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C +++ b/src/phaseSystemModels/reactingEuler/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C @@ -123,21 +123,12 @@ Foam::RASModels::phasePressureModel::omega() const Foam::tmp<Foam::volSymmTensorField> Foam::RASModels::phasePressureModel::R() const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField - ( - IOobject - ( - IOobject::groupName("R", U_.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensioned<symmTensor>(dimensionSet(0, 2, -2, 0, 0), Zero) - ) + IOobject::groupName("R", U_.group()), + IOobject::NO_REGISTER, + mesh_, + dimensioned<symmTensor>(dimensionSet(0, 2, -2, 0, 0), Zero) ); } @@ -155,8 +146,7 @@ Foam::RASModels::phasePressureModel::pPrime() const ) ); - volScalarField::Boundary& bpPrime = - tpPrime.ref().boundaryFieldRef(); + auto& bpPrime = tpPrime.ref().boundaryFieldRef(); forAll(bpPrime, patchi) { @@ -183,8 +173,7 @@ Foam::RASModels::phasePressureModel::pPrimef() const ) ); - surfaceScalarField::Boundary& bpPrime = - tpPrime.ref().boundaryFieldRef(); + auto& bpPrime = tpPrime.ref().boundaryFieldRef(); forAll(bpPrime, patchi) { @@ -211,25 +200,15 @@ Foam::RASModels::phasePressureModel::devRhoReff const volVectorField& U ) const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + IOobject::groupName("devRhoReff", U.group()), + IOobject::NO_REGISTER, + mesh_, + dimensioned<symmTensor> ( - IOobject - ( - IOobject::groupName("devRhoReff", U.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensioned<symmTensor> - ( - "R", - rho_.dimensions()*dimensionSet(0, 2, -2, 0, 0), - Zero - ) + rho_.dimensions()*dimensionSet(0, 2, -2, 0, 0), + Zero ) ); } @@ -241,13 +220,10 @@ Foam::RASModels::phasePressureModel::divDevRhoReff volVectorField& U ) const { - return tmp<fvVectorMatrix> + return tmp<fvVectorMatrix>::New ( - new fvVectorMatrix - ( - U, - rho_.dimensions()*dimensionSet(0, 4, -2, 0, 0) - ) + U, + rho_.dimensions()*dimensionSet(0, 4, -2, 0, 0) ); } diff --git a/src/phaseSystemModels/reactingEuler/twoPhaseSystem/twoPhaseSystem.C b/src/phaseSystemModels/reactingEuler/twoPhaseSystem/twoPhaseSystem.C index 51f8dd9898ccc067a4d5e06f05dd6444ad727e12..9c10f71961b1b40d26cbabb46fbff03f0d33b650 100644 --- a/src/phaseSystemModels/reactingEuler/twoPhaseSystem/twoPhaseSystem.C +++ b/src/phaseSystemModels/reactingEuler/twoPhaseSystem/twoPhaseSystem.C @@ -121,8 +121,6 @@ Foam::twoPhaseSystem::Vm() const void Foam::twoPhaseSystem::solve() { - const Time& runTime = mesh_.time(); - volScalarField& alpha1 = phase1_; volScalarField& alpha2 = phase2_; @@ -136,8 +134,10 @@ void Foam::twoPhaseSystem::solve() word alphaScheme("div(phi," + alpha1.name() + ')'); word alpharScheme("div(phir," + alpha1.name() + ')'); - const surfaceScalarField& phi1 = phase1_.phi(); - const surfaceScalarField& phi2 = phase2_.phi(); + const tmp<surfaceScalarField> tphi1(phase1_.phi()); + const surfaceScalarField& phi1 = tphi1(); + const tmp<surfaceScalarField> tphi2(phase2_.phi()); + const surfaceScalarField& phi2 = tphi2(); // Construct the dilatation rate source term tmp<volScalarField::Internal> tdgdt; @@ -193,24 +193,14 @@ void Foam::twoPhaseSystem::solve() { volScalarField::Internal Sp ( - IOobject - ( - "Sp", - runTime.timeName(), - mesh_ - ), + mesh_.newIOobject("Sp"), mesh_, - dimensionedScalar(dimless/dimTime) + dimensionedScalar(dimless/dimTime, Zero) ); volScalarField::Internal Su ( - IOobject - ( - "Su", - runTime.timeName(), - mesh_ - ), + mesh_.newIOobject("Su"), // Divergence term is handled explicitly to be // consistent with the explicit transport solution fvc::div(phi_)*min(alpha1, scalar(1)) diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H index 6068281e183c690a22afd599af116442472175eb..45c49e2bf45f7dc8de814cb1faa864b56b95e732 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleSlip/JohnsonJacksonParticleSlipFvPatchVectorField.H @@ -113,15 +113,6 @@ public: const JohnsonJacksonParticleSlipFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference JohnsonJacksonParticleSlipFvPatchVectorField ( @@ -129,16 +120,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new JohnsonJacksonParticleSlipFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H index bdad64bd4ef7485d23ed42318263b705845e90ae..cff941c9efb3c82c467da6ba0516d7590110f2db 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/derivedFvPatchFields/JohnsonJacksonParticleTheta/JohnsonJacksonParticleThetaFvPatchScalarField.H @@ -116,15 +116,6 @@ public: const JohnsonJacksonParticleThetaFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference JohnsonJacksonParticleThetaFvPatchScalarField ( @@ -132,16 +123,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new JohnsonJacksonParticleThetaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C index 170d0d4df3d72532533f5a5bf94ee18b9d12fad1..cc8302f7c4a728ff5353dcd0c1f3e37bde5b0807 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/JohnsonJacksonSchaeffer/JohnsonJacksonSchaefferFrictionalStress.C @@ -130,25 +130,14 @@ JohnsonJacksonSchaeffer::nu { const volScalarField& alpha = phase; - tmp<volScalarField> tnu + auto tnu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "JohnsonJacksonSchaeffer:nu", - phase.mesh().time().timeName(), - phase.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - phase.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) - ) + IOobject::scopedName("JohnsonJacksonSchaeffer", "nu"), + IOobject::NO_REGISTER, + phase.mesh(), + dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) ); - - volScalarField& nuf = tnu.ref(); + auto& nuf = tnu.ref(); forAll(D, celli) { diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C index c6216517531a3f3f73c69d3a69cb8f6b8bad1a02..26679d97d2c15b0584e2c06e7ba6eafc82c61ff4 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/frictionalStressModel/Schaeffer/SchaefferFrictionalStress.C @@ -120,25 +120,14 @@ Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::nu { const volScalarField& alpha = phase; - tmp<volScalarField> tnu + auto tnu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Schaeffer:nu", - phase.mesh().time().timeName(), - phase.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - phase.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) - ) + IOobject::scopedName("Schaeffer", "nu"), + IOobject::NO_REGISTER, + phase.mesh(), + dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) ); - - volScalarField& nuf = tnu.ref(); + auto& nuf = tnu.ref(); forAll(D, celli) { @@ -154,7 +143,8 @@ Foam::kineticTheoryModels::frictionalStressModels::Schaeffer::nu } const fvPatchList& patches = phase.mesh().boundary(); - const volVectorField& U = phase.U(); + const tmp<volVectorField> tU(phase.U()); + const volVectorField& U = tU(); volScalarField::Boundary& nufBf = nuf.boundaryFieldRef(); diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C index 53f76222a66b110df56cd7752d4c05faff7905e5..e4228cf5a0764f11e82fb7450f185fcfee2c9ee2 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C @@ -113,7 +113,8 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel U.time().timeName(), U.mesh(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), U.mesh() ), @@ -168,7 +169,8 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel U.time().timeName(), U.mesh(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), U.mesh(), dimensionedScalar(dimViscosity, Zero) @@ -244,18 +246,11 @@ Foam::RASModels::kineticTheoryModel::omega() const Foam::tmp<Foam::volSymmTensorField> Foam::RASModels::kineticTheoryModel::R() const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + IOobject::groupName("R", U_.group()), + IOobject::NO_REGISTER, ( - IOobject - ( - IOobject::groupName("R", U_.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - (nut_)*devTwoSymm(fvc::grad(U_)) - (lambda_*fvc::div(phi_))*symmTensor::I ) @@ -322,20 +317,13 @@ Foam::RASModels::kineticTheoryModel::devRhoReff const volVectorField& U ) const { - return tmp<volSymmTensorField> + return volSymmTensorField::New ( - new volSymmTensorField + IOobject::groupName("devRhoReff", U.group()), + IOobject::NO_REGISTER, ( - IOobject - ( - IOobject::groupName("devRhoReff", U.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - (rho_*nut_) - *devTwoSymm(fvc::grad(U)) + * devTwoSymm(fvc::grad(U)) - ((rho_*lambda_)*fvc::div(phi_))*symmTensor::I ) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C index 42fa6cfbac522dc77c6c26b54080c8d55263c950..3534b0abe37150e9c40b22fe287366d13fdaecca 100644 --- a/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C +++ b/src/phaseSystemModels/twoPhaseEuler/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C @@ -106,7 +106,7 @@ Foam::tmp<Foam::volScalarField> Foam::RASModels::phasePressureModel::k() const { NotImplemented; - return nut_; + return nullptr; } @@ -114,7 +114,7 @@ Foam::tmp<Foam::volScalarField> Foam::RASModels::phasePressureModel::epsilon() const { NotImplemented; - return nut_; + return nullptr; } @@ -129,16 +129,10 @@ Foam::RASModels::phasePressureModel::omega() const Foam::tmp<Foam::volSymmTensorField> Foam::RASModels::phasePressureModel::R() const { - return tmp<volSymmTensorField>::New + return volSymmTensorField::New ( - IOobject - ( - IOobject::groupName("R", U_.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::groupName("R", U_.group()), + IOobject::NO_REGISTER, mesh_, dimensioned<symmTensor>(dimensionSet(0, 2, -2, 0, 0), Zero) ); @@ -214,16 +208,10 @@ Foam::RASModels::phasePressureModel::devRhoReff const volVectorField& U ) const { - return tmp<volSymmTensorField>::New + return volSymmTensorField::New ( - IOobject - ( - IOobject::groupName("devRhoReff", U.group()), - runTime_.timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::groupName("devRhoReff", U.group()), + IOobject::NO_REGISTER, mesh_, dimensioned<symmTensor> ( @@ -239,13 +227,10 @@ Foam::RASModels::phasePressureModel::divDevRhoReff volVectorField& U ) const { - return tmp<fvVectorMatrix> + return tmp<fvVectorMatrix>::New ( - new fvVectorMatrix - ( - U, - rho_.dimensions()*dimensionSet(0, 4, -2, 0, 0) - ) + U, + rho_.dimensions()*dimensionSet(0, 4, -2, 0, 0) ); } diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C index c9f207655d1c1829a965465ac90a01e014cfb33d..6f32ceb265e2fab19530e351517cce42498ba66a 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/BlendedInterfacialModel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2014-2016 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,8 +39,7 @@ void Foam::BlendedInterfacialModel<modelType>::correctFixedFluxBCs GeometricField& field ) const { - typename GeometricField::Boundary& fieldBf = - field.boundaryFieldRef(); + auto& fieldBf = field.boundaryFieldRef(); forAll(pair_.phase1().phi().boundaryField(), patchi) { @@ -140,22 +139,12 @@ Foam::BlendedInterfacialModel<modelType>::K() const f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); } - tmp<volScalarField> x + auto x = volScalarField::New ( - new volScalarField - ( - IOobject - ( - modelType::typeName + ":K", - pair_.phase1().mesh().time().timeName(), - pair_.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimK, Zero) - ) + IOobject::scopedName(modelType::typeName, "K"), + IOobject::NO_REGISTER, + pair_.phase1().mesh(), + dimensionedScalar(modelType::dimK, Zero) ); if (model_) @@ -208,22 +197,11 @@ Foam::BlendedInterfacialModel<modelType>::Kf() const ); } - tmp<surfaceScalarField> x + auto x = surfaceScalarField::New ( - new surfaceScalarField - ( - IOobject - ( - modelType::typeName + ":Kf", - pair_.phase1().mesh().time().timeName(), - pair_.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimK, Zero) - ) + IOobject::scopedName(modelType::typeName, "Kf"), + pair_.phase1().mesh(), + dimensionedScalar(modelType::dimK, Zero) ); if (model_) @@ -271,17 +249,10 @@ Foam::BlendedInterfacialModel<modelType>::F() const f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); } - auto x = tmp<GeometricField<Type, fvPatchField, volMesh>>::New + auto x = GeometricField<Type, fvPatchField, volMesh>::New ( - IOobject - ( - modelType::typeName + ":F", - pair_.phase1().mesh().time().timeName(), - pair_.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(modelType::typeName, "F"), + IOobject::NO_REGISTER, pair_.phase1().mesh(), dimensioned<Type>(modelType::dimF, Zero) ); @@ -336,17 +307,10 @@ Foam::BlendedInterfacialModel<modelType>::Ff() const ); } - auto x = tmp<surfaceScalarField>::New + auto x = surfaceScalarField::New ( - IOobject - ( - modelType::typeName + ":Ff", - pair_.phase1().mesh().time().timeName(), - pair_.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(modelType::typeName, "Ff"), + IOobject::NO_REGISTER, pair_.phase1().mesh(), dimensionedScalar(modelType::dimF*dimArea, Zero) ); @@ -397,22 +361,12 @@ Foam::BlendedInterfacialModel<modelType>::D() const f2 = blending_.f2(pair1In2_.dispersed(), pair2In1_.dispersed()); } - tmp<volScalarField> x + auto x = volScalarField::New ( - new volScalarField - ( - IOobject - ( - modelType::typeName + ":D", - pair_.phase1().mesh().time().timeName(), - pair_.phase1().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - pair_.phase1().mesh(), - dimensionedScalar(modelType::dimD, Zero) - ) + IOobject::scopedName(modelType::typeName, "D"), + IOobject::NO_REGISTER, + pair_.phase1().mesh(), + dimensionedScalar(modelType::dimD, Zero) ); if (model_) diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C index 3f3dfe09aac99d29f469722b93e3e2612069fc8b..4ba27735706d30d3bbdbe32f5e1819b34a1a357b 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/BlendedInterfacialModel/blendingMethods/noBlending/noBlending.C @@ -73,28 +73,16 @@ Foam::tmp<Foam::volScalarField> Foam::blendingMethods::noBlending::f1 const phaseModel& phase2 ) const { - const fvMesh& mesh(phase1.mesh()); - - return - tmp<volScalarField> - ( - new volScalarField - ( - IOobject - ( - "f", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar - ( - "f", - dimless, - phase2.name() != continuousPhase_ - ) - ) - ); + const fvMesh& mesh = phase1.mesh(); + + return volScalarField::New + ( + "f", + IOobject::NO_REGISTER, + mesh, + scalar(phase2.name() != continuousPhase_), // value 0/1 + dimless + ); } @@ -104,28 +92,16 @@ Foam::tmp<Foam::volScalarField> Foam::blendingMethods::noBlending::f2 const phaseModel& phase2 ) const { - const fvMesh& mesh(phase1.mesh()); - - return - tmp<volScalarField> - ( - new volScalarField - ( - IOobject - ( - "f", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar - ( - "f", - dimless, - phase1.name() == continuousPhase_ - ) - ) - ); + const fvMesh& mesh = phase1.mesh(); + + return volScalarField::New + ( + "f", + IOobject::NO_REGISTER, + mesh, + scalar(phase1.name() == continuousPhase_), // value 0/1 + dimless + ); } diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C index d0e2dfda5bef458720ff6cc98894dcc731b254b5..65f6012b924eced98b482413a274338b53350f56 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/dummy/dummy.C @@ -48,14 +48,10 @@ namespace IATEsources Foam::tmp<Foam::volScalarField> Foam::diameterModels::IATEsources::dummy::R() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "R", - iate_.phase().U().time().timeName(), - iate_.phase().mesh() - ), + "R", + IOobject::NO_REGISTER, iate_.phase().U().mesh(), dimensionedScalar(dimless/dimTime, Zero) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C index 39ee3276dbb064c65d259e42b833e3a260facb02..6f80349065f5936ae15351b2e6076d268773d86f 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/randomCoalescence/randomCoalescence.C @@ -64,22 +64,14 @@ randomCoalescence Foam::tmp<Foam::volScalarField> Foam::diameterModels::IATEsources::randomCoalescence::R() const { - tmp<volScalarField> tR + auto tR = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "R", - iate_.phase().U().time().timeName(), - iate_.phase().mesh() - ), - iate_.phase().U().mesh(), - dimensionedScalar(dimless/dimTime, Zero) - ) + "R", + IOobject::NO_REGISTER, + iate_.phase().U().mesh(), + dimensionedScalar(dimless/dimTime, Zero) ); - - volScalarField R = tR(); + auto& R = tR.ref(); scalar Crc = Crc_.value(); scalar C = C_.value(); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C index 36d077fae2e857a80518ea4fdfda401fdacead25..f7f4921c4475678198424e9e72d33ec1a68cb50f 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/IATE/IATEsources/turbulentBreakUp/turbulentBreakUp.C @@ -63,28 +63,21 @@ turbulentBreakUp Foam::tmp<Foam::volScalarField> Foam::diameterModels::IATEsources::turbulentBreakUp::R() const { - tmp<volScalarField> tR + auto tR = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "R", - iate_.phase().U().time().timeName(), - iate_.phase().mesh() - ), - iate_.phase().U().mesh(), - dimensionedScalar(dimless/dimTime, Zero) - ) + "R", + IOobject::NO_REGISTER, + iate_.phase().U().mesh(), + dimensionedScalar(dimless/dimTime, Zero) ); + auto R = tR(); - volScalarField R = tR(); - - scalar Cti = Cti_.value(); - scalar WeCr = WeCr_.value(); + const scalar Cti = Cti_.value(); + const scalar WeCr = WeCr_.value(); volScalarField Ut(this->Ut()); volScalarField We(this->We()); - const volScalarField& d(iate_.d()()); + const tmp<volScalarField> td(iate_.d()); + const volScalarField& d = td(); forAll(R, celli) { diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C index c6f0a03f7b9e97b4b78d4a204e9acca04d9d09f6..dce8516716f49450d1434c881bd894e6f7e398db 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/diameterModels/constantDiameter/constantDiameter.C @@ -69,22 +69,12 @@ Foam::diameterModels::constant::~constant() Foam::tmp<Foam::volScalarField> Foam::diameterModels::constant::d() const { - return tmp<Foam::volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "d", - phase_.U().time().timeName(), - phase_.U().mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - phase_.U().mesh(), - d_ - ) + "d", + IOobject::NO_REGISTER, + phase_.U().mesh(), + d_ ); } diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C index 790c071fcab592eb383ba9ae757f67f3a5580b1b..c4ec68bc6a40ad632e15f20943d8618921716cf1 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/aspectRatioModels/constantAspectRatio/constantAspectRatio.C @@ -70,16 +70,12 @@ Foam::aspectRatioModels::constantAspectRatio::~constantAspectRatio() Foam::tmp<Foam::volScalarField> Foam::aspectRatioModels::constantAspectRatio::E() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh - ), + "zero", + IOobject::NO_REGISTER, mesh, E0_ ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C index d606d0dc6af17d0b3905b27ac0547f2e89b8d326..c17e6f9573d6b2e61aaac5f15580271079a71978 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/constantLiftCoefficient/constantLiftCoefficient.C @@ -65,16 +65,12 @@ Foam::liftModels::constantLiftCoefficient::~constantLiftCoefficient() Foam::tmp<Foam::volScalarField> Foam::liftModels::constantLiftCoefficient::Cl() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh - ), + "zero", + IOobject::NO_REGISTER, mesh, Cl_ ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/noLift/noLift.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/noLift/noLift.C index 2b540ed3fa15d055b045cfffdafb9d609df3cb05..d36090c36dd7ae9c72c59f17445a68094c25c278 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/noLift/noLift.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/liftModels/noLift/noLift.C @@ -63,19 +63,12 @@ Foam::liftModels::noLift::~noLift() Foam::tmp<Foam::volScalarField> Foam::liftModels::noLift::Cl() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "Cl", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "Cl", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimless, Zero) ); @@ -84,19 +77,12 @@ Foam::tmp<Foam::volScalarField> Foam::liftModels::noLift::Cl() const Foam::tmp<Foam::volVectorField> Foam::liftModels::noLift::F() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volVectorField>::New + return volVectorField::New ( - IOobject - ( - "noLift:F", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noLift", "F"), + IOobject::NO_REGISTER, mesh, dimensionedVector(dimF, Zero) ); @@ -105,19 +91,12 @@ Foam::tmp<Foam::volVectorField> Foam::liftModels::noLift::F() const Foam::tmp<Foam::surfaceScalarField> Foam::liftModels::noLift::Ff() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( - IOobject - ( - "noLift:Ff", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noLift", "Ff"), + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimF*dimArea, Zero) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/swarmCorrections/noSwarm/noSwarm.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/swarmCorrections/noSwarm/noSwarm.C index e799cca4473326c3f85dba00d50477fe293835d3..86192abec2afdd480e75187d0f5e26fd72974eff 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/swarmCorrections/noSwarm/noSwarm.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/swarmCorrections/noSwarm/noSwarm.C @@ -63,23 +63,15 @@ Foam::swarmCorrections::noSwarm::~noSwarm() Foam::tmp<Foam::volScalarField> Foam::swarmCorrections::noSwarm::Cs() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); - - return - tmp<volScalarField> - ( - new volScalarField - ( - IOobject - ( - "one", - mesh.time().timeName(), - mesh - ), - mesh, - dimensionedScalar("one", dimless, 1) - ) - ); + const fvMesh& mesh = this->pair_.phase1().mesh(); + + return volScalarField::New + ( + "one", + IOobject::NO_REGISTER, + mesh, + dimensionedScalar("one", dimless, 1) + ); } diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C index 2d3180152d363ea5095035a7027f2a8203cf776b..cbd4aaa3b117d14ad712a43f5a0f57888dc54d99 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/turbulentDispersionModels/noTurbulentDispersion/noTurbulentDispersion.C @@ -70,19 +70,12 @@ Foam::turbulentDispersionModels::noTurbulentDispersion:: Foam::tmp<Foam::volScalarField> Foam::turbulentDispersionModels::noTurbulentDispersion::D() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "zero", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimD, Zero) ); @@ -92,16 +85,12 @@ Foam::turbulentDispersionModels::noTurbulentDispersion::D() const Foam::tmp<Foam::volVectorField> Foam::turbulentDispersionModels::noTurbulentDispersion::F() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volVectorField>::New + return volVectorField::New ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh - ), + "zero", + IOobject::NO_REGISTER, mesh, dimensionedVector(dimF, Zero) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C index 0c8a3bff3394fb6cfe03319e87c798650d7e263b..74380463b5ffbb60fcdd50b3d72064386eba59d6 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/constantVirtualMassCoefficient/constantVirtualMassCoefficient.C @@ -73,24 +73,14 @@ Foam::virtualMassModels::constantVirtualMassCoefficient:: Foam::tmp<Foam::volScalarField> Foam::virtualMassModels::constantVirtualMassCoefficient::Cvm() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Cvm", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - Cvm_ - ) + "Cvm", + IOobject::NO_REGISTER, + mesh, + Cvm_ ); } diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C index a135d5d88774df680ff7407eee00ba73ae7a5a90..a9f4c9f1086bbc998bbd7d26ba462514acc1c931 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/virtualMassModels/noVirtualMass/noVirtualMass.C @@ -65,16 +65,12 @@ Foam::virtualMassModels::noVirtualMass::~noVirtualMass() Foam::tmp<Foam::volScalarField> Foam::virtualMassModels::noVirtualMass::Cvm() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "zero", - mesh.time().timeName(), - mesh - ), + "zero", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimless, Zero) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C index 4eb415f7e4f2c01f09b68eef320c13a05accad54..d9a23e9ab308eefe5c3893e26c2360872b920082 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/interfacialModels/wallLubricationModels/noWallLubrication/noWallLubrication.C @@ -69,19 +69,12 @@ Foam::wallLubricationModels::noWallLubrication::~noWallLubrication() Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::noWallLubrication::Fi() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volVectorField>::New + return volVectorField::New ( - IOobject - ( - "noWallLubrication:Fi", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noWallLubrication", "Fi"), + IOobject::NO_REGISTER, mesh, dimensionedVector(dimF, Zero) ); @@ -91,19 +84,12 @@ Foam::wallLubricationModels::noWallLubrication::Fi() const Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::noWallLubrication::F() const { - const fvMesh& mesh(this->pair_.phase1().mesh()); + const fvMesh& mesh = this->pair_.phase1().mesh(); - return tmp<volVectorField>::New + return volVectorField::New ( - IOobject - ( - "noWallLubrication:F", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noWallLubrication", "F"), + IOobject::NO_REGISTER, mesh, dimensionedVector(dimF, Zero) ); diff --git a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/twoPhaseSystem/twoPhaseSystem.C b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/twoPhaseSystem/twoPhaseSystem.C index fdb52fea29c308129913b8aca7ac4cddf14fb118..ac5bc45b9d9dcedf734a32e373c363c766eeb2a2 100644 --- a/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/twoPhaseSystem/twoPhaseSystem.C +++ b/src/phaseSystemModels/twoPhaseEuler/twoPhaseSystem/twoPhaseSystem/twoPhaseSystem.C @@ -110,7 +110,7 @@ Foam::twoPhaseSystem::twoPhaseSystem IOobject::AUTO_WRITE ), mesh, - dimensionedScalar("dgdt", dimless/dimTime, Zero) + dimensionedScalar(dimless/dimTime, Zero) ) { phase2_.volScalarField::operator=(scalar(1) - phase1_); @@ -351,8 +351,6 @@ Foam::tmp<Foam::volScalarField> Foam::twoPhaseSystem::D() const void Foam::twoPhaseSystem::solve() { - const Time& runTime = mesh_.time(); - volScalarField& alpha1 = phase1_; volScalarField& alpha2 = phase2_; @@ -396,24 +394,14 @@ void Foam::twoPhaseSystem::solve() { volScalarField::Internal Sp ( - IOobject - ( - "Sp", - runTime.timeName(), - mesh_ - ), + mesh_.newIOobject("Sp"), mesh_, - dimensionedScalar("Sp", dgdt_.dimensions(), 0.0) + dimensionedScalar(dgdt_.dimensions(), Zero) ); volScalarField::Internal Su ( - IOobject - ( - "Su", - runTime.timeName(), - mesh_ - ), + mesh_.newIOobject("Su"), // Divergence term is handled explicitly to be // consistent with the explicit transport solution fvc::div(phi_)*min(alpha1, scalar(1)) diff --git a/src/regionFaModels/KirchhoffShell/KirchhoffShell.C b/src/regionFaModels/KirchhoffShell/KirchhoffShell.C index 1b09200a935e342ca4699dca6ffd70da0f44d482..d19871c2fe9d6f414d8e7bce4e1a2c85e0f5396a 100644 --- a/src/regionFaModels/KirchhoffShell/KirchhoffShell.C +++ b/src/regionFaModels/KirchhoffShell/KirchhoffShell.C @@ -27,8 +27,6 @@ License #include "KirchhoffShell.H" #include "addToRunTimeSelectionTable.H" -#include "fvPatchFields.H" -#include "zeroGradientFaPatchFields.H" #include "subCycle.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -41,7 +39,6 @@ namespace regionModels // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // defineTypeNameAndDebug(KirchhoffShell, 0); - addToRunTimeSelectionTable(vibrationShellModel, KirchhoffShell, dictionary); // * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -52,32 +49,35 @@ bool KirchhoffShell::init(const dictionary& dict) return true; } -// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // void KirchhoffShell::solveDisplacement() { - if (debug) - { - InfoInFunction << endl; - } + DebugInFunction << endl; const Time& time = primaryMesh().time(); - areaScalarField solidMass(rho()*h_); - areaScalarField solidD(D()/solidMass); + // Create operand fields for solid physics + const areaScalarField solidMass(rho()*h_); + const areaScalarField solidD(D()/solidMass); - // Save old times - areaScalarField w0(w_.oldTime()); - areaScalarField w00(w_.oldTime().oldTime()); + // Deep copy old times of shell displacement field + auto tw0 = tmp<areaScalarField>::New(w_.oldTime()); + auto tw00 = tmp<areaScalarField>::New(w_.oldTime().oldTime()); + // Flag terms to avoid redundant time-derivative calculations + const bool f0_enabled = (f0_.value() != scalar(0)); + const bool f1_enabled = (f1_.value() != scalar(0)); + const bool f2_enabled = (f2_.value() != scalar(0)); + + // Restore various old fields in sub-cycling, if need be if (nSubCycles_ > 1) { - // Restore the oldTime in sub-cycling w_.oldTime() = w0_; w_.oldTime().oldTime() = w00_; - laplaceW_.oldTime() = laplaceW0_; - laplace2W_.oldTime() = laplace2W0_; - } + + if (f0_enabled) laplaceW_.oldTime() = laplaceW0_; + if (f2_enabled) laplace2W_.oldTime() = laplace2W0_; + } for ( @@ -89,32 +89,35 @@ void KirchhoffShell::solveDisplacement() !(++wSubCycle).end(); ) { - laplaceW_ = fac::laplacian(w_); laplace2W_ = fac::laplacian(laplaceW_); faScalarMatrix wEqn ( fam::d2dt2(w_) - + f1_*fam::ddt(w_) - - f0_*sqrt(solidD)*fac::ddt(laplaceW_) - + solidD*(laplace2W_ + f2_*fac::ddt(laplace2W_)) + + solidD*laplace2W_ == ps_/solidMass + faOptions()(solidMass, w_, dimLength/sqr(dimTime)) ); + // Avoid time-derivative calculations for f terms, if possible + if (f0_enabled) wEqn -= f0_*sqrt(solidD)*fac::ddt(laplaceW_); + if (f1_enabled) wEqn += f1_*fam::ddt(w_); + if (f2_enabled) wEqn += f2_*solidD*fac::ddt(laplace2W_); + faOptions().constrain(wEqn); wEqn.solve(); + // Cache various old fields inside the sub-cycling if (wSubCycle.index() >= wSubCycle.nSubCycles()) { - // Cache oldTimes inside the sub-cycling w0_ = w_.oldTime(); w00_ = w_.oldTime().oldTime(); - laplaceW0_ = laplaceW_.oldTime(); - laplace2W0_ = laplace2W_.oldTime(); + + if (f0_enabled) laplaceW0_ = laplaceW_.oldTime(); + if (f2_enabled) laplace2W0_ = laplace2W_.oldTime(); // Update shell acceleration a_ = fac::d2dt2(w_); @@ -123,9 +126,9 @@ void KirchhoffShell::solveDisplacement() Info<< w_.name() << " min/max = " << gMinMax(w_) << endl; - // Restore old time in main time - w_.oldTime() = w0; - w_.oldTime().oldTime() = w00; + // Steal the deep-copy of old times to restore the shell displacement + w_.oldTime() = tw0; + w_.oldTime().oldTime() = tw00; faOptions().correct(w_); } @@ -141,11 +144,6 @@ KirchhoffShell::KirchhoffShell ) : vibrationShellModel(modelType, mesh, dict), - f0_("f0", dimless, dict), - f1_("f1", inv(dimTime), dict), - f2_("f2", dimTime, dict), - nNonOrthCorr_(1), - nSubCycles_(1), ps_ ( IOobject @@ -248,7 +246,12 @@ KirchhoffShell::KirchhoffShell ), regionMesh(), dimensionedScalar(inv(pow3(dimLength)), Zero) - ) + ), + f0_("f0", dimless, dict), + f1_("f1", inv(dimTime), dict), + f2_("f2", dimTime, dict), + nNonOrthCorr_(1), + nSubCycles_(1) { init(dict); } @@ -261,10 +264,10 @@ void KirchhoffShell::preEvolveRegion() void KirchhoffShell::evolveRegion() { - nNonOrthCorr_ = solution().get<label>("nNonOrthCorr"); - nSubCycles_ = solution().get<label>("nSubCycles"); + nNonOrthCorr_ = solution().getLabel("nNonOrthCorr"); + nSubCycles_ = solution().getLabel("nSubCycles"); - for (int nonOrth=0; nonOrth<=nNonOrthCorr_; nonOrth++) + for (int nonOrth=0; nonOrth <= nNonOrthCorr_; ++nonOrth) { solveDisplacement(); } @@ -282,23 +285,13 @@ const tmp<areaScalarField> KirchhoffShell::D() const const tmp<areaScalarField> KirchhoffShell::rho() const { - return tmp<areaScalarField> + return areaScalarField::New ( - new areaScalarField - ( - IOobject - ( - "rhos", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - regionMesh(), - dimensionedScalar("rho", dimDensity, solid().rho()), - faPatchFieldBase::zeroGradientType() - ) + "rhos", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedScalar("rho", dimDensity, solid().rho()), + faPatchFieldBase::zeroGradientType() ); } diff --git a/src/regionFaModels/KirchhoffShell/KirchhoffShell.H b/src/regionFaModels/KirchhoffShell/KirchhoffShell.H index 75ef80cacb596151657f4a9ef16a1d45804b8cce..cf09f8dd670ceb59f646681d9af01934c7007bee 100644 --- a/src/regionFaModels/KirchhoffShell/KirchhoffShell.H +++ b/src/regionFaModels/KirchhoffShell/KirchhoffShell.H @@ -27,20 +27,23 @@ Class Foam::regionFaModels::KirchhoffShell Description + Vibration-shell finite-area model. Usage Example of the boundary condition specification: \verbatim <patchName> { - // Mandatory/Optional entries - ... - // Mandatory entries vibrationShellModel KirchhoffShell; - f0 0.04; - f1 0.0; - f2 0.0; + f0 <scalar>; + f1 <scalar>; + f2 <scalar>; + + // Inherited entries + ... + nNonOrthCorr <int>; // read from another dict + nSubCycles <int>; } \endverbatim @@ -66,7 +69,6 @@ SourceFiles #include "volFieldsFwd.H" #include "vibrationShellModel.H" -#include "faMesh.H" #include "faCFD.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -86,64 +88,54 @@ class KirchhoffShell { // Private Data - //- Damping coefficients [1/s] - dimensionedScalar f0_; - dimensionedScalar f1_; - dimensionedScalar f2_; - - - // Private Member Functions - - //- Initialise KirchhoffShell - bool init(const dictionary& dict); - - -protected: - - // Protected Data + // Source term fields - // Solution parameters + //- External surface source [Pa] + const areaScalarField ps_; - //- Number of non orthogonal correctors - label nNonOrthCorr_; + //- Thickness [m] + areaScalarField h_; - //- Sub cycles - label nSubCycles_; + //- Laplace of the displacement + areaScalarField laplaceW_; + //- Laplace of the Laplace for the displacement + areaScalarField laplace2W_; - // Source term fields + //- Cache w.oldTime() in sub-cycling + areaScalarField w0_; - //- External surface source [Pa] - areaScalarField ps_; + //- Cache w.oldTime.oldTime() in sub-cycling + areaScalarField w00_; - //- Thickness [m] - areaScalarField h_; + //- Cache laplaceW.oldTime() in sub-cycling + areaScalarField laplaceW0_; - //- Laplace of the displacement - areaScalarField laplaceW_; + //- Cache laplace2.oldTime() in sub-cycling + areaScalarField laplace2W0_; - //- Laplace of the Laplace for the displacement - areaScalarField laplace2W_; - //- Cache w.oldTime() in sub-cycling - areaScalarField w0_; + // Solution parameters - //- Cache w.oldTime.oldTime() in sub-cycling - areaScalarField w00_; + //- Damping coefficients [1/s] + const dimensionedScalar f0_; + const dimensionedScalar f1_; + const dimensionedScalar f2_; - //- Cache laplaceW.oldTime() in sub-cycling - areaScalarField laplaceW0_; + //- Number of non orthogonal correctors + label nNonOrthCorr_; - //- Cache laplace2.oldTime() in sub-cycling - areaScalarField laplace2W0_; + //- Sub cycles + label nSubCycles_; - // Protected Member Functions + // Private Member Functions - // Equations + //- Initialise Kirchhoff shell model + bool init(const dictionary& dict); - //- Solve energy equation - void solveDisplacement(); + //- Solve energy equation + void solveDisplacement(); public: diff --git a/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.C b/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.C index 37f864463e4e267b893f59f49a98a095437101f8..d764b4a36f5a84713fdc079d571feb0a926035fe 100644 --- a/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.C +++ b/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.C @@ -139,7 +139,6 @@ velocityFilmShellFvPatchVectorField::velocityFilmShellFvPatchVectorField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - void velocityFilmShellFvPatchVectorField::updateCoeffs() { if (this->updated()) @@ -147,7 +146,7 @@ void velocityFilmShellFvPatchVectorField::updateCoeffs() return; } - // Execute the change to the openFraction only once per time-step + // Execute the change only once per time-step if (curTimeIndex_ != this->db().time().timeIndex()) { baffle_->evolve(); diff --git a/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.H b/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.H index 56c805024d7f063e9454f94d025e751e5ee49179..a24587a23d0f6d0a37b4e3a911524818475cd884 100644 --- a/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.H +++ b/src/regionFaModels/derivedFvPatchFields/filmShell/velocityFilmShellFvPatchVectorField.H @@ -30,25 +30,30 @@ Group grpLiquidFilmBoundaryConditions Description + This boundary condition provides a coupled velocity condition between + a primary region (3D mesh) and a liquid-film model (2D mesh). Usage Example of the boundary condition specification: \verbatim <patchName> { + // Mandatory entries type velocityFilmShell; + liquidFilmModel <word>; - active true; - infoOutput true; + // Optional entries + zeroWallVelocity <bool>; - U U; - pRef 1e5; - T0 300; - - deltaWet 1e-4; - h0 1e-8; - - zeroWallVelocity true; + // Inherited entries + ... + active <bool>; + infoOutput <bool>; + U <word>; + pRef <scalar>; + T0 <scalar>; + deltaWet <scalar>; + h0 <scalar>; thermo { @@ -56,7 +61,6 @@ Usage } turbulence laminar; - laminarCoeffs { friction ManningStrickler; // Wall friction model @@ -77,8 +81,6 @@ Usage } region film; - liquidFilmModel kinematicThinFilm; - value uniform (0 0 0); } \endverbatim @@ -87,21 +89,25 @@ Usage \table Property | Description | Type | Reqd | Deflt type | Type name: velocityFilmShell | word | yes | - + liquidFilmModel | Film model | word | yes | - + zeroWallVelocity | Flag to fix zero U for primary flow <!-- + --> | bool | no | true U | Name of the primary U | word | yes | - pRef | Reference pressure for thermo | scalar | yes | - T0 | Film initial temperature | scalar | no | READ thermo | Flow thermo | wordRes | yes | - - zeroWallVelocity | Flag to fix zero U for primary flow <!-- - --> | bool | no | true turbulence | Type of film turbulence model | word | yes | - injectionModels | Lagrangian injection | | no | - forces | Film force models | wordRes | no | - deltaWet | Wet film thickness | scalar | no | 1e-4 h0 | Numerical minimum thickness | scalar | no | 1e-7 region | Name of the 2D region | word | yes | - - liquidFilmModel | Film model | word | yes | - \endtable + The inherited entries are elaborated in: + - \link liquidFilmBase.H \endlink + - \link mixedFvPatchFields.H \endlink + SourceFiles velocityFilmShellFvPatchVectorField.C @@ -110,7 +116,6 @@ SourceFiles #ifndef velocityFilmShellFvPatchVectorField_H #define velocityFilmShellFvPatchVectorField_H -#include "autoPtr.H" #include "liquidFilmBase.H" #include "mixedFvPatchFields.H" @@ -135,7 +140,7 @@ class velocityFilmShellFvPatchVectorField // Private Data - //- The liquid film + //- The liquid film model autoPtr<baffleType> baffle_; //- Dictionary @@ -144,7 +149,7 @@ class velocityFilmShellFvPatchVectorField //- Time index to evolve the film label curTimeIndex_; - //- Zero wall velocity. Fix U to zero or to film U + //- Flag to set velocity to zero or film velocity bool zeroWallVelocity_; @@ -181,15 +186,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new velocityFilmShellFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference velocityFilmShellFvPatchVectorField ( @@ -197,16 +193,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new velocityFilmShellFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/regionFaModels/derivedFvPatchFields/thermalShell/thermalShellFvPatchScalarField.H b/src/regionFaModels/derivedFvPatchFields/thermalShell/thermalShellFvPatchScalarField.H index 1ee34af3e339dcb325d1a543f3e5be34452b3951..a229a436664191fcca975eb1e502743cda7f5975 100644 --- a/src/regionFaModels/derivedFvPatchFields/thermalShell/thermalShellFvPatchScalarField.H +++ b/src/regionFaModels/derivedFvPatchFields/thermalShell/thermalShellFvPatchScalarField.H @@ -41,17 +41,17 @@ Usage \verbatim <masterPatchName> { - // Mandatory entries (unmodifiable) + // Mandatory entries type compressible::thermalShell; - // Mandatory/Optional (inherited) entries + // Inherited entries ... } \endverbatim where the entries mean: \table - Property | Description | Type | Reqd | Dflt + Property | Description | Type | Reqd | Deflt type | Type name: compressible::thermalShell | word | yes | - \endtable @@ -71,7 +71,6 @@ SourceFiles #ifndef Foam_thermalShellFvPatchScalarField_H #define Foam_thermalShellFvPatchScalarField_H -#include "autoPtr.H" #include "thermalShellModel.H" #include "fixedValueFvPatchFields.H" @@ -138,15 +137,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new thermalShellFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference thermalShellFvPatchScalarField ( @@ -154,16 +144,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new thermalShellFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionFaModels/derivedFvPatchFields/vibrationShell/vibrationShellFvPatchScalarField.H b/src/regionFaModels/derivedFvPatchFields/vibrationShell/vibrationShellFvPatchScalarField.H index af184d2aea7d79596ade8937d023e3081d080239..7a41512e1ea76fa15405280f50493ea114e4e232 100644 --- a/src/regionFaModels/derivedFvPatchFields/vibrationShell/vibrationShellFvPatchScalarField.H +++ b/src/regionFaModels/derivedFvPatchFields/vibrationShell/vibrationShellFvPatchScalarField.H @@ -30,23 +30,25 @@ Group grpVibrationBoundaryConditions Description + This boundary condition provides a coupled acoustic pressure condition + between a primary region (3D mesh) and a vibration shell model (2D mesh). Usage Example of the boundary condition specification: \verbatim <masterPatchName> { - // Mandatory entries (unmodifiable) + // Mandatory entries type vibrationShell; - // Mandatory/Optional (inherited) entries + // Inherited entries ... } \endverbatim where the entries mean: \table - Property | Description | Type | Reqd | Dflt + Property | Description | Type | Reqd | Deflt type | Type name: vibrationShell | word | yes | - \endtable @@ -62,7 +64,6 @@ SourceFiles #ifndef vibrationShellFvPatchScalarField_H #define vibrationShellFvPatchScalarField_H -#include "autoPtr.H" #include "vibrationShellModel.H" #include "mixedFvPatchFields.H" @@ -87,7 +88,7 @@ class vibrationShellFvPatchScalarField // Private Data - //- The vibration shell + //- The vibration shell model autoPtr<baffleType> baffle_; //- Dictionary @@ -127,15 +128,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new vibrationShellFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference vibrationShellFvPatchScalarField ( @@ -143,16 +135,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new vibrationShellFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionFaModels/functionObjects/setTimeStep/setTimeStepFaRegionsFunctionObject.C b/src/regionFaModels/functionObjects/setTimeStep/setTimeStepFaRegionsFunctionObject.C index 5b9cfa6df7d7f14992f1985a4d580cd61d316d62..021f13530bb2eee484bb9364c7a04748a32d650e 100644 --- a/src/regionFaModels/functionObjects/setTimeStep/setTimeStepFaRegionsFunctionObject.C +++ b/src/regionFaModels/functionObjects/setTimeStep/setTimeStepFaRegionsFunctionObject.C @@ -28,7 +28,6 @@ License #include "setTimeStepFaRegionsFunctionObject.H" #include "addToRunTimeSelectionTable.H" - // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam diff --git a/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.C b/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.C index a688527b4239af0bd5658563c0872b504bd518ac..f066339a04cbaf0cc9842e07025d81d6cc417b0c 100644 --- a/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.C +++ b/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.C @@ -27,7 +27,6 @@ License #include "kinematicThinFilm.H" #include "addToRunTimeSelectionTable.H" -#include "uniformDimensionedFields.H" #include "volFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -75,10 +74,7 @@ void kinematicThinFilm::preEvolveRegion() void kinematicThinFilm::evolveRegion() { - if (debug) - { - InfoInFunction << endl; - } + DebugInFunction << endl; const areaVectorField& ns = regionMesh().faceAreaNormals(); @@ -86,7 +82,7 @@ void kinematicThinFilm::evolveRegion() phi2s_ = fac::interpolate(h_)*phif_; - for (int oCorr=1; oCorr<=nOuterCorr_; oCorr++) + for (int oCorr=1; oCorr<=nOuterCorr_; ++oCorr) { pf_.storePrevIter(); @@ -108,10 +104,10 @@ void kinematicThinFilm::evolveRegion() if (momentumPredictor_) { - solve(UsEqn == - fac::grad(pf_*h_)/rho_ + pf_*fac::grad(h_)/rho_); + solve(UsEqn == -fac::grad(pf_*h_)/rho_ + pf_*fac::grad(h_)/rho_); } - for (int corr=1; corr<=nCorr_; corr++) + for (int corr=1; corr<=nCorr_; ++corr) { areaScalarField UsA(UsEqn.A()); @@ -126,7 +122,7 @@ void kinematicThinFilm::evolveRegion() + fac::interpolate(pf_/(rho_*UsA)) * fac::lnGrad(h_)*regionMesh().magLe(); - for (int nFilm=1; nFilm<=nFilmCorr_; nFilm++) + for (int nFilm=1; nFilm<=nFilmCorr_; ++nFilm) { faScalarMatrix hEqn ( diff --git a/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.H b/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.H index 92e1b5d4d4a978369d70d515e6f165fff9731ef6..9847757f2b52b3610f1eb6da3529680cc7f839b3 100644 --- a/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.H +++ b/src/regionFaModels/liquidFilm/kinematicThinFilm/kinematicThinFilm.H @@ -29,9 +29,29 @@ Class Description Thin film model. +Usage + Example of the boundary condition specification: + \verbatim + { + // Mandatory entries + liquidFilmModel kinematicThinFilm; + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + liquidFilmModel | Type name: kinematicThinFilm | dict | yes | - + \endtable + + The inherited entries are elaborated in: + - \link liquidFilmModel.H \endlink + SourceFiles kinematicThinFilm.C - kinematicThinFilmI.H \*---------------------------------------------------------------------------*/ @@ -40,8 +60,6 @@ SourceFiles #include "volFieldsFwd.H" #include "liquidFilmModel.H" -#include "faMesh.H" -#include "filmTurbulenceModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/liquidFilmBase.C b/src/regionFaModels/liquidFilm/liquidFilmBase.C index afe3dc40a0eed394ada18b0fe344124191414235..8d575da6e739f0b8dd73ffee67f2bca87a9b78b6 100644 --- a/src/regionFaModels/liquidFilm/liquidFilmBase.C +++ b/src/regionFaModels/liquidFilm/liquidFilmBase.C @@ -26,12 +26,10 @@ License \*---------------------------------------------------------------------------*/ #include "liquidFilmBase.H" -#include "faMesh.H" #include "gravityMeshObject.H" #include "movingWallVelocityFvPatchVectorField.H" #include "turbulentFluidThermoModel.H" #include "turbulentTransportModel.H" -#include "calculatedFvPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -60,7 +58,6 @@ liquidFilmBase::liquidFilmBase ) : regionFaModel(mesh, liquidFilmName, modelType, dict, true), - momentumPredictor_ ( this->solution().subDict("PIMPLE").get<bool>("momentumPredictor") @@ -74,17 +71,11 @@ liquidFilmBase::liquidFilmBase ( this->solution().subDict("PIMPLE").get<label>("nFilmCorr") ), - h0_("h0", dimLength, 1e-7, dict), - deltaWet_("deltaWet", dimLength, 1e-4, dict), - UName_(dict.get<word>("U")), - pName_(dict.getOrDefault<word>("p", word::null)), - pRef_(dict.get<scalar>("pRef")), - h_ ( IOobject @@ -97,7 +88,6 @@ liquidFilmBase::liquidFilmBase ), regionMesh() ), - Uf_ ( IOobject @@ -148,7 +138,6 @@ liquidFilmBase::liquidFilmBase ), fac::interpolate(Uf_) & regionMesh().Le() ), - phi2s_ ( IOobject @@ -161,7 +150,6 @@ liquidFilmBase::liquidFilmBase ), fac::interpolate(h_*Uf_) & regionMesh().Le() ), - gn_ ( IOobject @@ -175,9 +163,7 @@ liquidFilmBase::liquidFilmBase regionMesh(), dimensionedScalar(dimAcceleration, Zero) ), - g_(meshObjects::gravity::New(primaryMesh().time())), - massSource_ ( IOobject @@ -189,7 +175,6 @@ liquidFilmBase::liquidFilmBase primaryMesh(), dimensionedScalar(dimMass, Zero) ), - momentumSource_ ( IOobject @@ -201,7 +186,6 @@ liquidFilmBase::liquidFilmBase primaryMesh(), dimensionedVector(dimPressure, Zero) ), - pnSource_ ( IOobject @@ -213,21 +197,7 @@ liquidFilmBase::liquidFilmBase primaryMesh(), dimensionedScalar(dimPressure, Zero) ), - - energySource_ - ( - IOobject - ( - "energySource", - primaryMesh().time().timeName(), - primaryMesh().thisDb() - ), - primaryMesh(), - dimensionedScalar(dimEnergy, Zero) - ), - addedMassTotal_(0), - faOptions_(Foam::fa::options::New(primaryMesh())) { const areaVectorField& ns = regionMesh().faceAreaNormals(); @@ -276,19 +246,12 @@ scalar liquidFilmBase::CourantNumber() const Foam::tmp<Foam::areaVectorField> liquidFilmBase::Uw() const { - tmp<areaVectorField> tUw + auto tUw = areaVectorField::New ( - new areaVectorField - ( - IOobject - ( - "tUw", - regionMesh().time().timeName(), - regionMesh().thisDb() - ), - regionMesh(), - dimensionedVector(dimVelocity, Zero) - ) + "tUw", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedVector(dimVelocity, Zero) ); auto& Uw = tUw.ref(); @@ -331,19 +294,12 @@ Foam::tmp<Foam::areaVectorField> liquidFilmBase::Uw() const Foam::tmp<Foam::areaVectorField> liquidFilmBase::Us() const { - tmp<areaVectorField> tUs + auto tUs = areaVectorField::New ( - new areaVectorField - ( - IOobject - ( - "tUs", - regionMesh().time().timeName(), - regionMesh().thisDb() - ), - regionMesh(), - dimensionedVector(dimVelocity, Zero) - ) + "tUs", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedVector(dimVelocity, Zero) ); // Uf quadratic profile @@ -358,21 +314,14 @@ Foam::tmp<Foam::areaVectorField> liquidFilmBase::Up() const const volVectorField& Uprimary = primaryMesh().lookupObject<volVectorField>(UName_); - tmp<areaVectorField> tUp + auto tUp = areaVectorField::New ( - new areaVectorField - ( - IOobject - ( - "tUp", - regionMesh().time().timeName(), - regionMesh().thisDb() - ), - regionMesh(), - dimensionedVector(dimVelocity, Zero) - ) + "tUp", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedVector(dimVelocity, Zero) ); - areaVectorField& Up = tUp.ref(); + auto& Up = tUp.ref(); // Set up mapping values per patch @@ -406,19 +355,12 @@ Foam::tmp<Foam::areaVectorField> liquidFilmBase::Up() const tmp<areaScalarField> liquidFilmBase::pg() const { - tmp<areaScalarField> tpg + auto tpg = areaScalarField::New ( - new areaScalarField - ( - IOobject - ( - "tpg", - regionMesh().time().timeName(), - regionMesh().thisDb() - ), - regionMesh(), - dimensionedScalar(dimPressure, Zero) - ) + "tpg", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedScalar(dimPressure, Zero) ); auto& pfg = tpg.ref(); @@ -429,8 +371,6 @@ tmp<areaScalarField> liquidFilmBase::pg() const primaryMesh().lookupObject<volScalarField>(pName_), pfg.primitiveFieldRef() ); - - //pfg -= pRef_; } return tpg; @@ -439,19 +379,12 @@ tmp<areaScalarField> liquidFilmBase::pg() const tmp<areaScalarField> liquidFilmBase::alpha() const { - tmp<areaScalarField> talpha + auto talpha = areaScalarField::New ( - new areaScalarField - ( - IOobject - ( - "talpha", - regionMesh().time().timeName(), - regionMesh().thisDb() - ), - regionMesh(), - dimensionedScalar(dimless, Zero) - ) + "talpha", + IOobjectOption::NO_REGISTER, + regionMesh(), + dimensionedScalar(dimless, Zero) ); auto& alpha = talpha.ref(); @@ -500,72 +433,6 @@ void liquidFilmBase::postEvolveRegion() } -Foam::fa::options& liquidFilmBase::faOptions() -{ - return faOptions_; -} - - -const areaVectorField& liquidFilmBase::Uf() const -{ - return Uf_; -} - - -const areaScalarField& liquidFilmBase::gn() const -{ - return gn_; -} - - -const uniformDimensionedVectorField& liquidFilmBase::g() const -{ - return g_; -} - - -const areaScalarField& liquidFilmBase::h() const -{ - return h_; -} - - -const edgeScalarField& liquidFilmBase::phif() const -{ - return phif_; -} - - -const edgeScalarField& liquidFilmBase::phi2s() const -{ - return phi2s_; -} - - -const dimensionedScalar& liquidFilmBase::h0() const -{ - return h0_; -} - - -const regionFaModel& liquidFilmBase::region() const -{ - return *this; -} - - -scalar liquidFilmBase::pRef() -{ - return pRef_; -} - - -word liquidFilmBase::UName() const -{ - return UName_; -} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace areaSurfaceFilmModels diff --git a/src/regionFaModels/liquidFilm/liquidFilmBase.H b/src/regionFaModels/liquidFilm/liquidFilmBase.H index af59546293ccf177077cfa8c6be7517060192576..d272e2df9c187f6de127e7e801f025cd2be8a546 100644 --- a/src/regionFaModels/liquidFilm/liquidFilmBase.H +++ b/src/regionFaModels/liquidFilm/liquidFilmBase.H @@ -27,7 +27,44 @@ Class Foam::regionModels::liquidFilmBase Description - Base class for thermal 2D shells + Base class for liquid-film models. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + // Mandatory entries + U <word>; + pRef <scalar>; + + // Optional entries + h0 <scalar>; + deltaWet <scalar>; + p <word>; + + // Inherited entries + ... + momentumPredictor <int>; + nOuterCorr <label>; + nCorr <label>; + nFilmCorr <label>; + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + U | Name of velocity field | word | yes | - + pRef | Reference absolute pressure | scalar | yes | - + h0 | Smallest film thickness | scalar | no | 1e-7 + deltaWet | Film thickness beyond which face is assumed to be wet <!-- + --> | scalar | no | 1e-4 + p | Name of pressure field | word | no | null + \endtable + + The inherited entries are elaborated in: + - \link regionFaModel.H \endlink SourceFiles liquidFilmBase.C @@ -37,8 +74,6 @@ SourceFiles #ifndef Foam_liquidFilmBase_H #define Foam_liquidFilmBase_H -#include "runTimeSelectionTables.H" -#include "autoPtr.H" #include "faCFD.H" #include "volFieldsFwd.H" #include "uniformDimensionedFields.H" @@ -68,13 +103,13 @@ protected: // Solution parameters - //- Momentum predictor + //- Flag to enable momentum predictor Switch momentumPredictor_; //- Number of outer correctors label nOuterCorr_; - //- Number of PISO-like correctors + //- Number of PISO-like inner correctors label nCorr_; //- Number of film thickness correctors @@ -83,10 +118,10 @@ protected: //- Cumulative continuity error scalar cumulativeContErr_; - //- Smallest numerical thickness + //- Smallest film thickness dimensionedScalar h0_; - //- Delta wet for sub-models + //- Film thickness beyond which face is assumed to be wet dimensionedScalar deltaWet_; @@ -102,7 +137,7 @@ protected: // Fields - //- Film hight + //- Film height areaScalarField h_; //- Film velocity @@ -138,9 +173,6 @@ protected: //- Normal pressure by particles volScalarField pnSource_; - //- Energy - volScalarField energySource_; - //- Total mass added scalar addedMassTotal_; @@ -173,7 +205,6 @@ public: // Constructors - //- Construct from type name and mesh and dict liquidFilmBase ( @@ -228,41 +259,40 @@ public: tmp<areaScalarField> alpha() const; - // Access functions + // Access //- Return faOptions - Foam::fa::options& faOptions(); + Foam::fa::options& faOptions() noexcept { return faOptions_; } //- Access const reference Uf - const areaVectorField& Uf() const; + const areaVectorField& Uf() const noexcept { return Uf_; } //- Access const reference gn - const areaScalarField& gn() const; + const areaScalarField& gn() const noexcept { return gn_; } //- Gravity - const uniformDimensionedVectorField& g() const; + const uniformDimensionedVectorField& g() const noexcept { return g_; } //- Access const reference h - const areaScalarField& h() const; + const areaScalarField& h() const noexcept { return h_; } //- Access to momentum flux - const edgeScalarField& phif() const; + const edgeScalarField& phif() const noexcept { return phif_; } //- Access continuity flux - const edgeScalarField& phi2s() const; - + const edgeScalarField& phi2s() const noexcept { return phi2s_; } //- Return h0 - const dimensionedScalar& h0() const; + const dimensionedScalar& h0() const noexcept { return h0_; } //- Access to this region - const regionFaModel& region() const; + const regionFaModel& region() const noexcept { return *this; } //- Access to pRef - scalar pRef(); + scalar pRef() const { return pRef_; } //- Name of the U field - word UName() const; + word UName() const { return UName_; } // Transfer fields - to the primary region (lagragian injection) diff --git a/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.C b/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.C index 1aa3078a3165669b1815fef35704fdfb3b8c3d2f..611e75abea3fa39385348d7f5fccb3c59abf8c27 100644 --- a/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.C +++ b/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.C @@ -27,11 +27,8 @@ License #include "liquidFilmModel.H" #include "addToRunTimeSelectionTable.H" -#include "uniformDimensionedFields.H" -#include "gravityMeshObject.H" #include "volFields.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -91,9 +88,7 @@ liquidFilmModel::liquidFilmModel ) : liquidFilmBase(modelType, mesh, dict), - thermo_(dict.subDict("thermo")), - rho_ ( IOobject @@ -224,7 +219,6 @@ liquidFilmModel::liquidFilmModel primaryMesh(), dimensionedScalar(dimMass, Zero) ), - cloudDiameterTrans_ ( IOobject @@ -238,17 +232,15 @@ liquidFilmModel::liquidFilmModel primaryMesh(), dimensionedScalar(dimLength, Zero) ), - turbulence_(filmTurbulenceModel::New(*this, dict)), - availableMass_(regionMesh().faces().size(), Zero), - injection_(*this, dict), - forces_(*this, dict) { if (dict.readIfPresent("T0", Tref_)) { + Info<< "Initialised film temperature to T0" << endl; + Tf_ = dimensionedScalar("T0", dimTemperature, dict); } correctThermoFields(); @@ -257,48 +249,6 @@ liquidFilmModel::liquidFilmModel // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -const areaScalarField& liquidFilmModel::mu() const -{ - return mu_; -} - - -const areaScalarField& liquidFilmModel::rho() const -{ - return rho_; -} - - -const areaScalarField& liquidFilmModel::sigma() const -{ - return sigma_; -} - - -const areaScalarField& liquidFilmModel::Tf() const -{ - return Tf_; -} - - -const areaScalarField& liquidFilmModel::Cp() const -{ - return Cp_; -} - - -const liquidMixtureProperties& liquidFilmModel::thermo() const -{ - return thermo_; -} - - -scalar liquidFilmModel::Tref() const -{ - return Tref_; -} - - const volScalarField& liquidFilmModel::cloudMassTrans() const { return cloudMassTrans_; diff --git a/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.H b/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.H index 366c959feac60aaf9f6c4876f33e95bfd3cee772..43300fb3bda866976ada5efc58993e4de143586b 100644 --- a/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.H +++ b/src/regionFaModels/liquidFilm/liquidFilmModel/liquidFilmModel.H @@ -27,12 +27,39 @@ Class Foam::regionFaModels::liquidFilmModel Description - Thin Model Film model. - + Thin film model. + +Usage + Example of the boundary condition specification: + \verbatim + <patchName> + { + // Mandatory entries + thermo <dict>; + + // Optional entries + T0 <scalar>; + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + thermo | Liquid thermodynamics properties | dict | yes | - + T0 | Reference temperature [K] | scalar | choice | - + \endtable + + The inherited entries are elaborated in: + - \link liquidFilmBase.H \endlink + - \link filmTurbulenceModel.H \endlink + - \link injectionModelList.H \endlink + - \link forceList.H \endlink SourceFiles liquidFilmModel.C - kinematicThinFilmI.H \*---------------------------------------------------------------------------*/ @@ -41,7 +68,6 @@ SourceFiles #include "volFieldsFwd.H" #include "liquidFilmBase.H" -#include "faMesh.H" #include "filmTurbulenceModel.H" #include "liquidMixtureProperties.H" #include "injectionModelList.H" @@ -72,7 +98,7 @@ protected: //- Liquid thermo liquidMixtureProperties thermo_; - //- Reference tempararure + //- Reference temperature scalar Tref_; @@ -84,16 +110,16 @@ protected: //- Dynamic viscosity [Pa.s] areaScalarField mu_; - //- Film temperature + //- Film temperature [K] areaScalarField Tf_; - //- Film Heat capacity + //- Film heat capacity [J/K] areaScalarField Cp_; - //- Surface tension [m/s2] + //- Surface tension [m/s^2] areaScalarField sigma_; - //- Film rho*height + //- Film rho*height [m.kg/m^3] areaScalarField hRho_; @@ -111,7 +137,7 @@ protected: // Transfer fields - //- Film mass for transfer to cloud + //- Film mass for transfer to cloud volScalarField cloudMassTrans_; //- Parcel diameters originating from film to cloud @@ -132,9 +158,6 @@ protected: //- Cloud injection injectionModelList injection_; - //- Transfer with the continuous phase - //transferModelList transfer_; - //- List of film forces forceList forces_; @@ -177,25 +200,28 @@ public: // Access //- Access const reference mu - const areaScalarField& mu() const; + const areaScalarField& mu() const noexcept { return mu_; } //- Access const reference rho - const areaScalarField& rho() const; + const areaScalarField& rho() const noexcept { return rho_; } //- Access const reference sigma - const areaScalarField& sigma() const; + const areaScalarField& sigma() const noexcept { return sigma_; } //- Access const reference Tf - const areaScalarField& Tf() const; + const areaScalarField& Tf() const noexcept { return Tf_; } //- Access const reference Cp - const areaScalarField& Cp() const; + const areaScalarField& Cp() const noexcept { return Cp_; } //- Access to thermo - const liquidMixtureProperties& thermo() const; + const liquidMixtureProperties& thermo() const noexcept + { + return thermo_; + } //- Access to reference temperature - scalar Tref() const; + scalar Tref() const noexcept { return Tref_; } // Transfer fields - to the primary region (lagragian injection) diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.C b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.C index a6c8b42f4a00a5692e4e079cdfabce1f650a9423..bece31267804c598b447cc765ab4ad66c121e267 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.C @@ -29,7 +29,6 @@ License #include "gravityMeshObject.H" #include "turbulentTransportModel.H" #include "turbulentFluidThermoModel.H" -#include "PtrMap.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -102,18 +101,13 @@ const liquidFilmBase& filmTurbulenceModel::film() const tmp<areaScalarField> filmTurbulenceModel::Cw() const { - auto tCw = - tmp<areaScalarField>::New - ( - IOobject - ( - "tCw", - film_.regionMesh().time().timeName(), - film_.regionMesh().thisDb() - ), - film_.regionMesh(), - dimensionedScalar(dimVelocity) - ); + auto tCw = areaScalarField::New + ( + "tCw", + IOobject::NO_REGISTER, + film_.regionMesh(), + dimensionedScalar(dimVelocity, Zero) + ); auto& Cw = tCw.ref(); @@ -195,10 +189,8 @@ tmp<faVectorMatrix> filmTurbulenceModel::primaryRegionFriction areaVectorField& U ) const { - tmp<faVectorMatrix> tshearStress - ( - new faVectorMatrix(U, sqr(U.dimensions())*sqr(dimLength)) - ); + auto tshearStress = + tmp<faVectorMatrix>::New(U, sqr(U.dimensions())*sqr(dimLength)); switch (shearMethod_) { @@ -267,14 +259,10 @@ tmp<faVectorMatrix> filmTurbulenceModel::primaryRegionFriction } } - auto taForce = tmp<areaVectorField>::New + auto taForce = areaVectorField::New ( - IOobject - ( - "taForce", - film_.regionMesh().time().timeName(), - film_.regionMesh().thisDb() - ), + "taForce", + IOobject::NO_REGISTER, film_.regionMesh(), dimensionedVector(sqr(dimVelocity), Zero) ); @@ -352,32 +340,30 @@ tmp<Foam::volSymmTensorField> filmTurbulenceModel::devRhoReff() const << "No valid model for viscous stress calculation" << exit(FatalError); - return volSymmTensorField::null(); + return nullptr; } } tmp<Foam::volScalarField> filmTurbulenceModel::rho() const { - const fvMesh& m = film_.primaryMesh(); + const fvMesh& mesh = film_.primaryMesh(); + if (rhoName_ == "rhoInf") { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "rho", - m.time().timeName(), - m - ), - m, + "rho", + IOobject::NO_REGISTER, + mesh, dimensionedScalar(dimDensity, rhoRef_) ); } - return m.lookupObject<volScalarField>(rhoName_); + return mesh.lookupObject<volScalarField>(rhoName_); } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace areaSurfaceFilmModels diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.H b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.H index 69ce7cea2674e5a96fd2231ece9c5d345c44081f..c6d0fe743b6fb395794e7ad5867fbd75c35dd384 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.H @@ -29,6 +29,69 @@ Class Description Base class for film turbulence models +Usage + Example of the model specification: + \verbatim + { + // Mandatory entries + turbulence <model>; + + <model>Coeffs + { + // Mandatory entries + friction <word>; + shearStress <word>; + + // Optional entries + rho <word>; + + // Conditional entries + + // if rho=rhoInf + rhoInf <scalar>; + + // if friction=DarcyWeisbach + DarcyWeisbach <scalar>; + + // if friction=ManningStrickler + n <scalar>; + + // if shearStress=simple + Cf <scalar>; + } + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + turbulence | Model name | word | yes | - + friction | Friction model | word | yes | - + shearStress | Shear-stress model | word | yes | - + rho | Name of density field | word | no | rho + rhoInf | Reference density | scalar | choice | - + DarcyWeisbach | Friction-model constant | scalar | choice | - + n | Friction-model constant | scalar | choice | - + Cf | Skin-friction coefficient | scalar | choice | - + \endtable + + Options for the \c friction entry: + \verbatim + quadraticProfile | Quadratic-profile model + linearProfile | Linear-profile model + DarcyWeisbach | Darcy-Weisbach model + ManningStrickler | Manning-Strickler model + \endverbatim + + Options for the \c shearStress entry: + \verbatim + simple | Skin-friction coefficient model + wallFunction | Wall-function model + \endverbatim + SourceFiles filmTurbulenceModel.C filmTurbulenceModelNew.C @@ -39,11 +102,7 @@ SourceFiles #define regionFaModels_filmTurbulenceModel_H #include "areaFieldsFwd.H" -#include "runTimeSelectionTables.H" -#include "faMatrices.H" #include "liquidFilmBase.H" -#include "fvMesh.H" -#include "Enum.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -106,13 +165,13 @@ protected: //- Model dictionary const dictionary dict_; - //- Method used + //- Friction model const frictionMethodType method_; - //- Shear method used + //- Shear-stress model const shearMethodType shearMethod_; - //- Name of density field (optional) + //- Name of density field word rhoName_; //- Reference density needed for incompressible calculations diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.C b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.C index 20b764f3ddf43d3f88ed03dd2f61e7b30b3d8eab..eb33b6769c017aa51fb1e81d1ce15afb31ee0ae2 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.C @@ -28,7 +28,6 @@ License #include "laminar.H" #include "addToRunTimeSelectionTable.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.H b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.H index 64488aa23a1b64089a1c2a6f65cccfc770131106..6dfb3ef759d121c66b9c6a582c3a5da08369bcd2 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/filmTurbulenceModel/laminar/laminar.H @@ -37,8 +37,7 @@ SourceFiles #ifndef regionFaModels_surfaceFilmModels_laminar_H #define regionFaModels_surfaceFilmModels_laminar_H -#include "liquidFilm/subModels/kinematic/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.H" -#include "faCFD.H" +#include "filmTurbulenceModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C index dfe9dad3887619680b40e60a10e6e609f51659ce..5f5ddaeaac62707220c1245c0a8ce61ecdbae332 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C @@ -27,9 +27,7 @@ License #include "contactAngleForce.H" #include "addToRunTimeSelectionTable.H" -#include "faCFD.H" #include "unitConversion.H" -#include "meshWavePatchDistMethod.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.C b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.C index 559dbab3b74fc063b489a6e537f37ead2390eece..f09e8a6cd8564b1d671b85c42e363f938650bc17 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.C @@ -27,6 +27,8 @@ License #include "dynamicContactAngleForce.H" #include "addToRunTimeSelectionTable.H" +#include "Function1.H" +#include "distributionModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.H b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.H index 8f2ec84b8813ac112b133ce4ec661acd3aa50751..b1db31df72aba9d27a94ae09424babdbc6685b19 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/force/contactAngleForces/dynamicContactAngleForce/dynamicContactAngleForce.H @@ -86,14 +86,17 @@ SourceFiles #define areaSurfaceFilmModels_dynamicContactAngleForce_H #include "contactAngleForce.H" -#include "Function1.H" -#include "distributionModel.H" #include "Random.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { + +// Forward Declarations +template<class Type> class Function1; +class distributionModel; + namespace regionModels { namespace areaSurfaceFilmModels diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.C b/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.C index ea0c634fce266e9de8ec1f0b9195b2ca89cdfd93..78e2ed4966cbdf10a56a650859b49fac10018751 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.C @@ -81,11 +81,8 @@ forceList::~forceList() tmp<faVectorMatrix> forceList::correct(areaVectorField& U) { - tmp<faVectorMatrix> tResult - ( - new faVectorMatrix(U, dimForce/dimDensity) - ); - faVectorMatrix& result = tResult.ref(); + auto tResult = tmp<faVectorMatrix>::New(U, dimForce/dimDensity); + auto& result = tResult.ref(); forAll(*this, i) { diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.H b/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.H index a778c7626555739c609eeb8ffe39b34c12709657..58b9860aaee82b98a0c37a853799feaf99890bb1 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/force/forceList/forceList.H @@ -29,6 +29,34 @@ Class Description List container for film sources +Usage + Example of the model specification: + \verbatim + { + // Mandatory entries + forces + ( + <forceModel1> + <forceModel2> + ... + ); + + <forceModel1>Coeffs + { + ... + } + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + forces | List of force models | list | yes | - + \endtable + SourceFiles forceList.C @@ -37,9 +65,7 @@ SourceFiles #ifndef forceList_H #define forceList_H -#include "PtrList.H" #include "force.H" -#include "faCFD.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C index 46599c9750006866a60e310c7430f820f753bd13..dd3f931c23a8a0ead04fa5215e434c305cff7dbf 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,9 +28,6 @@ License #include "curvatureSeparation.H" #include "addToRunTimeSelectionTable.H" -#include "Time.H" -#include "stringListOps.H" -#include "cyclicPolyPatch.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -61,9 +58,11 @@ tmp<areaScalarField> curvatureSeparation::calcInvR1 { const dimensionedScalar smallU(dimVelocity, ROOTVSMALL); const areaVectorField UHat(U/(mag(U) + smallU)); - tmp<areaScalarField> tinvR1 + auto tinvR1 = areaScalarField::New ( - new areaScalarField("invR1", UHat & (UHat & -gradNHat_)) + "invR1", + IOobjectOption::NO_REGISTER, + (UHat & (UHat & -gradNHat_)) ); scalarField& invR1 = tinvR1.ref().primitiveFieldRef(); @@ -131,21 +130,17 @@ tmp<scalarField> curvatureSeparation::calcCosAngle // checks if (debug && mesh.time().writeTime()) { - areaScalarField volCosAngle - ( - IOobject + { + areaScalarField volCosAngle ( - "cosAngle", - mesh.time().timeName(), - mesh.thisDb(), - IOobject::NO_READ - ), - mesh, - dimensionedScalar(dimless, Zero) - ); - volCosAngle.primitiveFieldRef() = cosAngle; - volCosAngle.correctBoundaryConditions(); - volCosAngle.write(); + mesh.newIOobject("cosAngle"), + mesh, + dimensionedScalar(dimless, Zero) + ); + volCosAngle.primitiveFieldRef() = cosAngle; + volCosAngle.correctBoundaryConditions(); + volCosAngle.write(); + } } return clamp(cosAngle, scalarMinMax(-1, 1)); @@ -250,65 +245,49 @@ void curvatureSeparation::correct if (debug && mesh.time().writeTime()) { - areaScalarField volFnet - ( - IOobject + { + areaScalarField volFnet ( - "Fnet", - mesh.time().timeName(), - mesh.thisDb(), - IOobject::NO_READ - ), - mesh, - dimensionedScalar(dimForce, Zero) - ); - volFnet.primitiveFieldRef() = Fnet; - volFnet.write(); - - areaScalarField areaSeparated - ( - IOobject + mesh.newIOobject("Fnet"), + mesh, + dimensionedScalar(dimForce, Zero) + ); + volFnet.primitiveFieldRef() = Fnet; + volFnet.write(); + } + + { + areaScalarField areaSeparated ( - "separated", - mesh.time().timeName(), - mesh.thisDb(), - IOobject::NO_READ - ), - mesh, - dimensionedScalar(dimMass, Zero) - ); - areaSeparated.primitiveFieldRef() = separated; - areaSeparated.write(); - - areaScalarField areaMassToInject - ( - IOobject + mesh.newIOobject("separated"), + mesh, + dimensionedScalar(dimMass, Zero) + ); + areaSeparated.primitiveFieldRef() = separated; + areaSeparated.write(); + } + + { + areaScalarField areaMassToInject ( - "massToInject", - mesh.time().timeName(), - mesh.thisDb(), - IOobject::NO_READ - ), - mesh, - dimensionedScalar(dimMass, Zero) - ); - areaMassToInject.primitiveFieldRef() = massToInject; - areaMassToInject.write(); - - areaScalarField areaInvR1 - ( - IOobject + mesh.newIOobject("massToInject"), + mesh, + dimensionedScalar(dimMass, Zero) + ); + areaMassToInject.primitiveFieldRef() = massToInject; + areaMassToInject.write(); + } + + { + areaScalarField areaInvR1 ( - "InvR1", - mesh.time().timeName(), - mesh.thisDb(), - IOobject::NO_READ - ), - mesh, - dimensionedScalar(inv(dimLength), Zero) - ); - areaInvR1.primitiveFieldRef() = invR1; - areaInvR1.write(); + mesh.newIOobject("InvR1"), + mesh, + dimensionedScalar(inv(dimLength), Zero) + ); + areaInvR1.primitiveFieldRef() = invR1; + areaInvR1.write(); + } } injectionModel::correct(); diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.H b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.H index 0ec037e43263ff7f26f370b7184008359ad7482e..07dbef9e18a2f8129b333a44fdb066a03ac5cefa 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.H @@ -38,9 +38,45 @@ Description If F_sum < 0, the film separates. Similarly, if F_sum > 0 the film will remain attached. - Based on description given by - Owen and D. J. Ryley. The flow of thin liquid films around corners. - International Journal of Multiphase Flow, 11(1):51-62, 1985. + Reference: + \verbatim + Owen, I., & Ryley, D. J. (1985). + The flow of thin liquid films around corners. + International journal of multiphase flow, 11(1), 51-62. + \endverbatim + +Usage + Example of the model specification: + \verbatim + injectionModels + ( + curvatureSeparation + ); + + curvatureSeparationCoeffs + { + // Optional entries + deltaByR1Min <scalar>; + definedPatchRadii <scalar>; + fThreshold <scalar>; + minInvR1 <scalar>; + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + deltaByR1Min | Minimum gravity driven film thickness | scalar | no | 0 + definedPatchRadii | Patch radius i | scalar | no | 0 + fThreshold | Threshold force for separation | scalar | no | 1e-8 + minInvR1 | Minimum inv R1 for separation | scalar | no | 5 + \endtable + + The inherited entries are elaborated in: + - \link injectionModel.H \endlink SourceFiles curvatureSeparation.C @@ -51,7 +87,6 @@ SourceFiles #define curvatureSeparation_H #include "injectionModel.H" -#include "faCFD.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -89,8 +124,7 @@ protected: //- Minimum gravity driven film thickness (non-dimensionalised delta/R1) scalar deltaByR1Min_; - //- List of radii for patches - if patch not defined, radius - //- calculated based on mesh geometry + //- Patch radius scalar definedPatchRadii_; //- Magnitude of gravity vector diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModel/injectionModel.H b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModel/injectionModel.H index 5bf117f7a9779ec9f6c6b5168a14d95959d18e20..fe6a86363de81ba343e1718a583316ebcd211383 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModel/injectionModel.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModel/injectionModel.H @@ -40,8 +40,6 @@ SourceFiles #define injectionModel_H #include "filmSubModelBase.H" -#include "runTimeSelectionTables.H" -#include "scalarField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModelList/injectionModelList.H b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModelList/injectionModelList.H index b159f9486a6f7242dfa3dbc3706468be0bb103ee..b57bb02bce4af8f88f77476786cb2d26bd668a76 100644 --- a/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModelList/injectionModelList.H +++ b/src/regionFaModels/liquidFilm/subModels/kinematic/injectionModel/injectionModelList/injectionModelList.H @@ -29,6 +29,34 @@ Class Description List container for film injection models +Usage + Example of the model specification: + \verbatim + { + // Mandatory entries + injectionModels + ( + <injectionModel1> + <injectionModel2> + ... + ); + + <injectionModel1>Coeffs + { + ... + } + + // Inherited entries + ... + } + \endverbatim + + where the entries mean: + \table + Property | Description | Type | Reqd | Deflt + injectionModels | List of injection models | list | yes | - + \endtable + SourceFiles injectionModelList.C @@ -37,10 +65,8 @@ SourceFiles #ifndef injectionModelList_H #define injectionModelList_H -#include "PtrList.H" #include "injectionModel.H" #include "filmSubModelBase.H" -#include "scalarField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/regionFaModel/regionFaModel.H b/src/regionFaModels/regionFaModel/regionFaModel.H index f10b3a14b80adcb618572f2294fa4c521c08d358..2a36c2c1741b882713c8e2cd405fdb064842811c 100644 --- a/src/regionFaModels/regionFaModel/regionFaModel.H +++ b/src/regionFaModels/regionFaModel/regionFaModel.H @@ -34,25 +34,26 @@ Usage \verbatim <patchName> { - // Mandatory entries (runtime modifiable) - region <regionName>; - active true; + // Mandatory entries + region <word>; + active <bool>; - // Optional entries (runtime modifiable) - infoOutput false; <model>Coeffs { // subdictionary entries } - // Mandatory/Optional (derived) entries + // Optional entries + infoOutput <bool>; + + // Inherited entries ... } \endverbatim where the entries mean: \table - Property | Description | Type | Reqd | Dflt + Property | Description | Type | Reqd | Deflt region | Name of operand region | word | yes | - active | Flag to activate the model | bool | yes | - infoOutput | Flag to activate information output | bool | no | false @@ -68,11 +69,6 @@ SourceFiles #define Foam_regionFaModel_H #include "volMesh.H" -#include "IOdictionary.H" -#include "Switch.H" -#include "labelList.H" -#include "areaFields.H" -#include "faMesh.H" #include "volSurfaceMapping.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/thermalShell/thermalShell.C b/src/regionFaModels/thermalShell/thermalShell.C index 3fa2465dd9ee12c2823d3ab78120bc5ad56a1dba..7d625ecfe4d61f7c25c5ea117fbec189a2ee44ed 100644 --- a/src/regionFaModels/thermalShell/thermalShell.C +++ b/src/regionFaModels/thermalShell/thermalShell.C @@ -28,7 +28,6 @@ License #include "thermalShell.H" #include "addToRunTimeSelectionTable.H" #include "fvPatchFields.H" -#include "zeroGradientFaPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -90,10 +89,7 @@ tmp<areaScalarField> thermalShell::qr() void thermalShell::solveEnergy() { - if (debug) - { - InfoInFunction << endl; - } + DebugInFunction << endl; const areaScalarField rhoCph(Cp()*rho()*h_); @@ -182,73 +178,43 @@ void thermalShell::evolveRegion() const tmp<areaScalarField> thermalShell::Cp() const { - return tmp<areaScalarField> + return areaScalarField::New ( - new areaScalarField - ( - IOobject - ( - "Cps", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - regionMesh(), - dimensionedScalar(dimEnergy/dimTemperature/dimMass, thermo_.Cp()), - faPatchFieldBase::zeroGradientType() - ) + "Cps", + IOobject::NO_REGISTER, + regionMesh(), + dimensionedScalar(dimEnergy/dimTemperature/dimMass, thermo_.Cp()), + faPatchFieldBase::zeroGradientType() ); } const tmp<areaScalarField> thermalShell::rho() const { - return tmp<areaScalarField> + return areaScalarField::New ( - new areaScalarField - ( - IOobject - ( - "rhos", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - regionMesh(), - dimensionedScalar(dimDensity, thermo_.rho()), - faPatchFieldBase::zeroGradientType() - ) + "rhos", + IOobject::NO_REGISTER, + regionMesh(), + dimensionedScalar(dimDensity, thermo_.rho()), + faPatchFieldBase::zeroGradientType() ); } const tmp<areaScalarField> thermalShell::kappa() const { - return tmp<areaScalarField> + return areaScalarField::New ( - new areaScalarField + "kappas", + IOobject::NO_REGISTER, + regionMesh(), + dimensionedScalar ( - IOobject - ( - "kappas", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - regionMesh(), - dimensionedScalar - ( - dimPower/dimLength/dimTemperature, - thermo_.kappa() - ), - faPatchFieldBase::zeroGradientType() - ) + dimPower/dimLength/dimTemperature, + thermo_.kappa() + ), + faPatchFieldBase::zeroGradientType() ); } diff --git a/src/regionFaModels/thermalShell/thermalShell.H b/src/regionFaModels/thermalShell/thermalShell.H index e6e7939eeba8174a86f78fd87a2d3a2a1eec0522..caf0574803ae43e305d37e613fbfe711eebc74cb 100644 --- a/src/regionFaModels/thermalShell/thermalShell.H +++ b/src/regionFaModels/thermalShell/thermalShell.H @@ -37,34 +37,35 @@ Usage \verbatim <patchName> { - // Mandatory/Optional (inherited) entries - ... - - // Mandatory entries (unmodifiable) + // Mandatory entries thermalShellModel thermalShell; thermo { // subdictionary entries } - // Mandatory/Optional (derived) entries + // Optional entries + qr <word>; + thickness <scalar>; + + // Inherited entries ... + nNonOrthCorr <int>; // read from another dict } \endverbatim where the entries mean: \table - Property | Description | Type | Reqd | Dflt - thermalShellModel | Type name: thermalShell | word | yes | - + Property | Description | Type | Reqd | Deflt + thermalShellModel | Type name: thermalShell | word | yes | - thermo | Solid thermal properties | dictionary | yes | - + qr | Name of radiative heat flux field | word | no | none + thickness | Uniform film thickness [m] | scalar | choice | - \endtable The inherited entries are elaborated in: - \link thermalShellModel.H \endlink -See also - - Foam::regionModels::thermalShellModels::thermalShellModel - SourceFiles thermalShell.C thermalShellI.H @@ -77,7 +78,6 @@ SourceFiles #include "volFieldsFwd.H" #include "thermalShellModel.H" #include "solidProperties.H" -#include "faMesh.H" #include "faCFD.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -122,16 +122,16 @@ protected: // Source term fields - //- External surface energy source / [J/m2/s] + //- External surface energy source [J/m2/s] areaScalarField qs_; - //- Thickness + //- Film thickness [m] areaScalarField h_; //- Name of the primary region radiative flux const word qrName_; - //- Uniform thickness + //- Uniform film thickness [m] scalar thickness_; @@ -177,7 +177,7 @@ public: //- Return the film specific heat capacity [J/kg/K] const tmp<areaScalarField> Cp() const; - //- Return density [Kg/m3] + //- Return density [kg/m3] const tmp<areaScalarField> rho() const; //- Return thermal conductivity [W/m/K] diff --git a/src/regionFaModels/thermalShellModel/thermalShellModel.C b/src/regionFaModels/thermalShellModel/thermalShellModel.C index 4e9274a78d4105f7e71e7b0a46ff47083d49b73a..dab5d08c608083e4041a5592bee3a495804046cb 100644 --- a/src/regionFaModels/thermalShellModel/thermalShellModel.C +++ b/src/regionFaModels/thermalShellModel/thermalShellModel.C @@ -26,9 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "thermalShellModel.H" -#include "faMesh.H" -#include "fvMesh.H" -#include "fvPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionFaModels/thermalShellModel/thermalShellModel.H b/src/regionFaModels/thermalShellModel/thermalShellModel.H index 920a14bc623f0b264cb63876a0cf950f19084f02..a56a48b3afaf2589d929b9222b354e0288d8670a 100644 --- a/src/regionFaModels/thermalShellModel/thermalShellModel.H +++ b/src/regionFaModels/thermalShellModel/thermalShellModel.H @@ -34,16 +34,13 @@ Usage \verbatim <patchName> { - // Mandatory/Optional entries - ... - // Mandatory entries - T <Tname>; + T <word>; // Optional entries - thermalShellModel <thermalShellModelName>; + thermalShellModel <word>; - // Derived entries + // Inherited entries ... } \endverbatim @@ -53,7 +50,7 @@ Usage Property | Description | Type | Reqd | Deflt T | Name of operand temperature field | word | yes | - thermalShellModel | Name of thermal-shell model <!-- - --> | word | no | thermalShell + --> | word | choice | - \endtable The inherited entries are elaborated in: @@ -68,8 +65,6 @@ SourceFiles #ifndef Foam_regionModels_thermalShellModel_H #define Foam_regionModels_thermalShellModel_H -#include "runTimeSelectionTables.H" -#include "autoPtr.H" #include "areaFieldsFwd.H" #include "volFieldsFwd.H" #include "regionFaModel.H" diff --git a/src/regionFaModels/vibrationShellModel/vibrationShellModel.C b/src/regionFaModels/vibrationShellModel/vibrationShellModel.C index f63bfdee4cc1dfe7426365ecf86364173311433b..7ce1aaf7eecc5ac7a6bb98a6c1af4f1e705ab9f6 100644 --- a/src/regionFaModels/vibrationShellModel/vibrationShellModel.C +++ b/src/regionFaModels/vibrationShellModel/vibrationShellModel.C @@ -26,9 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "vibrationShellModel.H" -#include "faMesh.H" -#include "fvMesh.H" -#include "fvPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -40,7 +37,6 @@ namespace regionModels // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // defineTypeNameAndDebug(vibrationShellModel, 0); - defineRunTimeSelectionTable(vibrationShellModel, dictionary); // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -53,8 +49,6 @@ vibrationShellModel::vibrationShellModel ) : regionFaModel(mesh, "vibratingShell", modelType, dict, true), - pName_(dict.get<word>("p")), - pa_(mesh.lookupObject<volScalarField>(pName_)), w_ ( IOobject @@ -80,8 +74,10 @@ vibrationShellModel::vibrationShellModel regionMesh(), dimensionedScalar(dimAcceleration, Zero) ), - faOptions_(Foam::fa::options::New(mesh)), - solid_(dict.subDict("solid")) + solid_(dict.subDict("solid")), + pName_(dict.get<word>("p")), + pa_(mesh.lookupObject<volScalarField>(pName_)), + faOptions_(Foam::fa::options::New(mesh)) { if (faOptions_.optionList::empty()) { diff --git a/src/regionFaModels/vibrationShellModel/vibrationShellModel.H b/src/regionFaModels/vibrationShellModel/vibrationShellModel.H index 15747379ae52210e408bab585451a658807c8a06..e8053ec526dd210ac1cd5674d9f8312397586476 100644 --- a/src/regionFaModels/vibrationShellModel/vibrationShellModel.H +++ b/src/regionFaModels/vibrationShellModel/vibrationShellModel.H @@ -34,19 +34,16 @@ Usage \verbatim <patchName> { - // Mandatory/Optional entries - ... - // Mandatory entries - vibrationShellModel <thermalShellModelName>; - p <pName>; + vibrationShellModel <word>; + p <word>; solid { // subdictionary entries } - // Mandatory/Optional (derived) entries + // Inherited entries ... } \endverbatim @@ -71,8 +68,6 @@ SourceFiles #ifndef Foam_regionModels_vibrationShellModel_H #define Foam_regionModels_vibrationShellModel_H -#include "runTimeSelectionTables.H" -#include "autoPtr.H" #include "areaFieldsFwd.H" #include "volFieldsFwd.H" #include "regionFaModel.H" @@ -98,24 +93,24 @@ protected: // Protected Data - //- Name of the coupled field in the primary region - word pName_; - - //- Primary region acoustic pressure - const volScalarField& pa_; - //- Shell displacement areaScalarField w_; //- Shell acceleration areaScalarField a_; - //- Pointer to faOptions - Foam::fa::options& faOptions_; - //- Solid properties solidProperties solid_; + //- Name of the coupled field in the primary region + word pName_; + + //- Primary region acoustic pressure + const volScalarField& pa_; + + //- Reference to faOptions + Foam::fa::options& faOptions_; + public: diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H index 3b2c76c1e56c6c2c6fe3f91bc12e314a655be992..ea90811c9b19bd1e2bf3dcb7c9bb3210e7f8b2ac 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H @@ -183,18 +183,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new filmPyrolysisRadiativeCoupledMixedFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference filmPyrolysisRadiativeCoupledMixedFvPatchScalarField ( @@ -202,20 +190,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new filmPyrolysisRadiativeCoupledMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisTemperatureCoupled/filmPyrolysisTemperatureCoupledFvPatchScalarField.H b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisTemperatureCoupled/filmPyrolysisTemperatureCoupledFvPatchScalarField.H index 3cc10f5ce67fd6e87ffe3f0f1e128d2d6aadb90a..94e43f4ea85bd210ed2bba39d17284d390eafcb6 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisTemperatureCoupled/filmPyrolysisTemperatureCoupledFvPatchScalarField.H +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisTemperatureCoupled/filmPyrolysisTemperatureCoupledFvPatchScalarField.H @@ -124,15 +124,6 @@ public: const filmPyrolysisTemperatureCoupledFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new filmPyrolysisTemperatureCoupledFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference filmPyrolysisTemperatureCoupledFvPatchScalarField ( @@ -140,16 +131,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new filmPyrolysisTemperatureCoupledFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.C b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.C index 47642607c373dd935a6f838ee1132267fb90ad49..f7a080808d36bcd368f7e58af04e1f39d9b8a4af 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.C +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.C @@ -192,7 +192,7 @@ void Foam::filmPyrolysisVelocityCoupledFvPatchVectorField::updateCoeffs() } const scalarField UAvePyr(-phiPyr/patch().magSf()); - const vectorField& nf = patch().nf(); + tmp<vectorField> nf(patch().nf()); // Evaluate velocity diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.H b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.H index 6bbd16709ef627545bed30997fee09255c954748..d8a77ee110c8f2a3f96fe58db99909fc308a1626 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.H +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisVelocityCoupled/filmPyrolysisVelocityCoupledFvPatchVectorField.H @@ -125,15 +125,6 @@ public: const filmPyrolysisVelocityCoupledFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new filmPyrolysisVelocityCoupledFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference filmPyrolysisVelocityCoupledFvPatchVectorField ( @@ -141,16 +132,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new filmPyrolysisVelocityCoupledFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/regionModels/regionModel/regionModel1D/regionModel1D.C b/src/regionModels/regionModel/regionModel1D/regionModel1D.C index 4b3e66278fcb414d29ed8a9ec435face1311a9bb..b365b5c346d138ff3aaf7ed839e82569fd73edec 100644 --- a/src/regionModels/regionModel/regionModel1D/regionModel1D.C +++ b/src/regionModels/regionModel/regionModel1D/regionModel1D.C @@ -42,7 +42,6 @@ namespace regionModels void Foam::regionModels::regionModel1D::constructMeshObjects() { - nMagSfPtr_.reset ( new surfaceScalarField @@ -53,7 +52,8 @@ void Foam::regionModels::regionModel1D::constructMeshObjects() time().timeName(), regionMesh(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), regionMesh(), dimensionedScalar(dimArea, Zero) @@ -197,8 +197,8 @@ Foam::tmp<Foam::labelField> Foam::regionModels::regionModel1D::moveMesh const scalar minDelta ) { - tmp<labelField> tcellMoveMap(new labelField(regionMesh().nCells(), Zero)); - labelField& cellMoveMap = tcellMoveMap.ref(); + auto tcellMoveMap = tmp<labelField>::New(regionMesh().nCells(), Zero); + auto& cellMoveMap = tcellMoveMap.ref(); if (!moveMesh_) { diff --git a/src/regionModels/regionModel/singleLayerRegion/singleLayerRegion.C b/src/regionModels/regionModel/singleLayerRegion/singleLayerRegion.C index 871fdcc199ab48eab5bd20100b31fdd04c2ca597..94f659840043eccb87125cc83866e4528807e5d9 100644 --- a/src/regionModels/regionModel/singleLayerRegion/singleLayerRegion.C +++ b/src/regionModels/regionModel/singleLayerRegion/singleLayerRegion.C @@ -56,7 +56,8 @@ void Foam::regionModels::singleLayerRegion::constructMeshObjects() time_.timeName(), regionMesh(), IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), regionMesh(), dimensionedVector(dimless, Zero), @@ -75,7 +76,8 @@ void Foam::regionModels::singleLayerRegion::constructMeshObjects() time_.timeName(), regionMesh(), IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), regionMesh(), dimensionedScalar(dimArea, Zero), diff --git a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/filmHeightInletVelocity/filmHeightInletVelocityFvPatchVectorField.H b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/filmHeightInletVelocity/filmHeightInletVelocityFvPatchVectorField.H index 91b6940c3bd474c92bffdcc090af637b9a05a5b2..7327c991a23441a0cdd9d70a63eec8db96ebf1ea 100644 --- a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/filmHeightInletVelocity/filmHeightInletVelocityFvPatchVectorField.H +++ b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/filmHeightInletVelocity/filmHeightInletVelocityFvPatchVectorField.H @@ -147,15 +147,6 @@ public: const filmHeightInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new filmHeightInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference filmHeightInletVelocityFvPatchVectorField ( @@ -163,16 +154,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new filmHeightInletVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltHeight/inclinedFilmNusseltHeightFvPatchScalarField.H b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltHeight/inclinedFilmNusseltHeightFvPatchScalarField.H index 39bb8a36ad2c33ed50ddd027b804f04868b3bfd1..8012c12ace72e8d53a1548c62ffb5165d50de1f3 100644 --- a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltHeight/inclinedFilmNusseltHeightFvPatchScalarField.H +++ b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltHeight/inclinedFilmNusseltHeightFvPatchScalarField.H @@ -110,15 +110,6 @@ public: const inclinedFilmNusseltHeightFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new inclinedFilmNusseltHeightFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference inclinedFilmNusseltHeightFvPatchScalarField ( @@ -126,16 +117,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new inclinedFilmNusseltHeightFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltInletVelocity/inclinedFilmNusseltInletVelocityFvPatchVectorField.H b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltInletVelocity/inclinedFilmNusseltInletVelocityFvPatchVectorField.H index cd5d357264af8a88b7e1a50bb24a2be5169eca76..eadaf40e350df7d79ee55d3bed9cb05d79f56d9e 100644 --- a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltInletVelocity/inclinedFilmNusseltInletVelocityFvPatchVectorField.H +++ b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/inclinedFilmNusseltInletVelocity/inclinedFilmNusseltInletVelocityFvPatchVectorField.H @@ -110,15 +110,6 @@ public: const inclinedFilmNusseltInletVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new inclinedFilmNusseltInletVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference inclinedFilmNusseltInletVelocityFvPatchVectorField ( @@ -126,19 +117,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new inclinedFilmNusseltInletVelocityFvPatchVectorField - ( - *this, iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/alphatFilmWallFunction/alphatFilmWallFunctionFvPatchScalarField.H b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/alphatFilmWallFunction/alphatFilmWallFunctionFvPatchScalarField.H index 18f448f15f40726301bef49660cdf72ef750766f..9f1cff6ee5a0a89930cb40e8052a6e7d141994e3 100644 --- a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/alphatFilmWallFunction/alphatFilmWallFunctionFvPatchScalarField.H +++ b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/alphatFilmWallFunction/alphatFilmWallFunctionFvPatchScalarField.H @@ -162,15 +162,6 @@ public: const alphatFilmWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatFilmWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphatFilmWallFunctionFvPatchScalarField ( @@ -178,16 +169,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatFilmWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/nutkFilmWallFunction/nutkFilmWallFunctionFvPatchScalarField.H b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/nutkFilmWallFunction/nutkFilmWallFunctionFvPatchScalarField.H index d7ebbf2c457faa5426da311b57f619677ca11812..0b4099ec0eca5dbc9d3aa53f3b85979429bc90ad 100644 --- a/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/nutkFilmWallFunction/nutkFilmWallFunctionFvPatchScalarField.H +++ b/src/regionModels/surfaceFilmModels/derivedFvPatchFields/wallFunctions/nutkFilmWallFunction/nutkFilmWallFunctionFvPatchScalarField.H @@ -158,15 +158,6 @@ public: const nutkFilmWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new nutkFilmWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference nutkFilmWallFunctionFvPatchScalarField ( @@ -174,16 +165,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new nutkFilmWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/surfaceFilmModels/functionObjects/filmFlux/filmFlux.C b/src/regionModels/surfaceFilmModels/functionObjects/filmFlux/filmFlux.C index 305c579bf8189407111912d452cbd1dc5756cf1d..a69a5861678932edd29b1d2a3064e5bffa6b7149 100644 --- a/src/regionModels/surfaceFilmModels/functionObjects/filmFlux/filmFlux.C +++ b/src/regionModels/surfaceFilmModels/functionObjects/filmFlux/filmFlux.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -99,7 +99,7 @@ bool Foam::functionObjects::filmFlux::execute() ( resultName_, time_.timeName(), - filmMesh, + filmMesh.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -108,7 +108,7 @@ bool Foam::functionObjects::filmFlux::execute() dimensionedScalar(dimMass/dimTime, Zero) ); - filmMesh.objectRegistry::store(resultPtr); + regIOobject::store(resultPtr); } auto& result = *resultPtr; @@ -123,7 +123,7 @@ bool Foam::functionObjects::filmFlux::execute() ( "height", time_.timeName(), - filmMesh, + filmMesh.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER @@ -133,7 +133,7 @@ bool Foam::functionObjects::filmFlux::execute() fvPatchFieldBase::zeroGradientType() ); - auto& heightc = height.ref(); + auto& heightc = height.internalFieldRef(); heightc = max(dimensionedScalar("eps", dimLength, ROOTVSMALL), vol/magSf()); height.correctBoundaryConditions(); diff --git a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C index 58a6beeb1b5bf2e992aa77a53d99e25581e0e119..a35106bc1f193072680f996b046f3ecac0c5eeb1 100644 --- a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C +++ b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2020 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -108,14 +108,9 @@ void kinematicSingleLayer::transferPrimaryRegionSourceFields() { DebugInFunction << endl; - volScalarField::Boundary& rhoSpPrimaryBf = - rhoSpPrimary_.boundaryFieldRef(); - - volVectorField::Boundary& USpPrimaryBf = - USpPrimary_.boundaryFieldRef(); - - volScalarField::Boundary& pSpPrimaryBf = - pSpPrimary_.boundaryFieldRef(); + auto& rhoSpPrimaryBf = rhoSpPrimary_.boundaryFieldRef(); + auto& USpPrimaryBf = USpPrimary_.boundaryFieldRef(); + auto& pSpPrimaryBf = pSpPrimary_.boundaryFieldRef(); // Convert accumulated source terms into per unit area per unit time const scalar deltaT = time_.deltaTValue(); @@ -161,18 +156,11 @@ void kinematicSingleLayer::transferPrimaryRegionSourceFields() tmp<volScalarField> kinematicSingleLayer::pu() { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField + IOobject::scopedName(typeName, "pu"), + IOobject::NO_REGISTER, ( - IOobject - ( - typeName + ":pu", - time_.timeName(), - regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), pPrimary_ // pressure (mapped from primary region) - pSp_ // accumulated particle impingement - fvc::laplacian(sigma_, delta_) // surface tension @@ -183,18 +171,11 @@ tmp<volScalarField> kinematicSingleLayer::pu() tmp<volScalarField> kinematicSingleLayer::pp() { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField + IOobject::scopedName(typeName, "pp"), + IOobject::NO_REGISTER, ( - IOobject - ( - typeName + ":pp", - time_.timeName(), - regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), -rho_*gNormClipped() // hydrostatic effect only ) ); @@ -1084,17 +1065,10 @@ void kinematicSingleLayer::info() tmp<volScalarField::Internal> kinematicSingleLayer::Srho() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - typeName + ":Srho", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "Srho"), + IOobject::NO_REGISTER, primaryMesh(), dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); @@ -1106,17 +1080,10 @@ tmp<volScalarField::Internal> kinematicSingleLayer::Srho const label i ) const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - typeName + ":Srho(" + Foam::name(i) + ")", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "Srho(" + Foam::name(i) + ")"), + IOobject::NO_REGISTER, primaryMesh(), dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); @@ -1125,17 +1092,10 @@ tmp<volScalarField::Internal> kinematicSingleLayer::Srho tmp<volScalarField::Internal> kinematicSingleLayer::Sh() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - typeName + ":Sh", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "Sh"), + IOobject::NO_REGISTER, primaryMesh(), dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); diff --git a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayerI.H b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayerI.H index 5a022e964b3a0a06e355666fa66b57d84e96acdc..9cff5b9bd705b04e7a68487cc541184c02714067 100644 --- a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayerI.H +++ b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayerI.H @@ -211,45 +211,25 @@ inline tmp<volScalarField> kinematicSingleLayer::deltaMass() const inline tmp<volScalarField> kinematicSingleLayer::gNorm() const { - tmp<volScalarField> tgNorm + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "gNorm", - time().timeName(), - regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - g_ & nHat() - ) + "gNorm", + IOobject::NO_REGISTER, + g_ & nHat() ); - - return tgNorm; } inline tmp<volScalarField> kinematicSingleLayer::gNormClipped() const { - tmp<volScalarField> tgNormClipped + auto tgNormClipped = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "gNormClipped", - time().timeName(), - regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - g_ & nHat() - ) + "gNormClipped", + IOobject::NO_REGISTER, + g_ & nHat() ); + auto& gNormClipped = tgNormClipped.ref(); - volScalarField& gNormClipped = tgNormClipped.ref(); gNormClipped.clamp_max(0); return tgNormClipped; @@ -258,25 +238,15 @@ inline tmp<volScalarField> kinematicSingleLayer::gNormClipped() const inline tmp<volVectorField> kinematicSingleLayer::gTan() const { - tmp<volVectorField> tgTan + return volVectorField::New ( - new volVectorField - ( - IOobject - ( - "gTan", - time().timeName(), - regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - g_ - nHat()*gNorm() - ) + "gTan", + IOobject::NO_REGISTER, + g_ - nHat()*gNorm() ); - - return tgTan; } + inline tmp<vectorField> kinematicSingleLayer::gTan ( const label patchI @@ -284,7 +254,7 @@ inline tmp<vectorField> kinematicSingleLayer::gTan { const vectorField& nH = nHat().boundaryField()[patchI]; const vector& g = g_.value(); - tmp<vectorField> tgTan(new vectorField(g - nH*(g & nH))); + tmp<vectorField> tgTan(g - nH*(g & nH)); return tgTan; } diff --git a/src/regionModels/surfaceFilmModels/noFilm/noFilm.C b/src/regionModels/surfaceFilmModels/noFilm/noFilm.C index 7cad81cd1ea7e5dfea99bdeb23197be8e01eb26b..977eb4ec839ff98a5c9bc6fff591a8ab5e6cdd15 100644 --- a/src/regionModels/surfaceFilmModels/noFilm/noFilm.C +++ b/src/regionModels/surfaceFilmModels/noFilm/noFilm.C @@ -74,17 +74,10 @@ Foam::scalar noFilm::CourantNumber() const tmp<volScalarField::Internal> noFilm::Srho() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - "noFilm::Srho", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noFilm", "Srho"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); @@ -93,17 +86,10 @@ tmp<volScalarField::Internal> noFilm::Srho() const tmp<volScalarField::Internal> noFilm::Srho(const label i) const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - "noFilm::Srho(" + Foam::name(i) + ")", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noFilm", "Srho(" + Foam::name(i) + ")"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); @@ -112,17 +98,10 @@ tmp<volScalarField::Internal> noFilm::Srho(const label i) const tmp<volScalarField::Internal> noFilm::Sh() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - "noFilm::Sh", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName("noFilm", "Sh"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/constantFilmThermo/constantFilmThermo.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/constantFilmThermo/constantFilmThermo.C index 92d35fc01f5bef895a69038a8bdada6b18aa7d0e..0dd56f30e6fb404301fd05c108e49aaf96b3996d 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/constantFilmThermo/constantFilmThermo.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/constantFilmThermo/constantFilmThermo.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -261,22 +262,13 @@ scalar constantFilmThermo::Tb(const scalar p) const tmp<volScalarField> constantFilmThermo::rho() const { - tmp<volScalarField> trho + auto trho = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ':' + rho0_.name_, - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimDensity, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + IOobject::scopedName(type(), rho0_.name_), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimDensity, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); trho.ref().primitiveFieldRef() = this->rho(0, 0); @@ -288,22 +280,13 @@ tmp<volScalarField> constantFilmThermo::rho() const tmp<volScalarField> constantFilmThermo::mu() const { - tmp<volScalarField> tmu + auto tmu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ':' + mu0_.name_, - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimPressure*dimTime, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), mu0_.name_), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimPressure*dimTime, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); tmu.ref().primitiveFieldRef() = this->mu(0, 0); @@ -315,22 +298,13 @@ tmp<volScalarField> constantFilmThermo::mu() const tmp<volScalarField> constantFilmThermo::sigma() const { - tmp<volScalarField> tsigma + auto tsigma = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ':' + sigma0_.name_, - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimMass/sqr(dimTime), Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), sigma0_.name_), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimMass/sqr(dimTime), Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); tsigma.ref().primitiveFieldRef() = this->sigma(0, 0); @@ -342,22 +316,13 @@ tmp<volScalarField> constantFilmThermo::sigma() const tmp<volScalarField> constantFilmThermo::Cp() const { - tmp<volScalarField> tCp + auto tCp = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ':' + Cp0_.name_, - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimEnergy/dimMass/dimTemperature, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), Cp0_.name_), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimEnergy/dimMass/dimTemperature, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); tCp.ref().primitiveFieldRef() = this->Cp(0, 0); @@ -369,22 +334,13 @@ tmp<volScalarField> constantFilmThermo::Cp() const tmp<volScalarField> constantFilmThermo::kappa() const { - tmp<volScalarField> tkappa + auto tkappa = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ':' + kappa0_.name_, - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimPower/dimLength/dimTemperature, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), kappa0_.name_), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimPower/dimLength/dimTemperature, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); tkappa.ref().primitiveFieldRef() = this->kappa(0, 0); diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/liquidFilmThermo/liquidFilmThermo.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/liquidFilmThermo/liquidFilmThermo.C index bded086e11522f0f2af160ba02fa37d2eaff38dd..d0a70fe70248879d41b150c01d84e1844e34bbd2 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/liquidFilmThermo/liquidFilmThermo.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmThermoModel/liquidFilmThermo/liquidFilmThermo.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -244,24 +245,14 @@ scalar liquidFilmThermo::Tb(const scalar p) const tmp<volScalarField> liquidFilmThermo::rho() const { - tmp<volScalarField> trho + auto trho = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ":rho", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimDensity, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + IOobject::scopedName(type(), "rho"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimDensity, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); - scalarField& rho = trho.ref().primitiveFieldRef(); if (useReferenceValues_) @@ -289,24 +280,14 @@ tmp<volScalarField> liquidFilmThermo::rho() const tmp<volScalarField> liquidFilmThermo::mu() const { - tmp<volScalarField> tmu + auto tmu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ":mu", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimPressure*dimTime, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), "mu"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimPressure*dimTime, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); - scalarField& mu = tmu.ref().primitiveFieldRef(); if (useReferenceValues_) @@ -334,24 +315,14 @@ tmp<volScalarField> liquidFilmThermo::mu() const tmp<volScalarField> liquidFilmThermo::sigma() const { - tmp<volScalarField> tsigma + auto tsigma = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ":sigma", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimMass/sqr(dimTime), Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), "sigma"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimMass/sqr(dimTime), Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); - scalarField& sigma = tsigma.ref().primitiveFieldRef(); if (useReferenceValues_) @@ -379,24 +350,14 @@ tmp<volScalarField> liquidFilmThermo::sigma() const tmp<volScalarField> liquidFilmThermo::Cp() const { - tmp<volScalarField> tCp + auto tCp = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ":Cp", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimEnergy/dimMass/dimTemperature, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), "Cp"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimEnergy/dimMass/dimTemperature, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); - scalarField& Cp = tCp.ref().primitiveFieldRef(); if (useReferenceValues_) @@ -424,24 +385,14 @@ tmp<volScalarField> liquidFilmThermo::Cp() const tmp<volScalarField> liquidFilmThermo::kappa() const { - tmp<volScalarField> tkappa + auto tkappa = volScalarField::New ( - new volScalarField - ( - IOobject - ( - type() + ":kappa", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimPower/dimLength/dimTemperature, Zero), - extrapolatedCalculatedFvPatchScalarField::typeName - ) + IOobject::scopedName(type(), "kappa"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimPower/dimLength/dimTemperature, Zero), + extrapolatedCalculatedFvPatchScalarField::typeName ); - scalarField& kappa = tkappa.ref().primitiveFieldRef(); if (useReferenceValues_) diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmTurbulenceModel/laminar/laminar.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmTurbulenceModel/laminar/laminar.C index e91094ada8593ca2a61531ec44030b4f6d39ee02..28fc595be55a3c2d9d0d0d21fa3bb44aef6fcd93 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/filmTurbulenceModel/laminar/laminar.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/filmTurbulenceModel/laminar/laminar.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -72,22 +73,13 @@ laminar::~laminar() tmp<volVectorField> laminar::Us() const { - tmp<volVectorField> tUs + auto tUs = volVectorField::New ( - new volVectorField - ( - IOobject - ( - typeName + ":Us", - filmModel_.regionMesh().time().timeName(), - filmModel_.regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - filmModel_.regionMesh(), - dimensionedVector(dimVelocity, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + IOobject::scopedName(typeName, "Us"), + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedVector(dimVelocity, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); // apply quadratic profile @@ -100,16 +92,10 @@ tmp<volVectorField> laminar::Us() const tmp<volScalarField> laminar::mut() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - typeName + ":mut", - filmModel_.regionMesh().time().timeName(), - filmModel_.regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "mut"), + IOobject::NO_REGISTER, filmModel_.regionMesh(), dimensionedScalar(dimMass/dimLength/dimTime, Zero) ); diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C index e88d983f080cd5b85a41107d491f5e7b764d6f11..0394eb3a67c2697e5b4feae00d28651ce1b5c275 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/contactAngleForce/contactAngleForce.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -107,14 +107,15 @@ contactAngleForce::contactAngleForce ( IOobject ( - typeName + ":contactForceMask", + IOobject::scopedName(typeName, "contactForceMask"), filmModel_.time().timeName(), filmModel_.regionMesh(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ), filmModel_.regionMesh(), - dimensionedScalar("mask", dimless, 1.0) + dimensionedScalar(word::null, dimless, 1.0) ) { initialise(); @@ -131,24 +132,14 @@ contactAngleForce::~contactAngleForce() tmp<fvVectorMatrix> contactAngleForce::correct(volVectorField& U) { - tmp<volVectorField> tForce + auto tForce = volVectorField::New ( - new volVectorField - ( - IOobject - ( - typeName + ":contactForce", - filmModel_.time().timeName(), - filmModel_.regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - filmModel_.regionMesh(), - dimensionedVector(dimForce/dimArea, Zero) - ) + IOobject::scopedName(typeName, "contactForce"), + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedVector(dimForce/dimArea, Zero) ); - - vectorField& force = tForce.ref().primitiveFieldRef(); + auto& force = tForce.ref().primitiveFieldRef(); const labelUList& own = filmModel_.regionMesh().owner(); const labelUList& nbr = filmModel_.regionMesh().neighbour(); @@ -226,10 +217,7 @@ tmp<fvVectorMatrix> contactAngleForce::correct(volVectorField& U) tForce().write(); } - tmp<fvVectorMatrix> tfvm - ( - new fvVectorMatrix(U, dimForce/dimArea*dimVolume) - ); + auto tfvm = tmp<fvVectorMatrix>::New(U, dimForce/dimArea*dimVolume); tfvm.ref() += tForce; diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/distribution/distributionContactAngleForce.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/distribution/distributionContactAngleForce.C index 514fdb0ab8dde21c3b5ec662a26d7c7217050099..6edb0ecd7afa63f1309aa6b3e5ca1269f35bff91 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/distribution/distributionContactAngleForce.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/distribution/distributionContactAngleForce.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -74,34 +75,26 @@ distributionContactAngleForce::~distributionContactAngleForce() tmp<volScalarField> distributionContactAngleForce::theta() const { - tmp<volScalarField> ttheta + auto ttheta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":theta", - filmModel_.time().timeName(), - filmModel_.regionMesh() - ), - filmModel_.regionMesh(), - dimensionedScalar(dimless, Zero) - ) + IOobject::scopedName(typeName, "theta"), + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedScalar(dimless, Zero) ); + auto& thetaIf = ttheta.ref().internalFieldRef(); + auto& thetaBf = ttheta.ref().boundaryFieldRef(); - volScalarField& theta = ttheta.ref(); - volScalarField::Internal& thetai = theta.ref(); - - forAll(thetai, celli) + forAll(thetaIf, celli) { - thetai[celli] = distribution_->sample(); + thetaIf[celli] = distribution_->sample(); } - forAll(theta.boundaryField(), patchi) + forAll(thetaBf, patchi) { if (!filmModel_.isCoupledPatch(patchi)) { - fvPatchField<scalar>& thetaf = theta.boundaryFieldRef()[patchi]; + fvPatchField<scalar>& thetaf = thetaBf[patchi]; forAll(thetaf, facei) { @@ -113,6 +106,7 @@ tmp<volScalarField> distributionContactAngleForce::theta() const return ttheta; } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace surfaceFilmModels diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/perturbedTemperatureDependent/perturbedTemperatureDependentContactAngleForce.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/perturbedTemperatureDependent/perturbedTemperatureDependentContactAngleForce.C index f6ff1170d6523e903a072637cedbe447e87a9cd4..f22860ad72cce3b82c6f2b30efd6ff061771d485 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/perturbedTemperatureDependent/perturbedTemperatureDependentContactAngleForce.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/perturbedTemperatureDependent/perturbedTemperatureDependentContactAngleForce.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,40 +84,32 @@ perturbedTemperatureDependentContactAngleForce:: tmp<volScalarField> perturbedTemperatureDependentContactAngleForce::theta() const { - tmp<volScalarField> ttheta + auto ttheta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":theta", - filmModel_.time().timeName(), - filmModel_.regionMesh() - ), - filmModel_.regionMesh(), - dimensionedScalar(dimless, Zero) - ) + IOobject::scopedName(typeName, "theta"), + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedScalar(dimless, Zero) ); - - volScalarField& theta = ttheta.ref(); - volScalarField::Internal& thetai = theta.ref(); + auto& thetaIf = ttheta.ref().internalFieldRef(); + auto& thetaBf = ttheta.ref().boundaryFieldRef(); const volScalarField& T = filmModel_.T(); // Initialize with the function of temperature - thetai.field() = thetaPtr_->value(T()); + thetaIf.field() = thetaPtr_->value(T()); // Add the stochastic perturbation - forAll(thetai, celli) + forAll(thetaIf, celli) { - thetai[celli] += distribution_->sample(); + thetaIf[celli] += distribution_->sample(); } - forAll(theta.boundaryField(), patchi) + forAll(thetaBf, patchi) { if (!filmModel_.isCoupledPatch(patchi)) { - fvPatchField<scalar>& thetaf = theta.boundaryFieldRef()[patchi]; + fvPatchField<scalar>& thetaf = thetaBf[patchi]; // Initialize with the function of temperature thetaf = thetaPtr_->value(T.boundaryField()[patchi]); @@ -132,6 +125,7 @@ perturbedTemperatureDependentContactAngleForce::theta() const return ttheta; } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace surfaceFilmModels diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/temperatureDependent/temperatureDependentContactAngleForce.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/temperatureDependent/temperatureDependentContactAngleForce.C index d78200a0a66c0679940207551282c5a3ae629c5d..4b35841929347a55c453ec9d32187f72f5e5bf92 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/temperatureDependent/temperatureDependentContactAngleForce.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/contactAngleForces/temperatureDependent/temperatureDependentContactAngleForce.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -71,39 +72,32 @@ temperatureDependentContactAngleForce::~temperatureDependentContactAngleForce() tmp<volScalarField> temperatureDependentContactAngleForce::theta() const { - tmp<volScalarField> ttheta + auto ttheta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":theta", - filmModel_.time().timeName(), - filmModel_.regionMesh() - ), - filmModel_.regionMesh(), - dimensionedScalar(dimless, Zero) - ) + IOobject::scopedName(typeName, "theta"), + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedScalar(dimless, Zero) ); - - volScalarField& theta = ttheta.ref(); + auto& thetaIf = ttheta.ref().internalFieldRef(); + auto& thetaBf = ttheta.ref().boundaryFieldRef(); const volScalarField& T = filmModel_.T(); - theta.ref().field() = thetaPtr_->value(T()); + thetaIf.field() = thetaPtr_->value(T()); - forAll(theta.boundaryField(), patchi) + forAll(thetaBf, patchi) { if (!filmModel_.isCoupledPatch(patchi)) { - theta.boundaryFieldRef()[patchi] = - thetaPtr_->value(T.boundaryField()[patchi]); + thetaBf[patchi] = thetaPtr_->value(T.boundaryField()[patchi]); } } return ttheta; } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace surfaceFilmModels diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/forceList/forceList.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/forceList/forceList.C index 6972aca86c792f09dd07e6dfb5f7da5d8c8209c1..eb8962e471bc44142e9c005c8bffb46018a20f2a 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/forceList/forceList.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/forceList/forceList.C @@ -79,11 +79,8 @@ forceList::~forceList() tmp<fvVectorMatrix> forceList::correct(volVectorField& U) { - tmp<fvVectorMatrix> tResult - ( - new fvVectorMatrix(U, dimForce/dimArea*dimVolume) - ); - fvVectorMatrix& result = tResult.ref(); + auto tResult = tmp<fvVectorMatrix>::New(U, dimForce/dimArea*dimVolume); + auto& result = tResult.ref(); forAll(*this, i) { diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/thermocapillaryForce/thermocapillaryForce.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/thermocapillaryForce/thermocapillaryForce.C index fddbee7d3728ed984582eaf87e9e0853321e22ce..db48dc0e54d2a012eb3feab11fb273856385f714 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/force/thermocapillaryForce/thermocapillaryForce.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/force/thermocapillaryForce/thermocapillaryForce.C @@ -68,8 +68,7 @@ tmp<fvVectorMatrix> thermocapillaryForce::correct(volVectorField& U) const volScalarField& alpha = filmModel_.alpha(); const volScalarField& sigma = filmModel_.sigma(); - tmp<fvVectorMatrix> - tfvm(new fvVectorMatrix(U, dimForce/dimArea*dimVolume)); + auto tfvm = tmp<fvVectorMatrix>::New(U, dimForce/dimArea*dimVolume); tfvm.ref() += alpha*fvc::grad(sigma); diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C index 11c405527ad89c3b7675d1cf81326c7dda613235..da3827b43a519521577618e5cb189b5c1ef0d50a 100644 --- a/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C +++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,7 +35,6 @@ License #include "surfaceInterpolate.H" #include "fvcDiv.H" #include "fvcGrad.H" -#include "stringListOps.H" #include "cyclicPolyPatch.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -66,21 +65,20 @@ tmp<volScalarField> curvatureSeparation::calcInvR1 { // method 1 /* - tmp<volScalarField> tinvR1 - ( - new volScalarField("invR1", fvc::div(film().nHat())) - ); + auto tinvR1 = volScalarField::New("invR1", fvc::div(film().nHat())); */ // method 2 dimensionedScalar smallU("smallU", dimVelocity, ROOTVSMALL); volVectorField UHat(U/(mag(U) + smallU)); - tmp<volScalarField> tinvR1 + + auto tinvR1 = volScalarField::New ( - new volScalarField("invR1", UHat & (UHat & gradNHat_)) + "invR1", + IOobject::NO_REGISTER, + UHat & (UHat & gradNHat_) ); - scalarField& invR1 = tinvR1.ref().primitiveFieldRef(); // apply defined patch radii @@ -197,21 +195,16 @@ tmp<scalarField> curvatureSeparation::calcCosAngle // checks if (debug && mesh.time().writeTime()) { - volScalarField volCosAngle + auto tvolCosAngle = volScalarField::New ( - IOobject - ( - "cosAngle", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "cosAngle", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimless, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& volCosAngle = tvolCosAngle.ref(); + volCosAngle.primitiveFieldRef() = cosAngle; volCosAngle.correctBoundaryConditions(); volCosAngle.write(); @@ -341,21 +334,16 @@ void curvatureSeparation::correct if (debug && mesh.time().writeTime()) { - volScalarField volFnet + auto tvolFnet = volScalarField::New ( - IOobject - ( - "Fnet", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "Fnet", + IOobject::NO_REGISTER, mesh, dimensionedScalar(dimForce, Zero), fvPatchFieldBase::zeroGradientType() ); + auto& volFnet = tvolFnet.ref(); + volFnet.primitiveFieldRef() = Fnet; volFnet.correctBoundaryConditions(); volFnet.write(); diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/constantRadiation/constantRadiation.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/constantRadiation/constantRadiation.C index 04607ad05ccd48b0938f0f662b6d455c14f9e97a..48861e403704fa9b20dc1c584bbefe796fd847b8 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/constantRadiation/constantRadiation.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/constantRadiation/constantRadiation.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -62,7 +63,7 @@ constantRadiation::constantRadiation ( IOobject ( - typeName + ":qrConst", + IOobject::scopedName(typeName, "qrConst"), film.time().timeName(), film.regionMesh().thisDb(), IOobject::MUST_READ, @@ -74,7 +75,7 @@ constantRadiation::constantRadiation ( IOobject ( - typeName + ":mask", + IOobject::scopedName(typeName, "mask"), film.time().timeName(), film.regionMesh().thisDb(), IOobject::READ_IF_PRESENT, @@ -105,28 +106,19 @@ void constantRadiation::correct() tmp<volScalarField> constantRadiation::Shs() { - tmp<volScalarField> tShs + auto tShs = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":Shs", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimMass/pow3(dimTime), Zero) - ) + IOobject::scopedName(typeName, "Shs"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimMass/pow3(dimTime), Zero) ); + auto& Shs = tShs.ref().primitiveFieldRef(); const scalar time = film().time().value(); if ((time >= timeStart_) && (time <= timeStart_ + duration_)) { - scalarField& Shs = tShs.ref(); const scalarField& qr = qrConst_; const scalarField& alpha = filmModel_.alpha(); diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/noRadiation/noRadiation.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/noRadiation/noRadiation.C index cb934c67089d9a0be5d521b8bcf3c1e3a3a039b2..3851e8e5061e3e23a1decd03830c7002c07a53f7 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/noRadiation/noRadiation.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/noRadiation/noRadiation.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -75,16 +76,10 @@ void noRadiation::correct() tmp<volScalarField> noRadiation::Shs() { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - typeName + ":Shs", - film().time().timeName(), - film().regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "Shs"), + IOobject::NO_REGISTER, film().regionMesh(), dimensionedScalar(dimMass/pow3(dimTime), Zero) ); diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/primaryRadiation/primaryRadiation.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/primaryRadiation/primaryRadiation.C index 38b2b13e726de98be68fd64f6e2088cd09e52c69..b53dfa9d5eff6780d5c0a11011e8c9cff715ac08 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/primaryRadiation/primaryRadiation.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/primaryRadiation/primaryRadiation.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,7 +67,8 @@ primaryRadiation::primaryRadiation film.time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimMass/pow3(dimTime), Zero), @@ -92,24 +94,15 @@ void primaryRadiation::correct() tmp<volScalarField> primaryRadiation::Shs() { - tmp<volScalarField> tShs + auto tShs = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":Shs", - film().time().timeName(), - film().regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimMass/pow3(dimTime), Zero) - ) + IOobject::scopedName(typeName, "Shs"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimMass/pow3(dimTime), Zero) ); - scalarField& Shs = tShs.ref(); + const scalarField& qinP = qinPrimary_; const scalarField& alpha = filmModel_.alpha(); diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/standardRadiation/standardRadiation.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/standardRadiation/standardRadiation.C index fd3972557006f133d65ec2f43333210ad39f833b..9fabe064fb14a8c380153b802aac0370dc550118 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/standardRadiation/standardRadiation.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmRadiationModel/standardRadiation/standardRadiation.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -67,7 +68,8 @@ standardRadiation::standardRadiation film.time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimMass/pow3(dimTime), Zero), @@ -81,7 +83,8 @@ standardRadiation::standardRadiation film.time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimMass/pow3(dimTime), Zero), @@ -103,24 +106,15 @@ void standardRadiation::correct() tmp<volScalarField> standardRadiation::Shs() { - tmp<volScalarField> tShs + auto tShs = volScalarField::New ( - new volScalarField - ( - IOobject - ( - typeName + ":Shs", - film().time().timeName(), - film().regionMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - film().regionMesh(), - dimensionedScalar(dimMass/pow3(dimTime), Zero) - ) + IOobject::scopedName(typeName, "Shs"), + IOobject::NO_REGISTER, + film().regionMesh(), + dimensionedScalar(dimMass/pow3(dimTime), Zero) ); - scalarField& Shs = tShs.ref(); + const scalarField& qinP = qinPrimary_; const scalarField& delta = filmModel_.delta(); const scalarField& alpha = filmModel_.alpha(); diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/thixotropicViscosity/thixotropicViscosity.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/thixotropicViscosity/thixotropicViscosity.C index 67d8e792b89642cc96e2c2f162ecbe69602d1e77..058cb62aedd445cd8aafcb6c84419a201b8376ba 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/thixotropicViscosity/thixotropicViscosity.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/thixotropicViscosity/thixotropicViscosity.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -76,11 +77,12 @@ thixotropicViscosity::thixotropicViscosity ( IOobject ( - typeName + ":lambda", + IOobject::scopedName(typeName, "lambda"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh() ) diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/waxSolventViscosity/waxSolventViscosity.C b/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/waxSolventViscosity/waxSolventViscosity.C index df4c6ab9a878ed3e83c4fdbbef2d9286dc5a2232..6bbd2cbfc900a23253e89149a4cd6761524a823a 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/waxSolventViscosity/waxSolventViscosity.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/filmViscosityModel/waxSolventViscosity/waxSolventViscosity.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,37 +58,29 @@ void waxSolventViscosity::correctMu() { const kinematicSingleLayer& film = filmType<kinematicSingleLayer>(); - const uniformDimensionedScalarField Wwax - ( + const auto& Wwax = film.regionMesh().lookupObject<uniformDimensionedScalarField> ( - waxSolventEvaporation::typeName + ":Wwax" - ) - ); + IOobject::scopedName(waxSolventEvaporation::typeName, "Wwax") + ); - const uniformDimensionedScalarField Wsolvent - ( + const auto& Wsolvent = film.regionMesh().lookupObject<uniformDimensionedScalarField> ( - waxSolventEvaporation::typeName + ":Wsolvent" - ) - ); + IOobject::scopedName(waxSolventEvaporation::typeName, "Wsolvent") + ); - const uniformDimensionedScalarField Ysolvent0 - ( + const auto& Ysolvent0 = film.regionMesh().lookupObject<uniformDimensionedScalarField> ( - waxSolventEvaporation::typeName + ":Ysolvent0" - ) - ); + IOobject::scopedName(waxSolventEvaporation::typeName, "Ysolvent0") + ); - const volScalarField& Ysolvent - ( + const auto& Ysolvent = film.regionMesh().lookupObject<volScalarField> ( - waxSolventEvaporation::typeName + ":Ysolvent" - ) - ); + IOobject::scopedName(waxSolventEvaporation::typeName, "Ysolvent") + ); const volScalarField Xsolvent ( @@ -118,11 +111,12 @@ waxSolventViscosity::waxSolventViscosity ( IOobject ( - typeName + ":muWax", + IOobject::scopedName(typeName, "muWax"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimDynamicViscosity, Zero), @@ -141,11 +135,12 @@ waxSolventViscosity::waxSolventViscosity ( IOobject ( - typeName + ":muSolvent", + IOobject::scopedName(typeName, "muSolvent"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimDynamicViscosity, Zero), diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/heatTransferModel/constantHeatTransfer/constantHeatTransfer.C b/src/regionModels/surfaceFilmModels/submodels/thermo/heatTransferModel/constantHeatTransfer/constantHeatTransfer.C index 9bdae5059cad06858539e82e98c74c5347020dd4..518e50b1e62e3aa23a5e5506dbd27fc465ca687f 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/heatTransferModel/constantHeatTransfer/constantHeatTransfer.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/heatTransferModel/constantHeatTransfer/constantHeatTransfer.C @@ -76,26 +76,16 @@ void constantHeatTransfer::correct() tmp<volScalarField> constantHeatTransfer::h() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField + "htc", + IOobject::NO_REGISTER, + filmModel_.regionMesh(), + dimensionedScalar ( - IOobject - ( - "htc", - filmModel_.time().timeName(), - filmModel_.regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - filmModel_.regionMesh(), - dimensionedScalar - ( - "c0", - dimEnergy/dimTime/sqr(dimLength)/dimTemperature, - c0_ - ) + "c0", + dimEnergy/dimTime/sqr(dimLength)/dimTemperature, + c0_ ) ); } diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/solidification/solidification.C b/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/solidification/solidification.C index dd7ecd529a46890daa9abb49c445fd9b4b05c5b9..1c36295efc546ea386cdc144ee08a5e2f3ad0587 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/solidification/solidification.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/solidification/solidification.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -75,11 +75,12 @@ solidification::solidification ( IOobject ( - typeName + ":mass", + IOobject::scopedName(typeName, "mass"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimMass, Zero), @@ -89,11 +90,12 @@ solidification::solidification ( IOobject ( - typeName + ":thickness", + IOobject::scopedName(typeName, "thickness"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh(), dimensionedScalar(dimLength, Zero), diff --git a/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/waxSolventEvaporation/waxSolventEvaporation.C b/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/waxSolventEvaporation/waxSolventEvaporation.C index 13ab7a4d15c2e750086bd884eb5b4de1be91abe8..b59786b74a67da70e4833452d576e87e5c13baf1 100644 --- a/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/waxSolventEvaporation/waxSolventEvaporation.C +++ b/src/regionModels/surfaceFilmModels/submodels/thermo/phaseChangeModel/waxSolventEvaporation/waxSolventEvaporation.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -88,9 +88,12 @@ waxSolventEvaporation::waxSolventEvaporation ( IOobject ( - typeName + ":Wwax", + IOobject::scopedName(typeName, "Wwax"), film.regionMesh().time().constant(), - film.regionMesh().thisDb() + film.regionMesh().thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::REGISTER ), coeffDict_.get<scalar>("Wwax") ), @@ -98,9 +101,12 @@ waxSolventEvaporation::waxSolventEvaporation ( IOobject ( - typeName + ":Wsolvent", + IOobject::scopedName(typeName, "Wsolvent"), film.regionMesh().time().constant(), - film.regionMesh().thisDb() + film.regionMesh().thisDb(), + IOobject::NO_READ, + IOobject::NO_WRITE, + IOobject::REGISTER ), coeffDict_.get<scalar>("Wsolvent") ), @@ -108,22 +114,24 @@ waxSolventEvaporation::waxSolventEvaporation ( IOobject ( - typeName + ":Ysolvent0", + IOobject::scopedName(typeName, "Ysolvent0"), film.regionMesh().time().constant(), film.regionMesh().thisDb(), IOobject::MUST_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ) ), Ysolvent_ ( IOobject ( - typeName + ":Ysolvent", + IOobject::scopedName(typeName, "Ysolvent"), film.regionMesh().time().timeName(), film.regionMesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), film.regionMesh() ), @@ -187,35 +195,21 @@ void waxSolventEvaporation::correctModel const scalar Wwax = Wwax_.value(); const scalar Wsolvent = Wsolvent_.value(); - volScalarField::Internal evapRateCoeff + auto tevapRateCoeff = volScalarField::Internal::New ( - IOobject - ( - typeName + ":evapRateCoeff", - film.regionMesh().time().timeName(), - film.regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "evapRateCoeff"), film.regionMesh(), dimensionedScalar(dimDensity*dimVelocity, Zero) ); + auto& evapRateCoeff = tevapRateCoeff.ref(); - volScalarField::Internal evapRateInf + auto tevapRateInf = volScalarField::Internal::New ( - IOobject - ( - typeName + ":evapRateInf", - film.regionMesh().time().timeName(), - film.regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + IOobject::scopedName(typeName, "evapRateInf"), film.regionMesh(), dimensionedScalar(dimDensity*dimVelocity, Zero) ); + auto& evapRateInf = tevapRateInf.ref(); bool filmPresent = false; diff --git a/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayer.C b/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayer.C index 9202742a838b77c842e46e5cbff82d58c37016d1..ba9bf0b0cbdd2e94ce6d732a0936c97acfccc915 100644 --- a/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayer.C +++ b/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayer.C @@ -327,7 +327,8 @@ thermoSingleLayer::thermoSingleLayer regionMesh().time().timeName(), regionMesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), regionMesh(), dimensionedScalar(dimEnergy/dimMass/dimTemperature, Zero), @@ -341,7 +342,8 @@ thermoSingleLayer::thermoSingleLayer regionMesh().time().timeName(), regionMesh().thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), regionMesh(), dimensionedScalar(dimEnergy/dimTime/dimLength/dimTemperature, Zero), @@ -356,7 +358,8 @@ thermoSingleLayer::thermoSingleLayer regionMesh().time().timeName(), regionMesh().thisDb(), IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), regionMesh() ), @@ -705,38 +708,28 @@ void thermoSingleLayer::info() tmp<volScalarField::Internal> thermoSingleLayer::Srho() const { - tmp<volScalarField::Internal> tSrho + auto tSrho = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - typeName + ":Srho", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - primaryMesh(), - dimensionedScalar(dimMass/dimVolume/dimTime, Zero) - ) + IOobject::scopedName(typeName, "Srho"), + IOobject::NO_REGISTER, + primaryMesh(), + dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); - scalarField& Srho = tSrho.ref(); + const scalarField& V = primaryMesh().V(); const scalar dt = time_.deltaTValue(); forAll(intCoupledPatchIDs(), i) { const label filmPatchi = intCoupledPatchIDs()[i]; + const label primaryPatchi = primaryPatchIDs()[i]; scalarField patchMass = primaryMassTrans_.boundaryField()[filmPatchi]; toPrimary(filmPatchi, patchMass); - const label primaryPatchi = primaryPatchIDs()[i]; const labelUList& cells = primaryMesh().boundaryMesh()[primaryPatchi].faceCells(); @@ -757,40 +750,30 @@ tmp<volScalarField::Internal> thermoSingleLayer::Srho { const label vapId = thermo_.carrierId(filmThermo_->name()); - tmp<volScalarField::Internal> tSrho + auto tSrho = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - typeName + ":Srho(" + Foam::name(i) + ")", - time_.timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - primaryMesh(), - dimensionedScalar(dimMass/dimVolume/dimTime, Zero) - ) + IOobject::scopedName(typeName, "Srho(" + Foam::name(i) + ")"), + IOobject::NO_REGISTER, + primaryMesh(), + dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); + scalarField& Srho = tSrho.ref(); if (vapId == i) { - scalarField& Srho = tSrho.ref(); const scalarField& V = primaryMesh().V(); const scalar dt = time().deltaTValue(); forAll(intCoupledPatchIDs_, i) { const label filmPatchi = intCoupledPatchIDs_[i]; + const label primaryPatchi = primaryPatchIDs()[i]; scalarField patchMass = primaryMassTrans_.boundaryField()[filmPatchi]; toPrimary(filmPatchi, patchMass); - const label primaryPatchi = primaryPatchIDs()[i]; const labelUList& cells = primaryMesh().boundaryMesh()[primaryPatchi].faceCells(); @@ -807,38 +790,28 @@ tmp<volScalarField::Internal> thermoSingleLayer::Srho tmp<volScalarField::Internal> thermoSingleLayer::Sh() const { - tmp<volScalarField::Internal> tSh + auto tSh = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - typeName + ":Sh", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - primaryMesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + IOobject::scopedName(typeName, "Sh"), + IOobject::NO_REGISTER, + primaryMesh(), + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); - scalarField& Sh = tSh.ref(); + const scalarField& V = primaryMesh().V(); const scalar dt = time_.deltaTValue(); forAll(intCoupledPatchIDs_, i) { const label filmPatchi = intCoupledPatchIDs_[i]; + const label primaryPatchi = primaryPatchIDs()[i]; scalarField patchEnergy = primaryEnergyTrans_.boundaryField()[filmPatchi]; toPrimary(filmPatchi, patchEnergy); - const label primaryPatchi = primaryPatchIDs()[i]; const labelUList& cells = primaryMesh().boundaryMesh()[primaryPatchi].faceCells(); diff --git a/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayerI.H b/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayerI.H index e53bd1a16b1e4a283c446a24d5f8be212de6e7c2..3c2ef6ed1334598a12db45a63b5890120d744505 100644 --- a/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayerI.H +++ b/src/regionModels/surfaceFilmModels/thermoSingleLayer/thermoSingleLayerI.H @@ -64,20 +64,11 @@ inline tmp<volScalarField> thermoSingleLayer::hs const volScalarField& T ) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "hs(" + T.name() + ")", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - Cp_*(T - Tref) - ) + "hs(" + T.name() + ")", + IOobject::NO_REGISTER, + Cp_*(T - Tref) ); } @@ -87,20 +78,11 @@ inline tmp<volScalarField> thermoSingleLayer::T const volScalarField& hs ) const { - tmp<volScalarField> tT + auto tT = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "T(" + hs.name() + ")", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - hs/Cp_ + Tref - ) + "T(" + hs.name() + ")", + IOobject::NO_REGISTER, + hs/Cp_ + Tref ); if (limitType::CLAMP_MIN == withTbounds_) diff --git a/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H index 26fdc2cf27454ee7002183a4292c70adf0464186..0402f973e09090ab7f6e8f0ded2a1f2459281def 100644 --- a/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H +++ b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H @@ -301,16 +301,6 @@ public: const fvPatchFieldMapper& ); - - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new thermalBaffleFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference thermalBaffleFvPatchScalarField ( @@ -318,16 +308,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new thermalBaffleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/regionModels/thermalBaffleModels/noThermo/noThermo.C b/src/regionModels/thermalBaffleModels/noThermo/noThermo.C index 755c3a4e4ec4f6fb032ddfab45b96711db8eb8ff..40e96f6d932d8dc61032e38403e1b2a1384fda4c 100644 --- a/src/regionModels/thermalBaffleModels/noThermo/noThermo.C +++ b/src/regionModels/thermalBaffleModels/noThermo/noThermo.C @@ -92,24 +92,7 @@ const tmp<volScalarField> noThermo::Cp() const FatalErrorInFunction << "Cp field not available for " << type() << abort(FatalError); - - return tmp<volScalarField> - ( - new volScalarField - ( - IOobject - ( - "noThermo::Cp", - time().timeName(), - primaryMesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - primaryMesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) - ); + return nullptr; } const volScalarField& noThermo::kappaRad() const diff --git a/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C index 75aa061458742d858facd5e31dc6191de9fad2b8..a5e915dcd39011bb79dd6af06198fa23d19893c6 100644 --- a/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C +++ b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C @@ -72,25 +72,14 @@ void thermalBaffle::solveEnergy() const polyBoundaryMesh& rbm = regionMesh().boundaryMesh(); - tmp<volScalarField> tQ + auto tQ = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tQ", - regionMesh().time().timeName(), - regionMesh().thisDb(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - regionMesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + "tQ", + IOobject::NO_REGISTER, + regionMesh(), + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); - - volScalarField& Q = tQ.ref(); + auto& Q = tQ.ref(); volScalarField rho("rho", thermo_->rho()); volScalarField alpha("alpha", thermo_->alpha()); diff --git a/src/renumber/Allwmake b/src/renumber/Allwmake index 0e5edabb3e9a2f09a17c65e7ddfa3f0bd2d528bc..a367a8322e230648ba119b897c65495a438ced4a 100755 --- a/src/renumber/Allwmake +++ b/src/renumber/Allwmake @@ -21,6 +21,7 @@ fi warning="==> skip zoltanRenumber" if have_zoltan then + echo "zoltan - $ZOLTAN_ARCH_PATH" wmake $targetType zoltanRenumber || echo "$warning (build issues detected)" else echo "$warning (no library)" diff --git a/src/renumber/SloanRenumber/SloanRenumber.C b/src/renumber/SloanRenumber/SloanRenumber.C index f3dea4f76229096f96e813da1deaffe232a554f3..df5c3f624dfd94f990a433225bf175e59d42e295 100644 --- a/src/renumber/SloanRenumber/SloanRenumber.C +++ b/src/renumber/SloanRenumber/SloanRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,7 +30,6 @@ License #include "SloanRenumber.H" #include "addToRunTimeSelectionTable.H" -#include "globalMeshData.H" #include "processorPolyPatch.H" #include "syncTools.H" @@ -74,6 +73,9 @@ typedef adjacency_list typedef graph_traits<Graph>::vertex_descriptor Vertex; typedef graph_traits<Graph>::vertices_size_type size_type; + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + namespace Foam { defineTypeNameAndDebug(SloanRenumber, 0); @@ -89,6 +91,13 @@ namespace Foam // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +Foam::SloanRenumber::SloanRenumber(const bool reverse) +: + renumberMethod(), + reverse_(reverse) +{} + + Foam::SloanRenumber::SloanRenumber(const dictionary& dict) : renumberMethod(dict), @@ -155,8 +164,7 @@ Foam::labelList renumberImpl(Graph& G, const bool useReverse) Foam::labelList Foam::SloanRenumber::renumber ( - const polyMesh& mesh, - const pointField& points + const polyMesh& mesh ) const { // Construct graph : faceOwner + connections across cyclics. @@ -176,7 +184,7 @@ Foam::labelList Foam::SloanRenumber::renumber Graph G(mesh.nCells()); // Add internal faces - forAll(mesh.faceNeighbour(), facei) + for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { add_edge(mesh.faceOwner()[facei], mesh.faceNeighbour()[facei], G); } @@ -216,8 +224,7 @@ Foam::labelList Foam::SloanRenumber::renumber Foam::labelList Foam::SloanRenumber::renumber ( - const CompactListList<label>& cellCells, - const pointField& + const CompactListList<label>& cellCells ) const { Graph G(cellCells.size()); @@ -241,8 +248,7 @@ Foam::labelList Foam::SloanRenumber::renumber Foam::labelList Foam::SloanRenumber::renumber ( - const labelListList& cellCells, - const pointField& + const labelListList& cellCells ) const { Graph G(cellCells.size()); diff --git a/src/renumber/SloanRenumber/SloanRenumber.H b/src/renumber/SloanRenumber/SloanRenumber.H index 7f61b3912bb7915cdd77930a21e11488dc612f3c..a2c42c5cc3da243fee526fb76f854949cac995bb 100644 --- a/src/renumber/SloanRenumber/SloanRenumber.H +++ b/src/renumber/SloanRenumber/SloanRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,16 +55,8 @@ class SloanRenumber { // Private Data - const bool reverse_; - - - // Private Member Functions - - //- No copy construct - SloanRenumber(const SloanRenumber&) = delete; - - //- No copy assignment - void operator=(const SloanRenumber&) = delete; + //- Use reverse indexing + bool reverse_; public: @@ -75,6 +67,9 @@ public: // Constructors + //- Default construct, optionally with reverse + explicit SloanRenumber(const bool reverse = false); + //- Construct given the renumber dictionary explicit SloanRenumber(const dictionary& dict); @@ -85,40 +80,29 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } - - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) - virtual labelList renumber - ( - const polyMesh& mesh, - const pointField& cc - ) const; + //- Toggle reverse on/off + void reverse(bool on) noexcept { reverse_ = on; } + + + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh to determine the connectivity. + virtual labelList renumber(const polyMesh& mesh) const; + + + // With explicit topology - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Return the cell visit order (from ordered back to original cell id) virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + const CompactListList<label>& cellCells ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // The connectivity is equal to mesh.cellCells() except - // - the connections are across coupled patches + //- Return the cell visit order (from ordered back to original cell id) virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cc + const labelListList& cellCells ) const; }; diff --git a/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.C b/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.C index b2662f90f6e98fa68bb942443deb71c2b3d876fe..4e7827d50343ce549bd055928d59c6134fea5668 100644 --- a/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.C +++ b/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2023 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,13 +29,13 @@ License #include "CuthillMcKeeRenumber.H" #include "addToRunTimeSelectionTable.H" #include "bandCompression.H" -#include "globalMeshData.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - defineTypeNameAndDebug(CuthillMcKeeRenumber, 0); + defineTypeName(CuthillMcKeeRenumber); + defineTypeName(reverseCuthillMcKeeRenumber); addToRunTimeSelectionTable ( @@ -43,11 +43,34 @@ namespace Foam CuthillMcKeeRenumber, dictionary ); + + addToRunTimeSelectionTable + ( + renumberMethod, + reverseCuthillMcKeeRenumber, + dictionary + ); + + // Select under the name "RCM" + addNamedToRunTimeSelectionTable + ( + renumberMethod, + reverseCuthillMcKeeRenumber, + dictionary, + RCM + ); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +Foam::CuthillMcKeeRenumber::CuthillMcKeeRenumber(const bool reverse) +: + renumberMethod(), + reverse_(reverse) +{} + + Foam::CuthillMcKeeRenumber::CuthillMcKeeRenumber(const dictionary& dict) : renumberMethod(dict), @@ -59,47 +82,44 @@ Foam::CuthillMcKeeRenumber::CuthillMcKeeRenumber(const dictionary& dict) {} -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::labelList Foam::CuthillMcKeeRenumber::renumber +Foam::CuthillMcKeeRenumber::CuthillMcKeeRenumber ( - const polyMesh& mesh, - const pointField& points -) const -{ - CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - false, // local only - cellCells - ); + const dictionary& dict, + const bool reverse +) +: + renumberMethod(dict), + reverse_(reverse) +{} - labelList orderedToOld = meshTools::bandCompression(cellCells); - if (reverse_) - { - reverse(orderedToOld); - } +Foam::reverseCuthillMcKeeRenumber::reverseCuthillMcKeeRenumber() +: + CuthillMcKeeRenumber(true) // reverse = true +{} + + +Foam::reverseCuthillMcKeeRenumber::reverseCuthillMcKeeRenumber +( + const dictionary& dict +) +: + CuthillMcKeeRenumber(dict, true) // reverse = true +{} - return orderedToOld; -} +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::labelList Foam::CuthillMcKeeRenumber::renumber ( - const labelList& cellCells, - const labelList& offsets, - const pointField& cc + const polyMesh& mesh ) const { - labelList orderedToOld = meshTools::bandCompression(cellCells, offsets); + labelList orderedToOld = meshTools::bandCompression(mesh); if (reverse_) { - reverse(orderedToOld); + Foam::reverse(orderedToOld); } return orderedToOld; @@ -108,15 +128,14 @@ Foam::labelList Foam::CuthillMcKeeRenumber::renumber Foam::labelList Foam::CuthillMcKeeRenumber::renumber ( - const CompactListList<label>& cellCells, - const pointField& cc + const CompactListList<label>& cellCells ) const { labelList orderedToOld = meshTools::bandCompression(cellCells); if (reverse_) { - reverse(orderedToOld); + Foam::reverse(orderedToOld); } return orderedToOld; @@ -125,19 +144,35 @@ Foam::labelList Foam::CuthillMcKeeRenumber::renumber Foam::labelList Foam::CuthillMcKeeRenumber::renumber ( - const labelListList& cellCells, - const pointField& points + const labelListList& cellCells ) const { labelList orderedToOld = meshTools::bandCompression(cellCells); if (reverse_) { - reverse(orderedToOld); + Foam::reverse(orderedToOld); } return orderedToOld; } +// Foam::labelList Foam::CuthillMcKeeRenumber::renumber +// ( +// const labelUList& cellCells, +// const labelUList& offsets +// ) const +// { +// labelList orderedToOld = meshTools::bandCompression(cellCells, offsets); +// +// if (reverse_) +// { +// Foam::reverse(orderedToOld); +// } +// +// return orderedToOld; +// } + + // ************************************************************************* // diff --git a/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.H b/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.H index fd6df4cc2755674883396c88dca9f9c2e5cce453..506deef95d5d1cbe839f0b3ca73a0b868f4237cf 100644 --- a/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.H +++ b/src/renumber/renumberMethods/CuthillMcKeeRenumber/CuthillMcKeeRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,7 +28,10 @@ Class Foam::CuthillMcKeeRenumber Description - Cuthill-McKee renumbering + Cuthill-McKee renumbering (CM or RCM) + +SeeAlso + Foam::meshTools::bandCompression SourceFiles CuthillMcKeeRenumber.C @@ -53,29 +56,28 @@ class CuthillMcKeeRenumber { // Private Data - const bool reverse_; - - - // Private Member Functions - - //- No copy construct - CuthillMcKeeRenumber(const CuthillMcKeeRenumber&) = delete; - - //- No copy assignment - void operator=(const CuthillMcKeeRenumber&) = delete; + //- Use reverse indexing + bool reverse_; public: //- Runtime type information - TypeName("CuthillMcKee"); + TypeNameNoDebug("CuthillMcKee"); // Constructors + //- Default construct, optionally with reverse + explicit CuthillMcKeeRenumber(const bool reverse = false); + //- Construct given the renumber dictionary explicit CuthillMcKeeRenumber(const dictionary& dict); + //- Construct given the renumber dictionary (ignored) + //- and specified reverse handling + CuthillMcKeeRenumber(const dictionary& dict, const bool reverse); + //- Destructor virtual ~CuthillMcKeeRenumber() = default; @@ -83,55 +85,68 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } - - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) - virtual labelList renumber - ( - const polyMesh& mesh, - const pointField& cc - ) const; + //- Toggle reverse on/off + void reverse(bool on) noexcept { reverse_ = on; } + - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Connectivity in losort addressing (= neighbour + offsets into - // neighbour) + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh to determine the connectivity. virtual labelList renumber ( - const labelList& cellCells, - const labelList& offsets, - const pointField& cc + //! Mesh connectivity (see globalMeshData::calcCellCells) + const polyMesh& mesh ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + + // With explicit topology + + //- Return the cell visit order (from ordered back to original cell id). virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + //! Mesh connectivity + const CompactListList<label>& cellCells ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // The connectivity is equal to mesh.cellCells() except - // - the connections are across coupled patches + //- Return the cell visit order (from ordered back to original cell id). virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + //! Mesh connectivity + const labelListList& cellCells ) const; }; +/*---------------------------------------------------------------------------*\ + Class reverseCuthillMcKeeRenumber Declaration +\*---------------------------------------------------------------------------*/ + +//- Reverse Cuthill-McKee renumbering +class reverseCuthillMcKeeRenumber +: + public CuthillMcKeeRenumber +{ +public: + + //- Runtime type information + TypeNameNoDebug("reverseCuthillMcKee"); + + + // Constructors + + //- Default construct + reverseCuthillMcKeeRenumber(); + + //- Construct given the renumber dictionary (ignored) + explicit reverseCuthillMcKeeRenumber(const dictionary& dict); + + + //- Destructor + virtual ~reverseCuthillMcKeeRenumber() = default; +}; + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/renumber/renumberMethods/Make/files b/src/renumber/renumberMethods/Make/files index 6ee4924d3377e101fd7f70e1e7724bcd34f4879e..863d3d21000216558548fc74da873e1986af2cfd 100644 --- a/src/renumber/renumberMethods/Make/files +++ b/src/renumber/renumberMethods/Make/files @@ -1,7 +1,10 @@ renumberMethod/renumberMethod.C + manualRenumber/manualRenumber.C -CuthillMcKeeRenumber/CuthillMcKeeRenumber.C +noRenumber/noRenumber.C randomRenumber/randomRenumber.C +CuthillMcKeeRenumber/CuthillMcKeeRenumber.C + springRenumber/springRenumber.C structuredRenumber/structuredRenumber.C structuredRenumber/OppositeFaceCellWaveBase.C diff --git a/src/renumber/renumberMethods/manualRenumber/manualRenumber.C b/src/renumber/renumberMethods/manualRenumber/manualRenumber.C index bce6268cefc35e3c3496c0664e4e00e90e6c0819..875ced3af00534cd71f26aa5244f2d5a6c43b152 100644 --- a/src/renumber/renumberMethods/manualRenumber/manualRenumber.C +++ b/src/renumber/renumberMethods/manualRenumber/manualRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,14 +28,13 @@ License #include "manualRenumber.H" #include "addToRunTimeSelectionTable.H" -#include "IFstream.H" #include "labelIOList.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - defineTypeNameAndDebug(manualRenumber, 0); + defineTypeName(manualRenumber); addToRunTimeSelectionTable ( @@ -48,12 +47,19 @@ namespace Foam // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +Foam::manualRenumber::manualRenumber(const fileName& file) +: + renumberMethod(), + dataFile_(file) +{} + + Foam::manualRenumber::manualRenumber(const dictionary& dict) : renumberMethod(dict), dataFile_ ( - dict.optionalSubDict(typeName+"Coeffs").get<fileName>("dataFile") + dict.optionalSubDict(typeName + "Coeffs").get<fileName>("dataFile") ) {} @@ -62,10 +68,11 @@ Foam::manualRenumber::manualRenumber(const dictionary& dict) Foam::labelList Foam::manualRenumber::renumber ( - const polyMesh& mesh, - const pointField& points + const polyMesh& mesh ) const { + const label nCells = mesh.nCells(); + labelList newToOld ( labelIOList::readContents @@ -81,31 +88,27 @@ Foam::labelList Foam::manualRenumber::renumber ); // Check if the final renumbering is OK - if (newToOld.size() != points.size()) + if (newToOld.size() != nCells) { FatalErrorInFunction - << "Size of renumber list does not correspond " - << "to the number of points. Size: " - << newToOld.size() << " Number of points: " - << points.size() - << ".\n" << "Manual renumbering data read from file " - << dataFile_ << "." << endl + << "Size of renumber list: " + << newToOld.size() << " != number of cells: " << nCells << nl + << "Renumbering data read from file " << dataFile_ << endl << exit(FatalError); } // Invert to see if one to one - labelList oldToNew(points.size(), -1); + labelList oldToNew(nCells, -1); forAll(newToOld, i) { const label origCelli = newToOld[i]; - if (origCelli < 0 || origCelli >= points.size()) + if (origCelli < 0 || origCelli >= nCells) { FatalErrorInFunction - << "Renumbering is not one-to-one. Index " - << i << " maps onto original cell " << origCelli - << ".\n" << "Manual renumbering data read from file " - << dataFile_ << nl + << "Renumbering range error. Index " << i + << " maps to cell " << origCelli << " from " << nCells << nl + << "Renumbering data read from file " << dataFile_ << endl << exit(FatalError); } @@ -118,8 +121,7 @@ Foam::labelList Foam::manualRenumber::renumber FatalErrorInFunction << "Renumbering is not one-to-one. Index " << i << " and " << oldToNew[origCelli] << " map onto " << origCelli << nl - << "Manual renumbering data read from file " - << dataFile_ << nl + << "Renumbering data read from file " << dataFile_ << endl << exit(FatalError); } } diff --git a/src/renumber/renumberMethods/manualRenumber/manualRenumber.H b/src/renumber/renumberMethods/manualRenumber/manualRenumber.H index f6dbb1abf5aaa6ac950779bf88464dc603159752..42cfded2049eadc679bc528c8137ccdc258c9ce7 100644 --- a/src/renumber/renumberMethods/manualRenumber/manualRenumber.H +++ b/src/renumber/renumberMethods/manualRenumber/manualRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -55,23 +55,17 @@ class manualRenumber fileName dataFile_; - - // Private Member Functions - - //- No copy construct - manualRenumber(const manualRenumber&) = delete; - - //- No copy assignment - void operator=(const manualRenumber&) = delete; - public: //- Runtime type information - TypeName("manual"); + TypeNameNoDebug("manual"); // Constructors + //- Construct with given data file + explicit manualRenumber(const fileName& file); + //- Construct given the renumber dictionary explicit manualRenumber(const dictionary& dict); @@ -82,41 +76,35 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } + //- The renumbering method needs a polyMesh (for its IOobject) + virtual bool needs_mesh() const { return true; } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Uses mesh for regIOobject - virtual labelList renumber - ( - const polyMesh& mesh, - const pointField& cc - ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh for its IOobject and instance. + virtual labelList renumber(const polyMesh& mesh) const; + + + // With explicit topology - Not implemented! + + //- Return the cell visit order (from ordered back to original cell id) + //- Not implemented! virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + const CompactListList<label>& cellCells ) const { NotImplemented; return labelList(); } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Return the cell visit order (from ordered back to original cell id) + //- Not implemented! virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + const labelListList& cellCells ) const { NotImplemented; diff --git a/src/renumber/renumberMethods/noRenumber/noRenumber.C b/src/renumber/renumberMethods/noRenumber/noRenumber.C new file mode 100644 index 0000000000000000000000000000000000000000..2e647b0004832b218d15914a60bbe85256270c08 --- /dev/null +++ b/src/renumber/renumberMethods/noRenumber/noRenumber.C @@ -0,0 +1,108 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +\*---------------------------------------------------------------------------*/ + +#include "noRenumber.H" +#include "addToRunTimeSelectionTable.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeName(noRenumber); + + addNamedToRunTimeSelectionTable + ( + renumberMethod, + noRenumber, + dictionary, + none + ); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::noRenumber::noRenumber() +: + renumberMethod() +{} + + +Foam::noRenumber::noRenumber(const dictionary& dict) +: + renumberMethod(dict) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +Foam::labelList Foam::noRenumber::renumber +( + const label nCells +) const +{ + return Foam::identity(nCells); +} + + +Foam::labelList Foam::noRenumber::renumber +( + const pointField& cellCentres +) const +{ + return Foam::identity(cellCentres.size()); +} + + +Foam::labelList Foam::noRenumber::renumber +( + const polyMesh& mesh +) const +{ + return Foam::identity(mesh.nCells()); +} + + +Foam::labelList Foam::noRenumber::renumber +( + const CompactListList<label>& cellCells +) const +{ + return Foam::identity(cellCells.size()); +} + + +Foam::labelList Foam::noRenumber::renumber +( + const labelListList& cellCells +) const +{ + return Foam::identity(cellCells.size()); +} + + +// ************************************************************************* // diff --git a/src/renumber/renumberMethods/noRenumber/noRenumber.H b/src/renumber/renumberMethods/noRenumber/noRenumber.H new file mode 100644 index 0000000000000000000000000000000000000000..03a5c37018cf888082dfcc8df1a5d171a52476b0 --- /dev/null +++ b/src/renumber/renumberMethods/noRenumber/noRenumber.H @@ -0,0 +1,130 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2024 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +Class + Foam::noRenumber + +Description + A dummy renumber method, selected as \c none. + + Method coefficients: \a none + +SourceFiles + noRenumber.C + +\*---------------------------------------------------------------------------*/ + +#ifndef Foam_noRenumber_H +#define Foam_noRenumber_H + +#include "renumberMethod.H" + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class noRenumber Declaration +\*---------------------------------------------------------------------------*/ + +class noRenumber +: + public renumberMethod +{ +public: + + //- Runtime type information + TypeNameNoDebug("none"); + + + // Constructors + + //- Default construct + noRenumber(); + + //- Construct given the renumber dictionary (unused) + explicit noRenumber(const dictionary& dict); + + + //- Destructor + virtual ~noRenumber() = default; + + + // Member Functions + + //- Renumbering method without mesh or cell-cell topology! + virtual bool no_topology() const { return true; } + + + // No topology + + //- Return the cell visit order (from ordered back to original cell id) + //- based solely on the number of cells. + virtual labelList renumber(const label nCells) const; + + //- Return the cell visit order (from ordered back to original cell id). + //- based solely on pointField size + virtual labelList renumber(const pointField&) const; + + + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh only for the number of cells + virtual labelList renumber + ( + //! Mesh provides the number of cells + const polyMesh& mesh + ) const; + + + // With explicit topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the topology only for the number of cells + virtual labelList renumber + ( + //! Connectivity provides the number of cells + const CompactListList<label>& cellCells + ) const; + + //- Return the cell visit order (from ordered back to original cell id) + //- using the topology only for the number of cells + virtual labelList renumber + ( + //! Connectivity provides the number of cells + const labelListList& cellCells + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/renumber/renumberMethods/randomRenumber/randomRenumber.C b/src/renumber/renumberMethods/randomRenumber/randomRenumber.C index a18be4d3c8d424f0d0b5ab6d90f00c9c28fcc7a1..2a79a544cb75c500fff3fd0f56a65b899d468f74 100644 --- a/src/renumber/renumberMethods/randomRenumber/randomRenumber.C +++ b/src/renumber/renumberMethods/randomRenumber/randomRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2021-2022 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,11 +30,11 @@ License #include "Random.H" #include "addToRunTimeSelectionTable.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - defineTypeNameAndDebug(randomRenumber, 0); + defineTypeName(randomRenumber); addToRunTimeSelectionTable ( @@ -45,8 +45,39 @@ namespace Foam } +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // + +namespace Foam +{ + +labelList randomMap(const label nCells) +{ + Random rndGen(0); + + // Full coverage + labelList newToOld(Foam::identity(nCells)); + + // Fisher-Yates shuffle algorithm + for (label i = nCells - 1; i > 0; --i) + { + label j = rndGen.position<label>(0, i); + std::swap(newToOld[i], newToOld[j]); + } + + return newToOld; +} + +} // End namespace Foam + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +Foam::randomRenumber::randomRenumber() +: + renumberMethod() +{} + + Foam::randomRenumber::randomRenumber(const dictionary& dict) : renumberMethod(dict) @@ -57,52 +88,46 @@ Foam::randomRenumber::randomRenumber(const dictionary& dict) Foam::labelList Foam::randomRenumber::renumber ( - const pointField& points + const label nCells ) const { - Random rndGen(0); + return randomMap(nCells); +} - labelList newToOld(identity(points.size())); - for (label iter = 0; iter < 10; iter++) - { - forAll(newToOld, i) - { - label j = rndGen.position<label>(0, newToOld.size()-1); - std::swap(newToOld[i], newToOld[j]); - } - } - return newToOld; +Foam::labelList Foam::randomRenumber::renumber +( + const pointField& cellCentres +) const +{ + return randomMap(cellCentres.size()); } Foam::labelList Foam::randomRenumber::renumber ( - const polyMesh& mesh, - const pointField& points + const polyMesh& mesh ) const { - return renumber(points); + return randomMap(mesh.nCells()); } Foam::labelList Foam::randomRenumber::renumber ( - const CompactListList<label>& cellCells, - const pointField& points + const CompactListList<label>& cellCells ) const { - return renumber(points); + return randomMap(cellCells.size()); } Foam::labelList Foam::randomRenumber::renumber ( - const labelListList& cellCells, - const pointField& points + const labelListList& cellCells ) const { - return renumber(points); + return randomMap(cellCells.size()); } diff --git a/src/renumber/renumberMethods/randomRenumber/randomRenumber.H b/src/renumber/renumberMethods/randomRenumber/randomRenumber.H index 233a98638c6f5f14864f11aa28ba6cac6cf404dc..8637f2e977b37a55291128c70d80edfd4d90cc5f 100644 --- a/src/renumber/renumberMethods/randomRenumber/randomRenumber.H +++ b/src/renumber/renumberMethods/randomRenumber/randomRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,24 +51,18 @@ class randomRenumber : public renumberMethod { - // Private Member Functions - - //- No copy construct - randomRenumber(const randomRenumber&) = delete; - - //- No copy assignment - void operator=(const randomRenumber&) = delete; - - public: //- Runtime type information - TypeName("random"); + TypeNameNoDebug("random"); // Constructors - //- Construct given the renumber dictionary + //- Default construct + randomRenumber(); + + //- Construct given the renumber dictionary (unused) explicit randomRenumber(const dictionary& dict); @@ -78,28 +72,48 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Renumbering method without mesh or cell-cell topology! + virtual bool no_topology() const { return true; } + + + // No topology + + //- Return the cell visit order (from ordered back to original cell id) + //- based solely on the number of cells. + virtual labelList renumber(const label nCells) const; + + //- Return the cell visit order (from ordered back to original cell id). + //- based solely on pointField size virtual labelList renumber(const pointField&) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - virtual labelList renumber(const polyMesh&, const pointField&) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh only for the number of cells + virtual labelList renumber + ( + //! Mesh provides the number of cells + const polyMesh& mesh + ) const; + + + // With explicit topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the topology only for the number of cells virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + //! Connectivity provides the number of cells + const CompactListList<label>& cellCells ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Return the cell visit order (from ordered back to original cell id) + //- using the topology only for the number of cells virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + //! Connectivity provides the number of cells + const labelListList& cellCells ) const; }; diff --git a/src/renumber/renumberMethods/renumberMethod/renumberMethod.C b/src/renumber/renumberMethods/renumberMethod/renumberMethod.C index 2ea1cf0c7e9d5f401e7085bb697db52b10be6e90..cd31aac8326f53eda7a17fe27d780559c8bef86a 100644 --- a/src/renumber/renumberMethods/renumberMethod/renumberMethod.C +++ b/src/renumber/renumberMethods/renumberMethod/renumberMethod.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -27,18 +27,30 @@ License \*---------------------------------------------------------------------------*/ #include "renumberMethod.H" +#include "dlLibraryTable.H" #include "globalMeshData.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - defineTypeNameAndDebug(renumberMethod, 0); + defineTypeName(renumberMethod); defineRunTimeSelectionTable(renumberMethod, dictionary); } + // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // +Foam::wordList Foam::renumberMethod::supportedMethods() +{ + if (dictionaryConstructorTablePtr_) + { + return dictionaryConstructorTablePtr_->sortedToc(); + } + return wordList(); +} + + Foam::autoPtr<Foam::renumberMethod> Foam::renumberMethod::New ( const dictionary& dict @@ -48,6 +60,9 @@ Foam::autoPtr<Foam::renumberMethod> Foam::renumberMethod::New //Info<< "Selecting renumberMethod " << methodType << endl; + // Load any additional libs (verbose = false) + dlLibraryTable::libs().open("libs", dict, false); + auto* ctorPtr = dictionaryConstructorTable(methodType); if (!ctorPtr) @@ -67,52 +82,37 @@ Foam::autoPtr<Foam::renumberMethod> Foam::renumberMethod::New // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::labelList Foam::renumberMethod::renumber -( - const polyMesh& mesh, - const pointField& points -) const +Foam::labelList Foam::renumberMethod::renumber(const label nCells) const { - CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - false, // local only - cellCells - ); - - return renumber(cellCells, points); + NotImplemented; + return labelList(); } -Foam::labelList Foam::renumberMethod::renumber -( - const CompactListList<label>& cellCells, - const pointField& points -) const +Foam::labelList Foam::renumberMethod::renumber(const pointField& cc) const { - return renumber(cellCells.unpack(), points); + NotImplemented; + return labelList(); } Foam::labelList Foam::renumberMethod::renumber ( - const labelList& cellCells, - const labelList& offsets, - const pointField& cc + const polyMesh& mesh ) const { - NotImplemented; - return labelList(); + // Local mesh connectivity + CompactListList<label> cellCells; + globalMeshData::calcCellCells(mesh, cellCells); + + return renumber(cellCells); } Foam::labelList Foam::renumberMethod::renumber ( const polyMesh& mesh, - const labelList& fineToCoarse, + const labelUList& fineToCoarse, const pointField& coarsePoints ) const { @@ -121,16 +121,13 @@ Foam::labelList Foam::renumberMethod::renumber ( mesh, fineToCoarse, - coarsePoints.size(), - false, // local only + coarsePoints.size(), // nLocalCoarse + false, // local only (parallel = false) coarseCellCells ); // Renumber based on agglomerated points - labelList coarseDistribution - ( - renumber(coarseCellCells, coarsePoints) - ); + labelList coarseDistribution = renumber(coarseCellCells); // From coarse back to fine for original mesh return labelList(coarseDistribution, fineToCoarse); diff --git a/src/renumber/renumberMethods/renumberMethod/renumberMethod.H b/src/renumber/renumberMethods/renumberMethod/renumberMethod.H index bc23c854041a001e731a93ba7eed4a99d9c3830b..ec751c5eeb672204cd370e0ef3c5585e12a58139 100644 --- a/src/renumber/renumberMethods/renumberMethod/renumberMethod.H +++ b/src/renumber/renumberMethods/renumberMethod/renumberMethod.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,6 +41,7 @@ SourceFiles #include "polyMesh.H" #include "pointField.H" #include "CompactListList.H" +#include "wordList.H" namespace Foam { @@ -51,26 +52,10 @@ namespace Foam class renumberMethod { -protected: - - // Protected Data - - const dictionary& renumberDict_; - - - // Protected Member Functions - - //- No copy construct - renumberMethod(const renumberMethod&) = delete; - - //- No copy assignment - void operator=(const renumberMethod&) = delete; - - public: //- Runtime type information - TypeName("renumberMethod"); + TypeNameNoDebug("renumberMethod"); // Declare run-time constructor selection tables @@ -87,22 +72,24 @@ public: ); - // Selectors + // Constructors - //- Return a reference to the selected renumbering method - static autoPtr<renumberMethod> New - ( - const dictionary& renumberDict - ); + //- Default construct + renumberMethod() + {} + //- Construct with renumber dictionary (which is currently unused) + explicit renumberMethod(const dictionary&) + {} - // Constructors - //- Construct given the renumber dictionary - explicit renumberMethod(const dictionary& dict) - : - renumberDict_(dict) - {} + // Selectors + + //- Construct/select a renumbering method + static autoPtr<renumberMethod> New(const dictionary& dict); + + //- Return a list of the known methods + static wordList supportedMethods(); //- Destructor @@ -111,64 +98,99 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } + //- Renumbering method without mesh or cell-cell topology + //- (very special case) + virtual bool no_topology() const { return false; } + + //- Renumbering method requires a polyMesh for its topology + virtual bool needs_mesh() const { return false; } + + + // No topology + + //- Return the cell visit order (from ordered back to original cell id) + //- based solely on the number of cells. + // Only applicable for no_topology() methods. + virtual labelList renumber(const label nCells) const; + + //- Return the cell visit order (from ordered back to original cell id) + //- based solely on the cell centres (or number of cell centres). + // Only applicable for no_topology() methods. + virtual labelList renumber(const pointField&) const; + + + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh to determine the connectivity. + virtual labelList renumber(const polyMesh& mesh) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) - virtual labelList renumber(const polyMesh&, const pointField&) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Addressing in losort addressing (= neighbour + offsets into - // neighbour) + // With explicit topology + + //- Return the cell visit order (from ordered back to original cell id), virtual labelList renumber ( - const labelList& cellCells, - const labelList& offsets, - const pointField& - ) const; + //! Mesh connectivity + const CompactListList<label>& cellCells + ) const = 0; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Gets passed agglomeration map (from fine to coarse cells) and coarse - // cell - // location. Can be overridden by renumberMethods that provide this - // functionality natively. Coarse cells are local to the processor - // (if in parallel). If you want to have coarse cells spanning - // processors use the globalCellCells instead. + //- Return the cell visit order (from ordered back to original cell id), + virtual labelList renumber + ( + //! Mesh connectivity + const labelListList& cellCells + ) const = 0; + + + // Housekeeping + + //- Deprecated - the pointField is unused + // \deprecated(2024-03) the pointField is unused + FOAM_DEPRECATED_FOR(2024-03, "renumber(const polyMesh&)") virtual labelList renumber ( const polyMesh& mesh, - const labelList& fineToCoarse, - const pointField& coarsePoints - ) const; + const pointField& + ) const + { + return renumber(mesh); + } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Uses 'unpack' internally, so should be overloaded when possible + //- Deprecated - the pointField is unused + // \deprecated(2024-03) the pointField is unused + FOAM_DEPRECATED_FOR(2024-03, "renumber(const CompactListList<label>&)") virtual labelList renumber ( const CompactListList<label>& cellCells, - const pointField& cellCentres - ) const; + const pointField& + ) const + { + return renumber(cellCells); + } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // The connectivity is equal to mesh.cellCells() except - // - the connections are across coupled patches + //- Deprecated - the pointField is unused + // \deprecated(2024-03) the pointField is unused + FOAM_DEPRECATED_FOR(2024-03, "renumber(const labelListList&)") virtual labelList renumber ( const labelListList& cellCells, - const pointField& cellCentres - ) const = 0; + const pointField& + ) const + { + return renumber(cellCells); + } + + //- Deprecated - renumbering with agglomeration map. + //- Calculate globalCellCells directly + // \deprecated(2024-03) calculate globalCellCells directly + FOAM_DEPRECATED_FOR(2024-03, "calcCellCells and renumber separately") + virtual labelList renumber + ( + const polyMesh& mesh, + const labelUList& fineToCoarse, + const pointField& coarsePoints + ) const; }; diff --git a/src/renumber/renumberMethods/springRenumber/springRenumber.C b/src/renumber/renumberMethods/springRenumber/springRenumber.C index f7b79dfc93eabf152f305f1389e1626d50baf332..c46a8ef5f4ec67ed939560d8bce4e1e4c385dc8b 100644 --- a/src/renumber/renumberMethods/springRenumber/springRenumber.C +++ b/src/renumber/renumberMethods/springRenumber/springRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019-2023 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,10 +50,11 @@ namespace Foam Foam::springRenumber::springRenumber(const dictionary& dict) : renumberMethod(dict), - coeffsDict_(dict.optionalSubDict(typeName+"Coeffs")), + coeffsDict_(dict.optionalSubDict(typeName + "Coeffs")), maxIter_(coeffsDict_.get<label>("maxIter")), maxCo_(coeffsDict_.get<scalar>("maxCo")), - freezeFraction_(coeffsDict_.get<scalar>("freezeFraction")) + freezeFraction_(coeffsDict_.get<scalar>("freezeFraction")), + verbose_(coeffsDict_.getOrDefault("verbose", true)) {} @@ -71,15 +72,12 @@ Foam::labelList Foam::springRenumber::renumberImpl // Move cells to the average 'position' of their neighbour. scalarField position(nOldCells); - forAll(position, celli) - { - position[celli] = celli; - } + std::iota(position.begin(), position.end(), 0); // Sum force per cell. Also reused for the displacement scalarField sumForce(nOldCells); - labelList oldToNew(identity(nOldCells)); + labelList oldToNew(Foam::identity(nOldCells)); scalar maxCo = (maxCo_ * nOldCells); @@ -90,9 +88,9 @@ Foam::labelList Foam::springRenumber::renumberImpl // << endl; //Pout<< "Position :" << nl - // << " min : " << min(position) << nl - // << " max : " << max(position) << nl - // << " avg : " << average(position) << nl + // << " min : " << Foam::min(position) << nl + // << " max : " << Foam::max(position) << nl + // << " avg : " << Foam::average(position) << nl // << endl; // Sum force per cell. @@ -100,9 +98,8 @@ Foam::labelList Foam::springRenumber::renumberImpl for (label oldCelli = 0; oldCelli < nOldCells; ++oldCelli) { const label celli = oldToNew[oldCelli]; - const auto& neighbours = cellCells[oldCelli]; - for (const label nbr : neighbours) + for (const label nbr : cellCells[oldCelli]) { const label nbrCelli = oldToNew[nbr]; @@ -111,35 +108,38 @@ Foam::labelList Foam::springRenumber::renumberImpl } //Pout<< "Force :" << nl - // << " min : " << min(sumForce) << nl - // << " max : " << max(sumForce) << nl - // << " avgMag : " << average(mag(sumForce)) << nl + // << " min : " << Foam::min(sumForce) << nl + // << " max : " << Foam::max(sumForce) << nl + // << " avgMag : " << Foam::average(mag(sumForce)) << nl // << "DeltaT : " << deltaT << nl // << endl; // Limit displacement scalar deltaT = maxCo / max(mag(sumForce)); - Info<< "Iter:" << iter - << " maxCo:" << maxCo - << " deltaT:" << deltaT - << " average force:" << average(mag(sumForce)) << endl; + if (verbose_) + { + Info<< "Iter:" << iter + << " maxCo:" << maxCo + << " deltaT:" << deltaT + << " average force:" << average(mag(sumForce)) << endl; + } // Determine displacement scalarField& displacement = sumForce; displacement *= deltaT; //Pout<< "Displacement :" << nl - // << " min : " << min(displacement) << nl - // << " max : " << max(displacement) << nl - // << " avgMag : " << average(mag(displacement)) << nl + // << " min : " << Foam::min(displacement) << nl + // << " max : " << Foam::max(displacement) << nl + // << " avgMag : " << Foam::average(mag(displacement)) << nl // << endl; // Calculate new position and scale to be within original range // (0..nCells-1) for ease of postprocessing. position += displacement; - position -= min(position); - position *= (position.size()-1)/max(position); + position -= Foam::min(position); + position *= (position.size()-1)/Foam::max(position); // Slowly freeze. maxCo *= freezeFraction_; @@ -148,7 +148,7 @@ Foam::labelList Foam::springRenumber::renumberImpl //writeOBJ("endPosition.obj", cellCells, position); // Move cells to new position - labelList shuffle(sortedOrder(position)); + labelList shuffle(Foam::sortedOrder(position)); // Reorder oldToNew inplaceReorder(shuffle, oldToNew); @@ -159,19 +159,12 @@ Foam::labelList Foam::springRenumber::renumberImpl Foam::labelList Foam::springRenumber::renumber ( - const polyMesh& mesh, - const pointField& + const polyMesh& mesh ) const { + // Local mesh connectivity CompactListList<label> cellCells; - globalMeshData::calcCellCells - ( - mesh, - identity(mesh.nCells()), - mesh.nCells(), - false, // local only - cellCells - ); + globalMeshData::calcCellCells(mesh, cellCells); return renumberImpl(cellCells); } @@ -179,8 +172,7 @@ Foam::labelList Foam::springRenumber::renumber Foam::labelList Foam::springRenumber::renumber ( - const CompactListList<label>& cellCells, - const pointField& + const CompactListList<label>& cellCells ) const { return renumberImpl(cellCells); @@ -189,8 +181,7 @@ Foam::labelList Foam::springRenumber::renumber Foam::labelList Foam::springRenumber::renumber ( - const labelListList& cellCells, - const pointField& + const labelListList& cellCells ) const { return renumberImpl(cellCells); diff --git a/src/renumber/renumberMethods/springRenumber/springRenumber.H b/src/renumber/renumberMethods/springRenumber/springRenumber.H index c7e6ae4f9e9e47e4840c21d59fa693312ebc1f2a..5d95ca1469cf82ed67d39fd42ceda3826c8a7380 100644 --- a/src/renumber/renumberMethods/springRenumber/springRenumber.H +++ b/src/renumber/renumberMethods/springRenumber/springRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -72,6 +72,9 @@ class springRenumber const scalar freezeFraction_; + //- Verbose reporting of progress + bool verbose_; + // Private Member Functions @@ -108,40 +111,31 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } - - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- using the mesh to determine the connectivity. virtual labelList renumber ( - const polyMesh& mesh, - const pointField& + //! Mesh connectivity (see globalMeshData::calcCellCells) + const polyMesh& mesh ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + + // With explicit topology + + //- Return the cell visit order (from ordered back to original cell id) virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + //! Mesh connectivity + const CompactListList<label>& cellCells ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // The connectivity is equal to mesh.cellCells() except - // - the connections are across coupled patches + //- Return the cell visit order (from ordered back to original cell id) virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + //! Mesh connectivity + const labelListList& cellCells ) const; }; diff --git a/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.C b/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.C index e94aa0406b1f71271a0e6e6910810ee599303e50..7f250083379d0752fc217e7f2697d45615f4dc9f 100644 --- a/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.C +++ b/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2017 OpenFOAM Foundation - Copyright (C) 2018-2020 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -32,7 +32,7 @@ License #include "fvMeshSubset.H" #include "OppositeFaceCellWave.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { @@ -59,7 +59,7 @@ Foam::structuredRenumber::structuredRenumber patches_(coeffsDict_.get<wordRes>("patches")), nLayers_(coeffsDict_.getOrDefault<label>("nLayers", labelMax)), depthFirst_(coeffsDict_.get<bool>("depthFirst")), - reverse_(coeffsDict_.get<bool>("reverse")), + reverse_(coeffsDict_.getOrDefault("reverse", false)), method_(renumberMethod::New(coeffsDict_)) {} @@ -70,10 +70,10 @@ bool Foam::structuredRenumber::layerLess::operator() ( const label a, const label b -) +) const { - const topoDistanceData<label>& ta = distance_[a]; - const topoDistanceData<label>& tb = distance_[b]; + const auto& ta = distance_[a]; + const auto& tb = distance_[b]; int dummy; @@ -137,18 +137,9 @@ bool Foam::structuredRenumber::layerLess::operator() Foam::labelList Foam::structuredRenumber::renumber ( - const polyMesh& mesh, - const pointField& points + const polyMesh& mesh ) const { - if (points.size() != mesh.nCells()) - { - FatalErrorInFunction - << "Number of points " << points.size() - << " should equal the number of cells " << mesh.nCells() - << exit(FatalError); - } - const polyBoundaryMesh& pbm = mesh.boundaryMesh(); const labelHashSet patchIDs(pbm.patchSet(patches_)); @@ -187,21 +178,20 @@ Foam::labelList Foam::structuredRenumber::renumber dynamic_cast<const fvMesh&>(mesh), patchCells ); - const fvMesh& subMesh = subsetter.subMesh(); - pointField subPoints(points, subsetter.cellMap()); + const labelList& cellMap = subsetter.cellMap(); // Locally renumber the layer of cells - labelList subOrder(method_().renumber(subMesh, subPoints)); + labelList subOrder = method_().renumber(subsetter.subMesh()); labelList subOrigToOrdered(invert(subOrder.size(), subOrder)); - globalIndex globalSubCells(subOrder.size()); + const globalIndex globalSubCells(subOrder.size()); // Transfer to final decomposition and convert into global numbering forAll(subOrder, i) { - orderedToOld[subsetter.cellMap()[i]] = + orderedToOld[cellMap[i]] = globalSubCells.toGlobal(subOrigToOrdered[i]); } } @@ -253,11 +243,7 @@ Foam::labelList Foam::structuredRenumber::renumber // by any visited cell so are used only if the number of nLayers is limited. labelList oldToOrdered ( - invert - ( - mesh.nCells(), - method_().renumber(mesh, points) - ) + invert(mesh.nCells(), method_().renumber(mesh)) ); // Use specialised sorting to sorted either layers or columns first @@ -273,7 +259,7 @@ Foam::labelList Foam::structuredRenumber::renumber // Return furthest away cell first if (reverse_) { - reverse(orderedToOld); + Foam::reverse(orderedToOld); } return orderedToOld; diff --git a/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.H b/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.H index c79ce09a46a695d8df41628c412e2a6ff040beee..37477cfe15abdbcf941d0bbf300e02a1e8447e1a 100644 --- a/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.H +++ b/src/renumber/renumberMethods/structuredRenumber/structuredRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,7 +52,7 @@ namespace Foam template<class Type> class topoDistanceData; /*---------------------------------------------------------------------------*\ - Class structuredRenumber Declaration + Class structuredRenumber Declaration \*---------------------------------------------------------------------------*/ class structuredRenumber @@ -63,8 +63,7 @@ public: // Public Classes - //- Less function class that can be used for sorting according to - // column and layer + //- Function class for sorting according to column and layer class layerLess { const bool depthFirst_; @@ -85,10 +84,12 @@ public: distance_(distance) {} - bool operator()(const label a, const label b); + bool operator()(const label a, const label b) const; }; +private: + // Private Data const dictionary& coeffsDict_; @@ -131,42 +132,38 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } + //- Renumbering method requires a polyMesh! + virtual bool needs_mesh() const { return true; } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) + + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + // using the mesh. virtual labelList renumber ( - const polyMesh& mesh, - const pointField& cc + const polyMesh& mesh ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + + // With explicit topology - Not implemented! + + //- Return the cell visit order (from ordered back to original cell id). + //- Not implemented! virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + const CompactListList<label>& cellCells ) const { NotImplemented; return labelList(); } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Return the cell visit order (from ordered back to original cell id). + //- Not implemented! virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + const labelListList& cellCells ) const { NotImplemented; diff --git a/src/renumber/zoltanRenumber/Make/files b/src/renumber/zoltanRenumber/Make/files index 15659a52d0ff71ca05f4f1f116cfe6f74df85cae..91cd6da72b5f2a8444da76f4ed2d5dbf801e24ce 100644 --- a/src/renumber/zoltanRenumber/Make/files +++ b/src/renumber/zoltanRenumber/Make/files @@ -1,3 +1,4 @@ zoltanRenumber.C -LIB = $(FOAM_LIBBIN)/libzoltanRenumber +/* Build with MPI dependency */ +LIB = $(FOAM_MPI_LIBBIN)/libzoltanRenumber diff --git a/src/renumber/zoltanRenumber/Make/options b/src/renumber/zoltanRenumber/Make/options index 589a3edc8b56484dbbe4de6d3b33f3d2eec0fb34..54063354a0eac983a7649946b001b1781e7c9a50 100644 --- a/src/renumber/zoltanRenumber/Make/options +++ b/src/renumber/zoltanRenumber/Make/options @@ -8,5 +8,7 @@ EXE_INC = \ -I$(LIB_SRC)/meshTools/lnInclude LIB_LIBS = \ - -L$(ZOLTAN_LIB_DIR) -lzoltan \ - -lmeshTools + -lmeshTools \ + -lrenumberMethods \ + $(PLIBS) \ + -L$(ZOLTAN_LIB_DIR) -lzoltan diff --git a/src/renumber/zoltanRenumber/zoltanRenumber.C b/src/renumber/zoltanRenumber/zoltanRenumber.C index 7b50f620d081950e16af164d881841d982721e4f..58348e8dc9355047f10ad1e2e2087a9600ea323b 100644 --- a/src/renumber/zoltanRenumber/zoltanRenumber.C +++ b/src/renumber/zoltanRenumber/zoltanRenumber.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -23,10 +24,7 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Class - Foam::zoltanRenumber - -Description +Notes Renumber using Zoltan Zoltan install: @@ -45,9 +43,6 @@ Description --prefix=$ZOLTAN_ARCH_DIR \ --with-ccflags=-fPIC --with-cxxflags=-fPIC --with-ldflags=-shared -SourceFiles - zoltanRenumber.C - \*---------------------------------------------------------------------------*/ #include "zoltanRenumber.H" @@ -57,7 +52,10 @@ SourceFiles #include "polyMesh.H" #include "globalMeshData.H" #include "globalIndex.H" +#include "CStringList.H" #include "uint.H" +#include <algorithm> +#include <numeric> // Include MPI without any C++ bindings #ifndef MPICH_SKIP_MPICXX @@ -71,7 +69,7 @@ SourceFiles #include "zoltan.h" #include <mpi.h> -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { @@ -86,43 +84,80 @@ namespace Foam } +// * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // + +// [ZOLTAN_NUM_OBJ_FN] +// The number of graph vertices (locally) static int get_number_of_vertices(void *data, int *ierr) { - const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); *ierr = ZOLTAN_OK; + const auto& mesh = *static_cast<const Foam::polyMesh*>(data); + return mesh.nCells(); } -static void get_vertex_list(void *data, int sizeGID, int sizeLID, - ZOLTAN_ID_PTR globalID, ZOLTAN_ID_PTR localID, - int wgt_dim, float *obj_wgts, int *ierr) +// [ZOLTAN_OBJ_LIST_FN] +// The ids for the graph vertices +static void get_vertex_list +( + void *data, + int sizeGID, // (currently unused) + int sizeLID, // (currently unused) + ZOLTAN_ID_PTR global_ids, + ZOLTAN_ID_PTR local_ids, + int wgt_dim, // (currently unused) + float *obj_wgts, // (currently unused) + int *ierr +) { - const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); - *ierr = ZOLTAN_OK; + const auto& mesh = *static_cast<const Foam::polyMesh*>(data); - /* In this example, return the IDs of our vertices, but no weights. - * Zoltan will assume equally weighted vertices. - */ + const auto nCells = mesh.nCells(); - wgt_dim = 0; - obj_wgts = nullptr; + // Offset for globally unique IDs + const auto myProci = Foam::UPstream::myProcNo(); + const auto myProcOffset = + mesh.globalData().globalMeshCellAddr().localStart(myProci); - for (Foam::label i=0; i<mesh.nCells(); i++) - { - globalID[i] = i; // should be global - localID[i] = i; - } + // Global indices + std::iota(global_ids, (global_ids + nCells), ZOLTAN_ID_TYPE(myProcOffset)); + + // Local indices + std::iota(local_ids, (local_ids + nCells), ZOLTAN_ID_TYPE(0)); + + // No weights? + // Zoltan will assume equally weighted vertices. + + // if (obj_wgts && wgt_dim > 0) + // { + // std::fill_n(obj_wgts, wgt_dim, float(1)); + // } } -static void get_num_edges_list(void *data, int sizeGID, int sizeLID, - int num_obj, - ZOLTAN_ID_PTR globalID, ZOLTAN_ID_PTR localID, - int *numEdges, int *ierr) +// [ZOLTAN_NUM_EDGES_MULTI_FN] +// query function returns the number of edges in the communication +// graph of the application for each object in a list of objects. +// That is, for each object in the global_ids/local_ids arrays, the +// number of objects with which the given object must share +// information is returned. + +static void get_num_edges_list +( + void *data, + int sizeGID, + int sizeLID, + int num_obj, // Number of graph vertices (mesh cells) + ZOLTAN_ID_PTR global_ids, // (currently unused) + ZOLTAN_ID_PTR local_ids, // rank-local vertex id (mesh cell id) + int *numEdges, + int *ierr +) { - const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); + *ierr = ZOLTAN_OK; + const auto& mesh = *static_cast<const Foam::polyMesh*>(data); if ((sizeGID != 1) || (sizeLID != 1) || (num_obj != mesh.nCells())) { @@ -130,32 +165,46 @@ static void get_num_edges_list(void *data, int sizeGID, int sizeLID, return; } - for (Foam::label i=0; i < num_obj ;i++) + const Foam::label nCells = num_obj; + + for (Foam::label i=0; i < nCells; ++i) { - Foam::label celli = localID[i]; - const Foam::cell& cFaces = mesh.cells()[celli]; - forAll(cFaces, cFacei) + const Foam::label celli = local_ids[i]; + int numNbr = 0; + + for (const auto facei : mesh.cells()[celli]) { - Foam::label n = 0; - if (mesh.isInternalFace(cFaces[cFacei])) + if (mesh.isInternalFace(facei)) { - n++; + ++numNbr; } - numEdges[i] = n; + // TBD: check coupled etc } - } - *ierr = ZOLTAN_OK; + numEdges[i] = numNbr; + } } -static void get_edge_list(void *data, int sizeGID, int sizeLID, - int num_obj, ZOLTAN_ID_PTR globalID, ZOLTAN_ID_PTR localID, - int *num_edges, - ZOLTAN_ID_PTR nborGID, int *nborProc, - int wgt_dim, float *ewgts, int *ierr) +// [ZOLTAN_EDGE_LIST_MULTI_FN] +static void get_edge_list +( + void *data, + int sizeGID, + int sizeLID, + int num_obj, + ZOLTAN_ID_PTR global_ids, // (currently unused) + ZOLTAN_ID_PTR local_ids, // rank-local vertex id (mesh cell id) + int *num_edges, + ZOLTAN_ID_PTR nborGID, + int *nborProc, + int wgt_dim, + float *ewgts, + int *ierr +) { - const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); + *ierr = ZOLTAN_OK; + const auto& mesh = *static_cast<const Foam::polyMesh*>(data); if ( @@ -169,20 +218,24 @@ static void get_edge_list(void *data, int sizeGID, int sizeLID, return; } - ZOLTAN_ID_TYPE* nextNbor = nborGID; - int* nextProc = nborProc; - float* nextWgt = ewgts; + // Offset for globally unique IDs + const auto myProci = Foam::UPstream::myProcNo(); + const auto myProcOffset = + mesh.globalData().globalMeshCellAddr().localStart(myProci); + + auto* nextNbor = nborGID; + auto* nextProc = nborProc; + auto* nextWgt = ewgts; + + const Foam::label nCells = num_obj; - for (Foam::label i=0; i < num_obj; i++) + for (Foam::label i=0; i < nCells; ++i) { - Foam::label celli = localID[i]; + const Foam::label celli = local_ids[i]; + int numNbr = 0; - const Foam::cell& cFaces = mesh.cells()[celli]; - forAll(cFaces, cFacei) + for (const auto facei : mesh.cells()[celli]) { - Foam::label n = 0; - - Foam::label facei = cFaces[cFacei]; if (mesh.isInternalFace(facei)) { Foam::label nbr = mesh.faceOwner()[facei]; @@ -191,32 +244,37 @@ static void get_edge_list(void *data, int sizeGID, int sizeLID, nbr = mesh.faceNeighbour()[facei]; } - // Note: global index - *nextNbor++ = nbr; - *nextProc++ = 0; + *nextNbor++ = (nbr + myProcOffset); // global id + *nextProc++ = myProci; // rank-local connection *nextWgt++ = 1.0; - n++; - } - if (n != num_edges[i]) - { - *ierr = ZOLTAN_FATAL; - return; + ++numNbr; } } + + // Sanity check + if (numNbr != num_edges[i]) + { + *ierr = ZOLTAN_FATAL; + return; + } } - *ierr = ZOLTAN_OK; } +// [ZOLTAN_NUM_GEOM_FN] +// The dimensionality of the mesh geometry (2D,3D, etc) static int get_mesh_dim(void *data, int *ierr) { - const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); + *ierr = ZOLTAN_OK; + const auto& mesh = *static_cast<const Foam::polyMesh*>(data); return mesh.nSolutionD(); } +// [ZOLTAN_GEOM_MULTI_FN] +// The geometric location of the graph vertices (mesh cellCentres) static void get_geom_list ( void *data, @@ -225,11 +283,12 @@ static void get_geom_list int num_obj, ZOLTAN_ID_PTR global_ids, ZOLTAN_ID_PTR local_ids, - int num_dim, - double *geom_vec, + int num_dim, // dimensionality (2|3) + double *geom_vec, // [out] cellCentres int *ierr ) { + *ierr = ZOLTAN_OK; const Foam::polyMesh& mesh = *static_cast<const Foam::polyMesh*>(data); if @@ -244,26 +303,46 @@ static void get_geom_list return; } - double* p = geom_vec; - - - const Foam::Vector<Foam::label>& sol = mesh.solutionD(); - const Foam::pointField& cc = mesh.cellCentres(); - for (Foam::label celli = 0; celli < num_obj; celli++) + if (num_dim == 3) { - const Foam::point& pt = cc[celli]; + // Fast path for 3D - assumes that local_ids are still ordered + std::copy_n + ( + reinterpret_cast<const Foam::point::cmptType*>(cc.cdata()), + (3*num_obj), + geom_vec + ); + } + else + { + // [out] cellCentres + double* p = geom_vec; + + const Foam::Vector<Foam::label>& sol = mesh.solutionD(); - for (Foam::direction cmpt = 0; cmpt < Foam::vector::nComponents; cmpt++) + const Foam::label nCells = num_obj; + + // Assumes that local_ids are still ordered + for (Foam::label celli = 0; celli < nCells; ++celli) { - if (sol[cmpt] == 1) + const Foam::point& pt = cc[celli]; + + for + ( + Foam::direction cmpt = 0; + cmpt < Foam::vector::nComponents; + ++cmpt + ) { - *p++ = pt[cmpt]; + if (sol[cmpt] == 1) + { + *p++ = pt[cmpt]; + } } } } - *ierr = ZOLTAN_OK; } @@ -272,7 +351,7 @@ static void get_geom_list Foam::zoltanRenumber::zoltanRenumber(const dictionary& dict) : renumberMethod(dict), - coeffsDict_(dict.optionalSubDict(typeName+"Coeffs")) + coeffsDict_(dict.optionalSubDict(typeName + "Coeffs")) {} @@ -280,24 +359,18 @@ Foam::zoltanRenumber::zoltanRenumber(const dictionary& dict) Foam::labelList Foam::zoltanRenumber::renumber ( - const polyMesh& pMesh, - const pointField& points + const polyMesh& pMesh ) const { - stringList args(1); - args[0] = "zoltanRenumber"; + // Zoltan_Initialize will trigger MPI_Init() if not already done. + // - use UPstream::initNull() so that OpenFOAM also knows about MPI - int argc = args.size(); - char* argv[argc]; - for (label i = 0; i < argc; i++) - { - argv[i] = strdup(args[i].c_str()); - } + UPstream::initNull(); - float ver; - int rc = Zoltan_Initialize(argc, argv, &ver); + CStringList args({"zoltan-renumber"}); - Foam::Pout<< "Initialised to " << ver << Foam::endl; + float ver; + int rc = Zoltan_Initialize(args.size(), args.strings(), &ver); if (rc != ZOLTAN_OK) { @@ -307,24 +380,55 @@ Foam::labelList Foam::zoltanRenumber::renumber struct Zoltan_Struct *zz = Zoltan_Create(MPI_COMM_WORLD); - polyMesh& mesh = const_cast<polyMesh&>(pMesh); + // const bool verbose = coeffsDict_.getOrDefault(verbose, false); + const bool verbose = true; + // Default order method + Zoltan_Set_Param(zz, "ORDER_METHOD", "LOCAL_HSFC"); + + if (false) + { + Info<< typeName << " : default ORDER_METHOD = LOCAL_HSFC" << nl + << typeName << " : default ORDER_TYPE = LOCAL" << nl; + } for (const entry& dEntry : coeffsDict_) { + const word& key = dEntry.keyword(); + + // Internal keywords + if + ( + key == "method" + || key == "verbose" + ) + { + continue; + } + if (!dEntry.isDict()) { - const word& key = dEntry.keyword(); const word value(dEntry.get<word>()); - Info<< typeName << " : setting parameter " << key - << " to " << value << endl; + if (verbose) + { + Info<< typeName + << " : setting parameter " + << key << " = " << value << nl; + } Zoltan_Set_Param(zz, key.c_str(), value.c_str()); } } + // Always use rank LOCAL ordering + Zoltan_Set_Param(zz, "ORDER_TYPE", "LOCAL"); + + // Set callbacks + polyMesh& mesh = const_cast<polyMesh&>(pMesh); + + // Callbacks for graph vertex IDs Zoltan_Set_Num_Obj_Fn(zz, get_number_of_vertices, &mesh); Zoltan_Set_Obj_List_Fn(zz, get_vertex_list, &mesh); @@ -337,25 +441,26 @@ Foam::labelList Foam::zoltanRenumber::renumber Zoltan_Set_Edge_List_Multi_Fn(zz, get_edge_list, &mesh); + const auto nCells = mesh.nCells(); - //Note: !global indices - List<ZOLTAN_ID_TYPE> wantedCells(mesh.nCells()); + List<ZOLTAN_ID_TYPE> globalIds(nCells); + List<ZOLTAN_ID_TYPE> oldToNew(nCells); - globalIndex globalCells(mesh.nCells()); - forAll(wantedCells, i) - { - //wantedCells[i] = i; - wantedCells[i] = globalCells.toGlobal(i); - } + // Offset for globally unique IDs + const label myProci = UPstream::myProcNo(); + const label myProcOffset = + mesh.globalData().globalMeshCellAddr().localStart(myProci); - List<ZOLTAN_ID_TYPE> oldToNew(mesh.nCells()); + + // Global indices + std::iota(globalIds.begin(), globalIds.end(), ZOLTAN_ID_TYPE(myProcOffset)); int err = Zoltan_Order ( zz, - 1, //int num_gid_entries, - mesh.globalData().nTotalCells(), //int num_obj, - wantedCells.begin(), + 1, //int num_gid_entries, + nCells, //int num_obj, + globalIds.begin(), oldToNew.begin() ); @@ -365,18 +470,22 @@ Foam::labelList Foam::zoltanRenumber::renumber << "Failed Zoltan_Order" << exit(FatalError); } - - for (label i = 0; i < argc; i++) - { - free(argv[i]); - } + Zoltan_Destroy(&zz); + // From global number to rank-local numbering + globalIds.clear(); labelList order(oldToNew.size()); - forAll(order, i) - { - order[i] = oldToNew[i]; - } + + // From global to local (without checks) + std::transform + ( + oldToNew.begin(), + oldToNew.end(), + order.begin(), + [=](const ZOLTAN_ID_TYPE id) -> label { return (id - myProcOffset); } + ); + return order; } diff --git a/src/renumber/zoltanRenumber/zoltanRenumber.H b/src/renumber/zoltanRenumber/zoltanRenumber.H index e2574b057a1e103fae67945bce92acf00d3298a8..c7446ec297a0956ecd645113ff5c127946ebfe23 100644 --- a/src/renumber/zoltanRenumber/zoltanRenumber.H +++ b/src/renumber/zoltanRenumber/zoltanRenumber.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2022 OpenCFD Ltd. + Copyright (C) 2022-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -83,42 +83,38 @@ public: // Member Functions - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // This is only defined for geometric renumberMethods. - virtual labelList renumber(const pointField&) const - { - NotImplemented; - return labelList(); - } + //- Renumbering method requires a polyMesh for its topology + virtual bool needs_mesh() const { return true; } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). - // Use the mesh connectivity (if needed) + + // With mesh topology + + //- Return the cell visit order (from ordered back to original cell id) + //- uses the mesh for connectivity and global exchanges virtual labelList renumber ( - const polyMesh& mesh, - const pointField& cc + const polyMesh& mesh ) const; - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + + // With explicit topology - Not implemented! + + //- Return the cell visit order (from ordered back to original cell id). + //- Not implemented! virtual labelList renumber ( - const CompactListList<label>& cellCells, - const pointField& cellCentres + const CompactListList<label>& cellCells ) const { NotImplemented; return labelList(); } - //- Return the order in which cells need to be visited - //- (ie. from ordered back to original cell label). + //- Return the cell visit order (from ordered back to original cell id). + //- Not implemented! virtual labelList renumber ( - const labelListList& cellCells, - const pointField& cellCentres + const labelListList& cellCells ) const { NotImplemented; diff --git a/src/rigidBodyDynamics/restraints/externalForce/externalForce.C b/src/rigidBodyDynamics/restraints/externalForce/externalForce.C index 26820cfc54ba3c883128e50bce214c9729945b45..ac7c57079e86ca7ea89a0b5882549653a828c847 100644 --- a/src/rigidBodyDynamics/restraints/externalForce/externalForce.C +++ b/src/rigidBodyDynamics/restraints/externalForce/externalForce.C @@ -109,7 +109,7 @@ bool Foam::RBD::restraints::externalForce::read coeffs_.readEntry("location", location_); - externalForce_ = Function1<vector>::New("force", coeffs_); + externalForce_ = Function1<vector>::New("force", coeffs_, &model_.time()); return true; } diff --git a/src/rigidBodyDynamics/rigidBodyMotion/rigidBodyMotion.C b/src/rigidBodyDynamics/rigidBodyMotion/rigidBodyMotion.C index cc03840da3e66f653c676846a7617f52880abc75..88cdd4e3af2157d3ccd86869844f05b96f999ac0 100644 --- a/src/rigidBodyDynamics/rigidBodyMotion/rigidBodyMotion.C +++ b/src/rigidBodyDynamics/rigidBodyMotion/rigidBodyMotion.C @@ -238,8 +238,8 @@ Foam::tmp<Foam::pointField> Foam::RBD::rigidBodyMotion::transformPoints // to the current state in the global frame spatialTransform X(X0(bodyID).inv() & X00(bodyID)); - tmp<pointField> tpoints(new pointField(initialPoints.size())); - pointField& points = tpoints.ref(); + auto tpoints = tmp<pointField>::New(initialPoints.size()); + auto& points = tpoints.ref(); forAll(points, i) { @@ -265,8 +265,8 @@ Foam::tmp<Foam::pointField> Foam::RBD::rigidBodyMotion::transformPoints // interpolation septernion s(X); - tmp<pointField> tpoints(new pointField(initialPoints)); - pointField& points = tpoints.ref(); + auto tpoints = tmp<pointField>::New(initialPoints); + auto& points = tpoints.ref(); forAll(points, i) { @@ -314,8 +314,8 @@ Foam::tmp<Foam::pointField> Foam::RBD::rigidBodyMotion::transformPoints ss[bi] = septernion(X); } - tmp<pointField> tpoints(new pointField(initialPoints)); - pointField& points = tpoints.ref(); + auto tpoints = tmp<pointField>::New(initialPoints); + auto& points = tpoints.ref(); List<scalar> w(ss.size()); diff --git a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C index 780844e6e7ae6f12486516d135d40722ac45f28d..e7f4d71072a2c5d45357e751b05d6d562a2512da 100644 --- a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C +++ b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C @@ -224,8 +224,8 @@ Foam::rigidBodyMeshMotion::curPoints() const } else { - tmp<pointField> ttransformedPts(new pointField(mesh().points())); - pointField& transformedPts = ttransformedPts.ref(); + auto ttransformedPts = tmp<pointField>::New(mesh().points()); + auto& transformedPts = ttransformedPts.ref(); UIndirectList<point>(transformedPts, pointIDs()) = pointField(newPoints.ref(), pointIDs()); diff --git a/src/sampling/functions/Function1/Sample/SampleFunction1.H b/src/sampling/functions/Function1/Sample/SampleFunction1.H index 5500abab7dfda4730687304fa73ece0cc45e736b..513c847352dd9d4a11229bd25cea636c327cd7cf 100644 --- a/src/sampling/functions/Function1/Sample/SampleFunction1.H +++ b/src/sampling/functions/Function1/Sample/SampleFunction1.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2021 OpenCFD Ltd. + Copyright (C) 2021-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,8 +45,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef Function1Types_Sample_H -#define Function1Types_Sample_H +#ifndef Foam_Function1Types_Sample_H +#define Foam_Function1Types_Sample_H #include "Function1.H" #include "point.H" @@ -121,10 +121,10 @@ public: //- Copy constructor explicit Sample(const Sample& poly); - //- Construct and return a clone + //- Return a clone virtual tmp<Function1<Type>> clone() const { - return tmp<Function1<Type>>(new Sample<Type>(*this)); + return Function1<Type>::Clone(*this); } diff --git a/src/sampling/meshToMesh/meshToMeshParallelOps.C b/src/sampling/meshToMesh/meshToMeshParallelOps.C index f1a9d756b0cb971180194c2bb58c43c81847f1ec..308409db988152e9b6422a4373fedc5db70f5314 100644 --- a/src/sampling/meshToMesh/meshToMeshParallelOps.C +++ b/src/sampling/meshToMesh/meshToMeshParallelOps.C @@ -274,7 +274,7 @@ void Foam::meshToMesh::distributeCells procLocalFaceIDs.setSize(Pstream::nProcs());; - PstreamBuffers pBufs(Pstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; for (const int domain : Pstream::allProcs()) { diff --git a/src/sampling/meshToMesh/meshToMeshTemplates.C b/src/sampling/meshToMesh/meshToMeshTemplates.C index afea1c70b69c2d253eb65bcc6938e0db3608b6da..a1df9365556f55401fc965a30bee52778e41cb77 100644 --- a/src/sampling/meshToMesh/meshToMeshTemplates.C +++ b/src/sampling/meshToMesh/meshToMeshTemplates.C @@ -218,14 +218,7 @@ Foam::tmp<Foam::Field<Type>> Foam::meshToMesh::mapSrcToTgt const CombineOp& cop ) const { - tmp<Field<Type>> tresult - ( - new Field<Type> - ( - tgtToSrcCellAddr_.size(), - Zero - ) - ); + auto tresult = tmp<Field<Type>>::New(tgtToSrcCellAddr_.size(), Zero); mapSrcToTgt(srcField, cop, tresult.ref()); @@ -423,14 +416,7 @@ Foam::tmp<Foam::Field<Type>> Foam::meshToMesh::mapTgtToSrc const CombineOp& cop ) const { - tmp<Field<Type>> tresult - ( - new Field<Type> - ( - srcToTgtCellAddr_.size(), - Zero - ) - ); + auto tresult = tmp<Field<Type>>::New(srcToTgtCellAddr_.size(), Zero); mapTgtToSrc(tgtField, cop, tresult.ref()); @@ -612,7 +598,7 @@ Foam::meshToMesh::mapSrcToTgt ( srcBfld[srcPatchi], tgtMesh.boundary()[tgtPatchi], - DimensionedField<Type, volMesh>::null(), + fvPatchField<Type>::Internal::null(), directFvPatchFieldMapper ( labelList(tgtMesh.boundary()[tgtPatchi].size(), -1) @@ -636,7 +622,7 @@ Foam::meshToMesh::mapSrcToTgt ( fvPatchFieldBase::calculatedType(), tgtMesh.boundary()[tgtPatchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -645,13 +631,13 @@ Foam::meshToMesh::mapSrcToTgt auto tresult = tmp<VolumeField<Type>>::New ( - IOobject + tgtMesh.newIOobject ( - type() + ":interpolate(" + field.name() + ")", - tgtMesh.time().timeName(), - tgtMesh, - IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::scopedName + ( + type(), + "interpolate(" + field.name() + ")" + ) ), tgtMesh, field.dimensions(), @@ -843,7 +829,7 @@ Foam::meshToMesh::mapTgtToSrc ( tgtBfld[tgtPatchi], srcMesh.boundary()[srcPatchi], - DimensionedField<Type, volMesh>::null(), + fvPatchField<Type>::Internal::null(), directFvPatchFieldMapper ( labelList(srcMesh.boundary()[srcPatchi].size(), -1) @@ -867,7 +853,7 @@ Foam::meshToMesh::mapTgtToSrc ( fvPatchFieldBase::calculatedType(), srcMesh.boundary()[srcPatchi], - DimensionedField<Type, volMesh>::null() + fvPatchField<Type>::Internal::null() ) ); } @@ -876,13 +862,13 @@ Foam::meshToMesh::mapTgtToSrc auto tresult = tmp<VolumeField<Type>>::New ( - IOobject + srcMesh.newIOobject ( - type() + ":interpolate(" + field.name() + ")", - srcMesh.time().timeName(), - srcMesh, - IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::scopedName + ( + type(), + "interpolate(" + field.name() + ")" + ) ), srcMesh, field.dimensions(), diff --git a/src/sampling/meshToMesh0/meshToMesh0Templates.C b/src/sampling/meshToMesh0/meshToMesh0Templates.C index c40298f4bd38b40cd1eb5b46846261e647ea2466..8daeb7a09a153d94391f82b5d2ab56db24481faa 100644 --- a/src/sampling/meshToMesh0/meshToMesh0Templates.C +++ b/src/sampling/meshToMesh0/meshToMesh0Templates.C @@ -395,7 +395,7 @@ Foam::meshToMesh0::interpolate ( fromVf.boundaryField()[patchi], toMesh_.boundary()[patchi], - DimensionedField<Type, volMesh>::null(), + fvPatchField<Type>::Internal::null(), patchFieldInterpolator ( boundaryAddressing_[patchi] diff --git a/src/sampling/probes/probes.C b/src/sampling/probes/probes.C index b4b8e5e95c776273a5904b8456642b8483c89697..01c3ce70d353c9848060c64c3c82adf172d0c657 100644 --- a/src/sampling/probes/probes.C +++ b/src/sampling/probes/probes.C @@ -105,7 +105,7 @@ void Foam::probes::createProbeFiles(const wordList& fieldNames) DebugInfo<< "open probe stream: " << os.name() << endl; const unsigned int width(IOstream::defaultPrecision() + 7); - os << setf(ios_base::left); + os.setf(std::ios_base::left); forAll(*this, probei) { diff --git a/src/sampling/probes/probesDict b/src/sampling/probes/probesDict index 101be42cb583d6625b7f1e1aedba7941b1af9ae3..1c6a9d36bf1adb9eb0db736491f093ee1d9b81fb 100644 --- a/src/sampling/probes/probesDict +++ b/src/sampling/probes/probesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/src/sampling/sampledSet/sampledSets/sampledSets.C b/src/sampling/sampledSet/sampledSets/sampledSets.C index f8b8ea35b045f8ece61edb6783aea072adea2c26..16b9b69479b8918b77fcf1939e8ecba5ca8a45bc 100644 --- a/src/sampling/sampledSet/sampledSets/sampledSets.C +++ b/src/sampling/sampledSet/sampledSets/sampledSets.C @@ -174,7 +174,7 @@ Foam::IOobjectList Foam::sampledSets::preCheckFields(unsigned request) wordList allFields; // Just needed for warnings HashTable<wordHashSet> selected; - IOobjectList objects(0); + IOobjectList objects; if (loadFromFiles_) { diff --git a/src/sampling/sampledSurface/sampledCuttingPlane/sampledCuttingPlane.C b/src/sampling/sampledSurface/sampledCuttingPlane/sampledCuttingPlane.C index 17cb45fb9e893a9b55897fa624e289d1274f608a..2d47649cd5e48ec412c34590e4fcf41fb1795adc 100644 --- a/src/sampling/sampledSurface/sampledCuttingPlane/sampledCuttingPlane.C +++ b/src/sampling/sampledSurface/sampledCuttingPlane/sampledCuttingPlane.C @@ -464,20 +464,12 @@ void Foam::sampledCuttingPlane::createGeometry() ( new volScalarField ( - IOobject - ( - "cellDistance", - mesh.time().timeName(), - mesh.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + mesh.newIOobject("cellDistance"), mesh, dimensionedScalar(dimLength, Zero) ) ); - const volScalarField& cellDistance = cellDistancePtr_(); + const auto& cellDistance = *cellDistancePtr_; setDistanceFields(plane_); @@ -485,20 +477,15 @@ void Foam::sampledCuttingPlane::createGeometry() { Pout<< "Writing cell distance:" << cellDistance.objectPath() << endl; cellDistance.write(); - pointScalarField pointDist + auto tpointDist = pointScalarField::New ( - IOobject - ( - "pointDistance", - mesh.time().timeName(), - mesh.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "pointDistance", + IOobject::NO_REGISTER, pointMesh::New(mesh), dimensionedScalar(dimLength, Zero) ); + auto& pointDist = tpointDist.ref(); + pointDist.primitiveFieldRef() = pointDistance_; Pout<< "Writing point distance:" << pointDist.objectPath() << endl; diff --git a/src/sampling/sampledSurface/sampledMeshedSurface/sampledMeshedSurface.C b/src/sampling/sampledSurface/sampledMeshedSurface/sampledMeshedSurface.C index 2cce5342e294c145622f040cef79817230075de7..d095b5081d52c1c6b7e29cc5fa11eb7936b58024 100644 --- a/src/sampling/sampledSurface/sampledMeshedSurface/sampledMeshedSurface.C +++ b/src/sampling/sampledSurface/sampledMeshedSurface/sampledMeshedSurface.C @@ -34,6 +34,7 @@ License #include "treeDataFace.H" #include "meshTools.H" #include "addToRunTimeSelectionTable.H" +#include "stringListOps.H" // For stringListOps::findMatching() // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/sampling/sampledSurface/sampledSurface/sampledSurfaceRegister.C b/src/sampling/sampledSurface/sampledSurface/sampledSurfaceRegister.C index 17de846f1feda8d66bb14ccde60b83f4e923f6a5..28f23ce6a6482d86d42bb1892197cf48bbb3b83e 100644 --- a/src/sampling/sampledSurface/sampledSurface/sampledSurfaceRegister.C +++ b/src/sampling/sampledSurface/sampledSurface/sampledSurfaceRegister.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -36,12 +36,12 @@ Foam::polySurface* Foam::sampledSurface::getRegistrySurface word lookupName ) const { - if (lookupName.empty()) - { - lookupName = this->name(); - } - - return obr.getObjectPtr<polySurface>(lookupName); + return + ( + lookupName.empty() + ? obr.getObjectPtr<polySurface>(this->name()) + : obr.getObjectPtr<polySurface>(lookupName) + ); } @@ -56,15 +56,16 @@ Foam::polySurface* Foam::sampledSurface::storeRegistrySurface lookupName = this->name(); } - polySurface* surfptr = getRegistrySurface(obr, lookupName); + auto* surfptr = obr.getObjectPtr<polySurface>(lookupName); if (!surfptr) { - // Default construct and add to registry (owned by registry) - surfptr = new polySurface(lookupName, obr, true); + surfptr = new polySurface(lookupName, obr); + regIOobject::store(surfptr); } - surfptr->copySurface(*this); // Copy in geometry (removes old fields) + // Copy in geometry (removes existing fields if sizes have changed) + surfptr->copySurface(*this); return surfptr; } @@ -76,8 +77,12 @@ bool Foam::sampledSurface::removeRegistrySurface word lookupName ) const { - polySurface* surfptr = getRegistrySurface(obr, lookupName); - return obr.checkOut(surfptr); + return + ( + lookupName.empty() + ? polySurface::Delete(this->name(), obr) + : polySurface::Delete(lookupName, obr) + ); } diff --git a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.C b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.C index d7de7db89d48deacaccb5ba9623e36a36ff626ee..b46ab90e47530217178da3385db844484b212be6 100644 --- a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.C +++ b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,41 +57,15 @@ Foam::scalar Foam::sampledSurfaces::mergeTol_ = 1e-10; // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::polySurface* Foam::sampledSurfaces::getRegistrySurface -( - const sampledSurface& s -) const -{ - return s.getRegistrySurface - ( - storedObjects(), - IOobject::groupName(name(), s.name()) - ); -} - - -Foam::polySurface* Foam::sampledSurfaces::storeRegistrySurface +void Foam::sampledSurfaces::storeRegistrySurface ( const sampledSurface& s ) { - return s.storeRegistrySurface + s.storeRegistrySurface ( storedObjects(), - IOobject::groupName(name(), s.name()) - ); -} - - -bool Foam::sampledSurfaces::removeRegistrySurface -( - const sampledSurface& s -) -{ - return s.removeRegistrySurface - ( - storedObjects(), - IOobject::groupName(name(), s.name()) + IOobject::groupName(name(), s.name()) // surfaceName ); } @@ -101,7 +75,7 @@ Foam::IOobjectList Foam::sampledSurfaces::preCheckFields() wordList allFields; // Just needed for warnings HashTable<wordHashSet> selected; - IOobjectList objects(0); + IOobjectList objects; if (loadFromFiles_) { @@ -129,7 +103,7 @@ Foam::IOobjectList Foam::sampledSurfaces::preCheckFields() { if (!ListOps::found(allFields, fieldSelection_[i])) { - missed.append(i); + missed.push_back(i); } } @@ -153,11 +127,11 @@ Foam::IOobjectList Foam::sampledSurfaces::preCheckFields() const word& clsName = iter.key(); const label n = iter.val().size(); - if (fieldTypes::volume.found(clsName)) + if (fieldTypes::volume.contains(clsName)) { nVolumeFields += n; } - else if (fieldTypes::surface.found(clsName)) + else if (fieldTypes::surface.contains(clsName)) { nSurfaceFields += n; } @@ -224,13 +198,7 @@ Foam::sampledSurfaces::sampledSurfaces outputPath_ ( time_.globalPath()/functionObject::outputPrefix/name - ), - fieldSelection_(), - sampleFaceScheme_(), - sampleNodeScheme_(), - writers_(), - actions_(), - nFaces_() + ) { outputPath_.clean(); // Remove unneeded ".." @@ -254,13 +222,7 @@ Foam::sampledSurfaces::sampledSurfaces outputPath_ ( time_.globalPath()/functionObject::outputPrefix/name - ), - fieldSelection_(), - sampleFaceScheme_(), - sampleNodeScheme_(), - writers_(), - actions_(), - nFaces_() + ) { outputPath_.clean(); // Remove unneeded ".." @@ -270,7 +232,7 @@ Foam::sampledSurfaces::sampledSurfaces // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -bool Foam::sampledSurfaces::verbose(const bool on) noexcept +bool Foam::sampledSurfaces::verbose(bool on) noexcept { bool old(verbose_); verbose_ = on; @@ -285,7 +247,7 @@ bool Foam::sampledSurfaces::read(const dictionary& dict) PtrList<sampledSurface>::clear(); writers_.clear(); actions_.clear(); - nFaces_.clear(); + hasFaces_.clear(); fieldSelection_.clear(); verbose_ = dict.getOrDefault("verbose", false); @@ -312,7 +274,6 @@ bool Foam::sampledSurfaces::read(const dictionary& dict) actions_.resize(surfs.size(), ACTION_WRITE); // Default action writers_.resize(surfs.size()); - nFaces_.resize(surfs.size(), Zero); label surfi = 0; @@ -385,7 +346,6 @@ bool Foam::sampledSurfaces::read(const dictionary& dict) actions_.resize(surfs.size(), ACTION_WRITE); // Default action writers_.resize(surfs.size()); - nFaces_.resize(surfs.size(), Zero); label surfi = 0; @@ -436,10 +396,11 @@ bool Foam::sampledSurfaces::read(const dictionary& dict) // Have some surfaces, so sort out which fields are needed and report + hasFaces_.resize_nocopy(surfs.size()); + hasFaces_ = false; + if (surfs.size()) { - nFaces_.resize(surfs.size(), Zero); - dict.readEntry("fields", fieldSelection_); fieldSelection_.uniq(); @@ -466,7 +427,7 @@ bool Foam::sampledSurfaces::read(const dictionary& dict) Info<< nl; } - if (debug && Pstream::master()) + if (debug && UPstream::master()) { Pout<< "sample fields:" << fieldSelection_ << nl << "sample surfaces:" << nl << '(' << nl; @@ -499,12 +460,15 @@ bool Foam::sampledSurfaces::performAction(unsigned request) if (s.update()) { writers_[surfi].expire(); + hasFaces_[surfi] = false; } - nFaces_[surfi] = returnReduce(s.faces().size(), sumOp<label>()); - - ok = ok || nFaces_[surfi]; + if (!hasFaces_[surfi]) + { + hasFaces_[surfi] = returnReduceOr(s.faces().size()); + } + ok = ok || hasFaces_[surfi]; // Store surfaces (even empty ones) otherwise we miss geometry // updates. @@ -536,7 +500,7 @@ bool Foam::sampledSurfaces::performAction(unsigned request) { const sampledSurface& s = (*this)[surfi]; - if (((request & actions_[surfi]) & ACTION_WRITE) && nFaces_[surfi]) + if (((request & actions_[surfi]) & ACTION_WRITE) && hasFaces_[surfi]) { surfaceWriter& outWriter = writers_[surfi]; @@ -589,7 +553,7 @@ bool Foam::sampledSurfaces::performAction(unsigned request) testAny ( surfaces(), - [] (const sampledSurface& s) { return s.withSurfaceFields(); } + [](const sampledSurface& s) { return s.withSurfaceFields(); } ) ) { @@ -604,7 +568,7 @@ bool Foam::sampledSurfaces::performAction(unsigned request) // Finish this time step forAll(writers_, surfi) { - if (((request & actions_[surfi]) & ACTION_WRITE) && nFaces_[surfi]) + if (((request & actions_[surfi]) & ACTION_WRITE) && hasFaces_[surfi]) { // Write geometry if no fields were written so that we still // can have something to look at @@ -688,7 +652,7 @@ bool Foam::sampledSurfaces::expire(const bool force) // Dimension as fraction of mesh bounding box const scalar mergeDim = mergeTol_ * mesh_.bounds().mag(); - label nChanged = 0; + bool changed = false; forAll(*this, surfi) { @@ -701,16 +665,16 @@ bool Foam::sampledSurfaces::expire(const bool force) } if (s.expire()) { - ++nChanged; + changed = true; } writers_[surfi].expire(); writers_[surfi].mergeDim(mergeDim); - nFaces_[surfi] = 0; + hasFaces_[surfi] = false; } // True if any surfaces just expired - return nChanged; + return changed; } @@ -721,7 +685,7 @@ bool Foam::sampledSurfaces::update() return false; } - label nUpdated = 0; + bool changed = false; forAll(*this, surfi) { @@ -729,14 +693,13 @@ bool Foam::sampledSurfaces::update() if (s.update()) { - ++nUpdated; + changed = true; writers_[surfi].expire(); + hasFaces_[surfi] = returnReduceOr(s.faces().size()); } - - nFaces_[surfi] = returnReduce(s.faces().size(), sumOp<label>()); } - return nUpdated; + return changed; } @@ -746,9 +709,9 @@ Foam::scalar Foam::sampledSurfaces::mergeTol() noexcept } -Foam::scalar Foam::sampledSurfaces::mergeTol(const scalar tol) noexcept +Foam::scalar Foam::sampledSurfaces::mergeTol(scalar tol) noexcept { - const scalar old(mergeTol_); + scalar old(mergeTol_); mergeTol_ = tol; return old; } diff --git a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.H b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.H index f0424c077065dd7f12375ee941ab0a475e1b91ed..95de944024025cabab5897be72e9010eabf8ec21 100644 --- a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.H +++ b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfaces.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -205,8 +205,8 @@ class sampledSurfaces //- Per-surface selection of store/write actions List<unsigned> actions_; - //- Cached values of the global number of faces per-surface - labelList nFaces_; + //- Per-surface status of the surfaces + List<bool> hasFaces_; // Private Member Functions @@ -266,21 +266,12 @@ class sampledSurfaces ); - //- Get surface from registry if available. - // \return surface or nullptr - polySurface* getRegistrySurface(const sampledSurface& s) const; + //- Put surface onto registry + void storeRegistrySurface(const sampledSurface& s); - //- Put surface onto registry, when enabled. - // \return surface or nullptr it surface should not be stored - polySurface* storeRegistrySurface(const sampledSurface& s); - - //- Remove surface from registry. - // \return True if surface existed and was removed - bool removeRegistrySurface(const sampledSurface& s); - - //- Store sampled field onto surface registry if it exists + //- Store sampled field onto surface registry (if surface exists) template<class Type, class GeoMeshType> - bool storeRegistryField + void storeRegistryField ( const sampledSurface& s, const word& fieldName, @@ -288,7 +279,8 @@ class sampledSurfaces Field<Type>&& values ); - //- Test surfaces for condition + //- Test surfaces for condition. + //- Like std::any_of() but without any iterator requirements template<class Container, class Predicate> static bool testAny(const Container& items, const Predicate& pred); @@ -347,7 +339,7 @@ public: //- Enable/disable verbose output // \return old value - bool verbose(const bool on) noexcept; + bool verbose(bool on) noexcept; //- Return names of fields to sample const wordRes& fieldNames() const noexcept { return fieldSelection_; } @@ -374,7 +366,7 @@ public: static scalar mergeTol() noexcept; //- Set merge tolerance and return old value - static scalar mergeTol(const scalar tol) noexcept; + static scalar mergeTol(scalar tol) noexcept; }; diff --git a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfacesTemplates.C b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfacesTemplates.C index 10ef1e8514d0c0526eaa16de50451f4aefcb9ce0..72090e95632fb724b3a7cdf3c91b14ab1349b11a 100644 --- a/src/sampling/sampledSurface/sampledSurfaces/sampledSurfacesTemplates.C +++ b/src/sampling/sampledSurface/sampledSurfaces/sampledSurfacesTemplates.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,7 +56,7 @@ void Foam::sampledSurfaces::writeSurface template<class Type, class GeoMeshType> -bool Foam::sampledSurfaces::storeRegistryField +void Foam::sampledSurfaces::storeRegistryField ( const sampledSurface& s, const word& fieldName, @@ -64,13 +64,13 @@ bool Foam::sampledSurfaces::storeRegistryField Field<Type>&& values ) { - return s.storeRegistryField<Type, GeoMeshType> + s.storeRegistryField<Type, GeoMeshType> ( storedObjects(), fieldName, dims, std::move(values), - IOobject::groupName(name(), s.name()) + IOobject::groupName(name(), s.name()) // surfaceName ); } @@ -94,13 +94,10 @@ void Foam::sampledSurfaces::performAction forAll(*this, surfi) { - const sampledSurface& s = operator[](surfi); + // Skip empty surfaces (eg, failed cut-plane) + if (!hasFaces_[surfi]) continue; - // Skip surface without faces (eg, failed cut-plane) - if (!nFaces_[surfi]) - { - continue; - } + const sampledSurface& s = operator[](surfi); Field<Type> values; @@ -170,13 +167,10 @@ void Foam::sampledSurfaces::performAction forAll(*this, surfi) { - const sampledSurface& s = (*this)[surfi]; + // Skip empty surfaces (eg, failed cut-plane) + if (!hasFaces_[surfi]) continue; - // Skip surface without faces (eg, failed cut-plane) - if (!nFaces_[surfi]) - { - continue; - } + const sampledSurface& s = (*this)[surfi]; Field<Type> values(s.sample(fld)); diff --git a/src/sampling/surface/cutting/cuttingPlaneCuts.C b/src/sampling/surface/cutting/cuttingPlaneCuts.C index 5f5d119e681ca97a9509a52108a1b8e448c36ba1..7511c499494a538b693546b66f9adc3697000964 100644 --- a/src/sampling/surface/cutting/cuttingPlaneCuts.C +++ b/src/sampling/surface/cutting/cuttingPlaneCuts.C @@ -160,34 +160,27 @@ Foam::label Foam::cuttingPlane::calcCellCuts } - if (debug && isA<fvMesh>(mesh)) + const fvMesh* fvMeshPtr = nullptr; + if (debug && (fvMeshPtr = isA<fvMesh>(mesh)) != nullptr) { - const auto& fvmesh = dynamicCast<const fvMesh>(mesh); - - volScalarField cCuts + auto tcellCutsDebug = volScalarField::New ( - IOobject - ( - "cuttingPlane.cellCuts", - fvmesh.time().timeName(), - fvmesh.time(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - fvmesh, - dimensionedScalar(dimless, Zero) + "cuttingPlane.cellCuts", + IOobjectOption::NO_REGISTER, + *fvMeshPtr, + dimensionedScalar(dimless, Foam::zero{}) ); + auto& cellCutsDebug = tcellCutsDebug.ref(); - auto& cCutsFld = cCuts.primitiveFieldRef(); + auto& fld = cellCutsDebug.primitiveFieldRef(); for (const label celli : cellCuts) { - cCutsFld[celli] = 1; + fld[celli] = 1; } - Pout<< "Writing cut types:" << cCuts.objectPath() << endl; - cCuts.write(); + Pout<< "Writing cut types:" << cellCutsDebug.objectPath() << endl; + cellCutsDebug.write(); } diff --git a/src/sampling/surface/isoSurface/isoSurfacePoint.C b/src/sampling/surface/isoSurface/isoSurfacePoint.C index 464af60d826d595cceacf2ebe05672baa40c7f89..020a0465a2b266ffb00dc90a59f97238d7947646 100644 --- a/src/sampling/surface/isoSurface/isoSurfacePoint.C +++ b/src/sampling/surface/isoSurface/isoSurfacePoint.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -166,7 +166,7 @@ void Foam::isoSurfacePoint::syncUnseparatedPoints OPstream toNbr ( - Pstream::commsTypes::blocking, + UPstream::commsTypes::buffered, procPatch.neighbProcNo() ); toNbr << patchInfo; @@ -181,17 +181,11 @@ void Foam::isoSurfacePoint::syncUnseparatedPoints if (pp.nPoints() && collocatedPatch(pp)) { - pointField nbrPatchInfo(procPatch.nPoints()); - { - // We do not know the number of points on the other side - // so cannot use UIPstream::read - IPstream fromNbr - ( - Pstream::commsTypes::blocking, - procPatch.neighbProcNo() - ); - fromNbr >> nbrPatchInfo; - } + // We do not know the number of points on the other side + // so cannot use UIPstream::read + + pointField nbrPatchInfo; + IPstream::recv(nbrPatchInfo, procPatch.neighbProcNo()); const labelList& meshPts = procPatch.meshPoints(); diff --git a/src/sixDoFRigidBodyMotion/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H b/src/sixDoFRigidBodyMotion/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H index e67f00ff6ac3575243296da2ef89ec179a02db1f..8102ff9bd1f892f16500593c587bb82a8bf8855d 100644 --- a/src/sixDoFRigidBodyMotion/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H +++ b/src/sixDoFRigidBodyMotion/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H @@ -122,18 +122,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new sixDoFRigidBodyDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference sixDoFRigidBodyDisplacementPointPatchVectorField ( @@ -141,20 +129,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new sixDoFRigidBodyDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/sixDoFRigidBodyMotion/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H b/src/sixDoFRigidBodyMotion/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H index 9bc259d00e7847112dd488836e6752b04e4127e2..670ad02a3e1ede48551d866dddfe120be0680289 100644 --- a/src/sixDoFRigidBodyMotion/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H +++ b/src/sixDoFRigidBodyMotion/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H @@ -97,18 +97,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField ( @@ -116,20 +104,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.C index 349493e09622564876eed2fa9da9dff8c742e95b..9b0e0a592efb0abe4079c663ba70138b1d848573 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.C @@ -393,8 +393,8 @@ Foam::tmp<Foam::pointField> Foam::sixDoFRigidBodyMotion::transform quaternion(Q().T() & initialQ()) ); - tmp<pointField> tpoints(new pointField(initialPoints)); - pointField& points = tpoints.ref(); + auto tpoints = tmp<pointField>::New(initialPoints); + auto& points = tpoints.ref(); forAll(points, pointi) { diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C index 267fc1964304e01b7f3cd14444e4d7333dd616a6..33de436dcf9b2d00637c4748ef3fae610f414bae 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C @@ -173,8 +173,8 @@ Foam::sixDoFRigidBodyMotionSolver::curPoints() const if (!moveAllCells()) { - tmp<pointField> ttransformedPts(new pointField(mesh().points())); - pointField& transformedPts = ttransformedPts.ref(); + auto ttransformedPts = tmp<pointField>::New(mesh().points()); + auto& transformedPts = ttransformedPts.ref(); UIndirectList<point>(transformedPts, pointIDs()) = pointField(newPoints.ref(), pointIDs()); diff --git a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C index 7115ca125c8a6aac188bda4c0e170049a9e0c4a4..8769fe76abf9f9e9b6ad94a71c6d64c1e17d8820 100644 --- a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C +++ b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C @@ -63,14 +63,6 @@ Foam::Detail::MeshedSurfaceIOAllocator::MeshedSurfaceIOAllocator {} -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::Detail::MeshedSurfaceIOAllocator::~MeshedSurfaceIOAllocator() -{ - clear(); -} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // void Foam::Detail::MeshedSurfaceIOAllocator::setInstance diff --git a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H index 7fd3b4a9b23f353b4d0cac3b36d2bd0f4772ef32..f07b0a2f0c3c0bfc055543d14619218e00c1eb28 100644 --- a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H +++ b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,7 +39,7 @@ SourceFiles #define Foam_MeshedSurfaceIOAllocator_H #include "pointIOField.H" -#include "faceIOList.H" +#include "faceIOList.H" // faceIOList and faceCompactIOList // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -62,8 +62,9 @@ class MeshedSurfaceIOAllocator //- Faces faceCompactIOList faces_; +public: - // Private Member Functions + // Generated Methods //- No copy construct MeshedSurfaceIOAllocator(const MeshedSurfaceIOAllocator&) = delete; @@ -72,8 +73,6 @@ class MeshedSurfaceIOAllocator void operator=(const MeshedSurfaceIOAllocator&) = delete; -public: - // Constructors //- Read construct from IOobjects @@ -99,7 +98,7 @@ public: //- Destructor - virtual ~MeshedSurfaceIOAllocator(); + virtual ~MeshedSurfaceIOAllocator() = default; // Member Functions @@ -116,25 +115,25 @@ public: // Access //- Non-const access to the points - pointIOField& storedIOPoints() + pointIOField& storedIOPoints() noexcept { return points_; } //- Non-const access to the faces - faceCompactIOList& storedIOFaces() + faceCompactIOList& storedIOFaces() noexcept { return faces_; } //- Const access to the points - const pointIOField& storedIOPoints() const + const pointIOField& storedIOPoints() const noexcept { return points_; } //- Const access to the faces - const faceCompactIOList& storedIOFaces() const + const faceCompactIOList& storedIOFaces() const noexcept { return faces_; } diff --git a/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H b/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H index 951921cfaaa97f286eefe139ea56f4573d50b5ca..23e9e952f599e40b9d71e4ad50237f12df03cdd2 100644 --- a/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H +++ b/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H @@ -46,8 +46,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef UnsortedMeshedSurface_H -#define UnsortedMeshedSurface_H +#ifndef Foam_UnsortedMeshedSurface_H +#define Foam_UnsortedMeshedSurface_H #include "MeshedSurface.H" #include "surfZoneIdentifierList.H" diff --git a/src/surfMesh/polySurface/fields/polySurfaceFieldsFwd.H b/src/surfMesh/polySurface/fields/polySurfaceFieldsFwd.H index 8bf25faa3ab3193ed0f63eb10155281a76b17f4d..6492e9cf98086e8524656d1863880a5e144d186a 100644 --- a/src/surfMesh/polySurface/fields/polySurfaceFieldsFwd.H +++ b/src/surfMesh/polySurface/fields/polySurfaceFieldsFwd.H @@ -49,22 +49,28 @@ using PolyFaceField = DimensionedField<Type, polySurfaceGeoMesh>; // Typedefs -typedef DimensionedField<label, polySurfaceGeoMesh> +typedef + DimensionedField<label, polySurfaceGeoMesh> polySurfaceLabelField; -typedef Foam::DimensionedField<scalar, polySurfaceGeoMesh> +typedef + DimensionedField<scalar, polySurfaceGeoMesh> polySurfaceScalarField; -typedef Foam::DimensionedField<vector, polySurfaceGeoMesh> +typedef + DimensionedField<vector, polySurfaceGeoMesh> polySurfaceVectorField; -typedef Foam::DimensionedField<sphericalTensor, polySurfaceGeoMesh> +typedef + DimensionedField<sphericalTensor, polySurfaceGeoMesh> polySurfaceSphericalTensorField; -typedef Foam::DimensionedField<symmTensor, polySurfaceGeoMesh> +typedef + DimensionedField<symmTensor, polySurfaceGeoMesh> polySurfaceSymmTensorField; -typedef Foam::DimensionedField<tensor, polySurfaceGeoMesh> +typedef + DimensionedField<tensor, polySurfaceGeoMesh> polySurfaceTensorField; @@ -79,22 +85,28 @@ using PolyPointField = DimensionedField<Type, polySurfacePointGeoMesh>; // Typedefs -typedef Foam::DimensionedField<label, polySurfacePointGeoMesh> +typedef + DimensionedField<label, polySurfacePointGeoMesh> polySurfacePointLabelField; -typedef Foam::DimensionedField<scalar, polySurfacePointGeoMesh> +typedef + DimensionedField<scalar, polySurfacePointGeoMesh> polySurfacePointScalarField; -typedef Foam::DimensionedField<vector, polySurfacePointGeoMesh> +typedef + DimensionedField<vector, polySurfacePointGeoMesh> polySurfacePointVectorField; -typedef Foam::DimensionedField<sphericalTensor, polySurfacePointGeoMesh> +typedef + DimensionedField<sphericalTensor, polySurfacePointGeoMesh> polySurfacePointSphericalTensorField; -typedef Foam::DimensionedField<symmTensor, polySurfacePointGeoMesh> +typedef + DimensionedField<symmTensor, polySurfacePointGeoMesh> polySurfacePointSymmTensorField; -typedef Foam::DimensionedField<tensor, polySurfacePointGeoMesh> +typedef + DimensionedField<tensor, polySurfacePointGeoMesh> polySurfacePointTensorField; diff --git a/src/surfMesh/polySurface/fields/polySurfaceGeoMesh.H b/src/surfMesh/polySurface/fields/polySurfaceGeoMesh.H index ca27467eb4274b2de010e77b651ad00f9544db04..9adff973152e9535499531d1c4eda2c553cc5c1e 100644 --- a/src/surfMesh/polySurface/fields/polySurfaceGeoMesh.H +++ b/src/surfMesh/polySurface/fields/polySurfaceGeoMesh.H @@ -27,7 +27,7 @@ Class Foam::polySurfaceGeoMesh Description - The polySurface GeoMesh (for holding fields). + The polySurface GeoMesh for face fields. \*---------------------------------------------------------------------------*/ @@ -74,6 +74,13 @@ public: { return size(mesh_); } + + // FUTURE? + // //- Return the object registry for face fields + // const objectRegistry& thisDb() const + // { + // return mesh_.faceData(); + // } }; diff --git a/src/surfMesh/polySurface/fields/polySurfacePointGeoMesh.H b/src/surfMesh/polySurface/fields/polySurfacePointGeoMesh.H index ac4a761d9cd0ebb7b640987a76839c8a147a6979..8ccca1e11a31fec0a7b5d623221444ae0242aee8 100644 --- a/src/surfMesh/polySurface/fields/polySurfacePointGeoMesh.H +++ b/src/surfMesh/polySurface/fields/polySurfacePointGeoMesh.H @@ -27,7 +27,7 @@ Class Foam::polySurfacePointGeoMesh Description - The polySurface GeoMesh (for holding point fields). + The polySurface GeoMesh for point fields. \*---------------------------------------------------------------------------*/ @@ -74,6 +74,13 @@ public: { return size(mesh_); } + + // FUTURE? + // //- Return the object registry for point fields + // const objectRegistry& thisDb() const + // { + // return mesh_.pointData(); + // } }; diff --git a/src/surfMesh/polySurface/polySurface.C b/src/surfMesh/polySurface/polySurface.C index 553fce0d63358c5137fbb455770d5b76d7e014b0..70d81f775a4ae02380b560e15d5d369a7defa000 100644 --- a/src/surfMesh/polySurface/polySurface.C +++ b/src/surfMesh/polySurface/polySurface.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -52,15 +52,12 @@ void Foam::polySurface::calculateZoneIds(const UList<surfZone>& zones) // Extra safety, ensure we have at some zones // and they cover all the faces - fix start silently - zoneIds_.resize(size(), Zero); + zoneIds_.resize_nocopy(size()); label off = 0; for (const surfZone& zn : zones) { - const label sz = zn.size(); - - SubList<label>(zoneIds_, sz, off) = zn.index(); - + SubList<label>(zoneIds_, zn.size(), off) = zn.index(); off += zn.size(); } @@ -69,7 +66,7 @@ void Foam::polySurface::calculateZoneIds(const UList<surfZone>& zones) WarningInFunction << "More faces " << size() << " than zones " << off << endl; - SubList<label>(zoneIds_, size()-off, off) = zones.back().index(); + zoneIds_.slice(off) = (zones.empty() ? 0 : zones.back().index()); } else if (size() < off) { @@ -96,8 +93,7 @@ Foam::polySurface::polySurface(const IOobject& io, bool doCheckIn) IOobjectOption::REGISTER ) ), - MeshReference(faceList(), pointField()), - zoneIds_() + MeshReference(faceList(), pointField()) { // Created without a point field sub-registry @@ -157,6 +153,36 @@ Foam::polySurface::polySurface } +// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // + +Foam::polySurface& Foam::polySurface::New +( + const word& surfName, + const objectRegistry& obr +) +{ + auto* ptr = obr.getObjectPtr<polySurface>(surfName); + + if (!ptr) + { + ptr = new polySurface(surfName, obr); + regIOobject::store(ptr); + } + + return *ptr; +} + + +bool Foam::polySurface::Delete +( + const word& surfName, + const objectRegistry& obr +) +{ + return obr.checkOut(obr.getObjectPtr<polySurface>(surfName)); +} + + // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::polySurface::~polySurface() @@ -169,21 +195,19 @@ Foam::polySurface::~polySurface() Foam::label Foam::polySurface::nFaceData() const { - label count = objectRegistry::size(); - - // Remove PointData sub-registry from being included in the count + // Do not include sub-registry in the count if (objectRegistry::foundObject<objectRegistry>(pointDataName)) { - --count; + return (objectRegistry::size() - 1); } - return count; + return objectRegistry::size(); } Foam::label Foam::polySurface::nPointData() const { - const objectRegistry* subreg = + const auto* subreg = objectRegistry::cfindObject<objectRegistry>(pointDataName); if (subreg) @@ -213,11 +237,13 @@ Foam::polySurface::queryFieldAssociation(const word& fieldName) const { unsigned where(FieldAssociation::NO_DATA); + const objectRegistry* subreg = nullptr; + // Face Data { - const objectRegistry* regptr = this; + subreg = this; - if (regptr && regptr->found(fieldName)) + if (subreg && subreg->contains(fieldName)) { where |= FieldAssociation::FACE_DATA; } @@ -225,10 +251,9 @@ Foam::polySurface::queryFieldAssociation(const word& fieldName) const // Point Data { - const objectRegistry* regptr = - cfindObject<objectRegistry>(pointDataName); + subreg = cfindObject<objectRegistry>(pointDataName); - if (regptr && regptr->found(fieldName)) + if (subreg && subreg->contains(fieldName)) { where |= FieldAssociation::POINT_DATA; } @@ -248,13 +273,14 @@ const Foam::regIOobject* Foam::polySurface::findFieldObject const regIOobject* ioptr = nullptr; + const objectRegistry* subreg = nullptr; // Face Data if (where & FieldAssociation::FACE_DATA) { - const objectRegistry* regptr = this; + subreg = this; - if (regptr && (ioptr = regptr->cfindObject<regIOobject>(fieldName))) + if (subreg && (ioptr = subreg->cfindObject<regIOobject>(fieldName))) { return ioptr; } @@ -263,10 +289,9 @@ const Foam::regIOobject* Foam::polySurface::findFieldObject // Point Data if (where & FieldAssociation::POINT_DATA) { - const objectRegistry* regptr = - cfindObject<objectRegistry>(pointDataName); + subreg = cfindObject<objectRegistry>(pointDataName); - if (regptr && (ioptr = regptr->cfindObject<regIOobject>(fieldName))) + if (subreg && (ioptr = subreg->cfindObject<regIOobject>(fieldName))) { return ioptr; } @@ -466,7 +491,7 @@ const regIOobject* polySurface::findFieldObject<polySurfacePointGeoMesh> { // Point Data (sub-registry) - const objectRegistry* subreg = + const auto* subreg = objectRegistry::cfindObject<objectRegistry>(pointDataName); if (subreg) @@ -488,7 +513,7 @@ const objectRegistry* polySurface::whichRegistry<polySurfaceGeoMesh> // Face Data (main registry) const objectRegistry* subreg = this; - if (subreg->found(fieldName)) + if (subreg->contains(fieldName)) { return subreg; } @@ -505,10 +530,10 @@ const objectRegistry* polySurface::whichRegistry<polySurfacePointGeoMesh> { // Point Data (sub registry) - const objectRegistry* subreg = + const auto* subreg = objectRegistry::cfindObject<objectRegistry>(pointDataName); - if (subreg && subreg->found(fieldName)) + if (subreg && subreg->contains(fieldName)) { return subreg; } diff --git a/src/surfMesh/polySurface/polySurface.H b/src/surfMesh/polySurface/polySurface.H index faa59e1054a443b91763a0f69c04a6cdb53a8b6e..d49c7ac1e3598f5eecadba21176c4d3e68ca9cd8 100644 --- a/src/surfMesh/polySurface/polySurface.H +++ b/src/surfMesh/polySurface/polySurface.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -87,7 +87,8 @@ private: // Private Typedefs //- Internal mesh storage type - typedef PrimitivePatch<::Foam::List<face>, pointField> + typedef + PrimitivePatch<::Foam::List<face>, pointField> MeshReference; @@ -102,12 +103,6 @@ private: //- Calculate per-face zone/region information void calculateZoneIds(const UList<surfZone>& zones); - //- No copy construct - polySurface(const polySurface&) = delete; - - //- No copy assignment - void operator=(const polySurface&) = delete; - protected: @@ -122,7 +117,11 @@ protected: //- Non-const access to the faces faceList& storedFaces() { - return static_cast<faceList&>(static_cast<MeshReference&>(*this)); + return + static_cast<faceList&> + ( + static_cast<MeshReference&>(*this) + ); } //- Const access to the faces @@ -154,14 +153,23 @@ public: TypeName("polySurface"); + // Generated Methods + + //- No copy construct + polySurface(const polySurface&) = delete; + + //- No copy assignment + void operator=(const polySurface&) = delete; + + // Constructors - //- Construct null with NO_READ, NO_WRITE + //- Default construct with NO_READ, NO_WRITE //- optionally with a checkIn on the parent registry. // Created without a PointData sub-registry explicit polySurface(const IOobject& io, bool doCheckIn = false); - //- Construct null with specified name on the given registry, + //- Default construct with specified name on the given registry, //- optionally with a checkIn on the parent registry. // Created without a PointData sub-registry polySurface @@ -198,6 +206,15 @@ public: virtual ~polySurface(); + // Factory Methods + + //- Get or create (NO_READ, NO_WRITE) named surface on registry + static polySurface& New(const word& surfName, const objectRegistry&); + + //- Remove named surface from specified registry + static bool Delete(const word& surfName, const objectRegistry&); + + // Member Functions // Resolve iterator ambiguity in favour of Patch (not registry) @@ -268,30 +285,36 @@ public: // Modification - //- Update with new contents + //- Update with new contents. + //- Removes existing fields if sizes have changed void copySurface ( const pointField& points, const faceList& faces, + //! validate the zone coverage (ignored) bool unused=false ); - //- Update with new contents + //- Update with new contents. + //- Removes existing fields if sizes have changed void copySurface ( const meshedSurf& surf, + //! validate the zone coverage (ignored) bool unused=false ); - //- Update with new contents + //- Update with new contents. + //- Removes existing fields if sizes have changed void copySurface ( const MeshedSurface<face>& surf, + //! validate the zone coverage (ignored) bool unused=false ); - //- Transfer the contents of the argument and annul the argument - // Optionally validate the zone coverage. + //- Transfer the contents (and annul the parameters). + //- Removes existing fields. void transfer ( pointField&& points, @@ -299,11 +322,12 @@ public: labelList&& zoneIds = labelList() ); - //- Transfer the contents of the argument and annul the argument - // Optionally validate the zone coverage. + //- Transfer the contents (and annul the parameters). + //- Removes existing fields. void transfer ( MeshedSurface<face>& surf, + //! validate the zone coverage bool validate=false ); @@ -353,19 +377,37 @@ public: const objectRegistry& faceData() const; //- Point data are stored in a sub-registry - // Note that this method with automatically create the corresponding + // Note that this method will automatically create the corresponding // sub-registry if it did not previously exist. // Use the nPointData() methods instead if you wish to test for // content without this side-effect. const objectRegistry& pointData() const; + //- Create/store named zero field as face or point data + //- (template parameter). + // + // - Default is face-data (polySurfaceGeoMesh as template). + // - For point-data use polySurfacePointGeoMesh as template. + // + // \return reference to the field + template<class Type, class GeoMeshType = polySurfaceGeoMesh> + DimensionedField<Type, GeoMeshType>& + newField + ( + const word& fieldName, + const dimensionSet& dims + ); + //- Copy/store named field as face or point data (template parameter). // - // Default is face-data (polySurfaceGeoMesh as template). - // For point data use (polySurfacePointGeoMesh as template). + // - Default is face-data (polySurfaceGeoMesh as template). + // - For point-data use polySurfacePointGeoMesh as template. + // + // \return reference to the field template<class Type, class GeoMeshType = polySurfaceGeoMesh> - void storeField + DimensionedField<Type, GeoMeshType>& + storeField ( const word& fieldName, const dimensionSet& dims, @@ -374,10 +416,13 @@ public: //- Move/store named field as face or point data (template parameter). // - // Default is face-data (polySurfaceGeoMesh as template). - // For point data use (polySurfacePointGeoMesh as template). + // - Default is face-data (polySurfaceGeoMesh as template). + // - For point-data use polySurfacePointGeoMesh as template. + // + // \return reference to the field template<class Type, class GeoMeshType = polySurfaceGeoMesh> - void storeField + DimensionedField<Type, GeoMeshType>& + storeField ( const word& fieldName, const dimensionSet& dims, diff --git a/src/surfMesh/polySurface/polySurfaceClear.C b/src/surfMesh/polySurface/polySurfaceClear.C index f8148f4fcc76cb26cb4058d50b4d8b42ace6b8b8..c7ad1165d694ddc994d4551f750868e6769405bd 100644 --- a/src/surfMesh/polySurface/polySurfaceClear.C +++ b/src/surfMesh/polySurface/polySurfaceClear.C @@ -26,7 +26,6 @@ License \*---------------------------------------------------------------------------*/ #include "polySurface.H" -#include "globalMeshData.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // diff --git a/src/surfMesh/polySurface/polySurfaceTemplates.C b/src/surfMesh/polySurface/polySurfaceTemplates.C index b557b44c402ab93640a266a3e123c9c31014611f..9d64593fbbf93129eea9175a3280b6f9a6cf3f8d 100644 --- a/src/surfMesh/polySurface/polySurfaceTemplates.C +++ b/src/surfMesh/polySurface/polySurfaceTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -49,7 +49,7 @@ const Foam::regIOobject* Foam::polySurface::findFieldObject forAllConstIters(obr, iter) { - const objectRegistry* subreg = isA<objectRegistry>(iter.val()); + const auto* subreg = isA<objectRegistry>(iter.val()); if (subreg && (ioptr = subreg->cfindObject<regIOobject>(fieldName))) { @@ -71,16 +71,16 @@ const Foam::objectRegistry* Foam::polySurface::whichRegistry const objectRegistry& obr = *this; - if (obr.found(fieldName)) + if (obr.contains(fieldName)) { return this; } forAllConstIters(obr, iter) { - const objectRegistry* subreg = isA<objectRegistry>(iter.val()); + const auto* subreg = isA<objectRegistry>(iter.val()); - if (subreg && subreg->found(fieldName)) + if (subreg && subreg->contains(fieldName)) { return subreg; } @@ -91,32 +91,76 @@ const Foam::objectRegistry* Foam::polySurface::whichRegistry template<class Type, class GeoMeshType> -void Foam::polySurface::storeField +Foam::DimensionedField<Type, GeoMeshType>& +Foam::polySurface::newField +( + const word& fieldName, + const dimensionSet& dims +) +{ + typedef DimensionedField<Type, GeoMeshType> fieldType; + + // Force creates field database if needed. + const objectRegistry& fieldDb = this->fieldData<GeoMeshType>(); + + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); + + if (fldptr) + { + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = Foam::zero{}; + } + else + { + fldptr = new fieldType + ( + fieldDb.newIOobject + ( + fieldName, + IOobjectOption::NO_READ, + IOobjectOption::NO_WRITE, + IOobjectOption::REGISTER + ), + *this, + Foam::zero{}, + dims + ); + + regIOobject::store(fldptr); + } + + return *fldptr; +} + + +template<class Type, class GeoMeshType> +Foam::DimensionedField<Type, GeoMeshType>& +Foam::polySurface::storeField ( const word& fieldName, const dimensionSet& dims, const Field<Type>& values ) { + typedef DimensionedField<Type, GeoMeshType> fieldType; + // Force creates field database if needed. const objectRegistry& fieldDb = this->fieldData<GeoMeshType>(); - auto* dimfield = - fieldDb.getObjectPtr<DimensionedField<Type, GeoMeshType>>(fieldName); + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); - if (dimfield) + if (fldptr) { - dimfield->dimensions().reset(dims); // Dimensions may have changed - dimfield->field() = values; + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = values; } else { - dimfield = new DimensionedField<Type, GeoMeshType> + fldptr = new fieldType ( - IOobject + fieldDb.newIOobject ( fieldName, - fieldDb, IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -126,38 +170,41 @@ void Foam::polySurface::storeField values ); - dimfield->store(); + regIOobject::store(fldptr); } + + return *fldptr; } template<class Type, class GeoMeshType> -void Foam::polySurface::storeField +Foam::DimensionedField<Type, GeoMeshType>& +Foam::polySurface::storeField ( const word& fieldName, const dimensionSet& dims, Field<Type>&& values ) { + typedef DimensionedField<Type, GeoMeshType> fieldType; + // Force creates field database if needed. const objectRegistry& fieldDb = this->fieldData<GeoMeshType>(); - auto* dimfield = - fieldDb.getObjectPtr<DimensionedField<Type, GeoMeshType>>(fieldName); + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); - if (dimfield) + if (fldptr) { - dimfield->dimensions().reset(dims); // Dimensions may have changed - dimfield->field() = std::move(values); + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = std::move(values); } else { - dimfield = new DimensionedField<Type, GeoMeshType> + fldptr = new fieldType ( - IOobject + fieldDb.newIOobject ( fieldName, - fieldDb, IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -167,8 +214,10 @@ void Foam::polySurface::storeField std::move(values) ); - dimfield->store(); + regIOobject::store(fldptr); } + + return *fldptr; } diff --git a/src/surfMesh/readers/ensight/ensightSurfaceReader.C b/src/surfMesh/readers/ensight/ensightSurfaceReader.C index e0515ec6640b95edd3b8e91196621e008b065bd3..29fbc5af5c628b587c4053f3a6cecf397996ca36 100644 --- a/src/surfMesh/readers/ensight/ensightSurfaceReader.C +++ b/src/surfMesh/readers/ensight/ensightSurfaceReader.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,54 +44,57 @@ namespace Foam namespace Foam { -// Read and discard specified number of elements -template<class Type> -static inline void discard(label n, ensightReadFile& is) +// Extract timeset and fileset from split line information +// when the minElements has been satisfied. +// For example, +// ---- +// model: 1 some-geometry +// model: 1 1 some-geometry +// ---- +// would be split *after* the 'model:' resulting in these sub-strings: +// +// ("1" "some-geometry") +// ("1" "1" some-geometry") +// +// thus call extractTimeset with minElements == 2 +// +template<class StringType> +static inline labelPair extractTimeset +( + const SubStrings<StringType>& split, + const std::size_t minElements +) { - Type val; + ISpanStream is; - while (n > 0) + labelPair result(-1, -1); + if (split.size() >= minElements) { - is.read(val); - --n; + is.reset(split[0]); + is >> result.first(); + + if (split.size() > minElements) + { + is.reset(split[1]); + is >> result.second(); + } } + + return result; } } // End namespace Foam -// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // +// * * * * * * * * * * Protected Static Member Functions * * * * * * * * * * // -void Foam::ensightSurfaceReader::skip(const label n, Istream& is) const -{ - label i = 0; - token tok; - while (is.good() && (i < n)) - { - is >> tok; - ++i; - - DebugInfo - << "Skipping token " << tok << nl; - } - - if (i != n) - { - WarningInFunction - << "Requested to skip " << n << " tokens, but stream exited after " - << i << " tokens. Last token read: " << tok - << nl; - } -} - - -void Foam::ensightSurfaceReader::readLine(ISstream& is, string& line) const +bool Foam::ensightSurfaceReader::readLine(ISstream& is, std::string& line) { do { is.getLine(line); - // Trim out any '#' comments + // Trim out any '#' comments (trailing or otherwise) const auto pos = line.find('#'); if (pos != std::string::npos) { @@ -100,61 +103,56 @@ void Foam::ensightSurfaceReader::readLine(ISstream& is, string& line) const stringOps::inplaceTrimRight(line); } while (line.empty() && is.good()); + + return !line.empty(); } -void Foam::ensightSurfaceReader::debugSection +void Foam::ensightSurfaceReader::checkSection ( const word& expected, - ISstream& is -) const + const string& buffer, + const ISstream& is +) { - string actual; - readLine(is, actual); + // Be more generous with our expectations. + // Eg, ensight specifies the "VARIABLE" entry, + // but accepts "VARIABLES" as well. - if (expected != actual) + if (!expected.empty() && !buffer.starts_with(expected)) { FatalIOErrorInFunction(is) << "Expected section header '" << expected - << "' but read " << actual << nl + << "' but read " << buffer << nl << exit(FatalIOError); } DebugInfo - << "Read section header: " << expected << nl; + << "Read section header: " << buffer.c_str() << nl; } -Foam::fileName Foam::ensightSurfaceReader::replaceMask +void Foam::ensightSurfaceReader::debugSection ( - const fileName& fName, - const label timeIndex + const word& expected, + ISstream& is ) { - fileName result(fName); - - const auto nMask = stringOps::count(fName, '*'); - - // If there are any '*' chars, they are assumed to be contiguous - // Eg, data/******/geometry - - if (nMask) - { - const std::string maskStr(nMask, '*'); - const Foam::word indexStr(ensightCase::padded(nMask, timeIndex)); - result.replace(maskStr, indexStr); - } + string buffer; + readLine(is, buffer); - return result; + checkSection(expected, buffer, is); } +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + Foam::Pair<Foam::ensightSurfaceReader::idTypes> -Foam::ensightSurfaceReader::readGeometryHeader(ensightReadFile& is) const +Foam::ensightSurfaceReader::readGeometryHeader +( + ensightReadFile& is +) const { - // Binary flag string if applicable - is.readBinaryHeader(); - string buffer; Pair<idTypes> idHandling(idTypes::NONE, idTypes::NONE); @@ -203,17 +201,17 @@ Foam::ensightSurfaceReader::readGeometryHeader(ensightReadFile& is) const // Optional extents - read and discard 6 floats // (xmin, xmax, ymin, ymax, zmin, zmax) - discard<scalar>(6, is); + is.skip<scalar>(6); - // Part + // "part" is.read(buffer); DebugInfo<< "buffer [" << buffer.length() << "] " << buffer << nl; } // The part number - label ivalue; - is.read(ivalue); - DebugInfo<< "ivalue: " << ivalue << nl; + label intValue; + is.read(intValue); + DebugInfo<< "part number: " << intValue << nl; // Part description / name is.read(buffer); @@ -231,6 +229,8 @@ void Foam::ensightSurfaceReader::readCase(ISstream& is) { DebugInFunction << endl; + enum ParseSection { UNKNOWN, FORMAT, GEOMETRY, VARIABLE, TIME, FILE }; + if (!is.good()) { FatalErrorInFunction @@ -239,99 +239,366 @@ void Foam::ensightSurfaceReader::readCase(ISstream& is) } string buffer; + SubStrings<string> split; - // Read the file + ParseSection parseState = ParseSection::UNKNOWN; + + // FORMAT + // ~~~~~~ debugSection("FORMAT", is); readLine(is, buffer); // type: ensight gold + parseState = ParseSection::FORMAT; + // GEOMETRY + // ~~~~~~~~ debugSection("GEOMETRY", is); - readLine(is, buffer); + parseState = ParseSection::GEOMETRY; - // GEOMETRY with any of these - // model: 1 xxx.0000.mesh - // model: xxx.0000.mesh - // model: data/directory/geometry - // - // - use the last entry - meshFileName_ = stringOps::splitSpace(buffer).back().str(); + do + { + readLine(is, buffer); - DebugInfo << "mesh file:" << meshFileName_ << endl; + if (buffer.starts_with("VARIABLE")) + { + parseState = ParseSection::VARIABLE; + break; + } + + if (buffer.contains("change_coords_only")) + { + FatalIOErrorInFunction(is) + << "No support for moving points, only topology change" << nl + << exit(FatalIOError); + } + + // Extract filename from GEOMETRY section + // ==== + // model: [ts] [fs] filename [change_coords_only [cstep]] + // + // ==== + + // TBD: + // check for "model:" vs "measured:" ? + + const auto pos_colon = buffer.find(':'); + + if + ( + (pos_colon == std::string::npos) + ) + { + FatalIOErrorInFunction(is) + << "Error reading geometry 'model:'" << nl + << exit(FatalIOError); + } + + split = stringOps::splitSpace(buffer, pos_colon+1); + + if (split.empty()) + { + FatalIOErrorInFunction(is) + << "Error reading geometry 'model:'" << nl + << exit(FatalIOError); + } + + // With timeset? - need at least 2 entries + meshTimeset_ = extractTimeset(split, 2); + meshFileName_ = split[split.size()-1].str(); - debugSection("VARIABLE", is); + DebugInfo << "mesh file:" << meshFileName_ << endl; + } + while (false); + + + if (parseState != ParseSection::VARIABLE) + { + debugSection("VARIABLE", is); + parseState = ParseSection::VARIABLE; + } // Read the field description - DynamicList<word> fieldNames(16); - DynamicList<string> fieldFileNames(16); + DynamicList<labelPair> dynFieldTimesets(16); + DynamicList<word> dynFieldNames(16); + DynamicList<string> dynFieldFileNames(16); + + // VARIABLE + // ~~~~~~~~ while (is.good()) { readLine(is, buffer); - if (buffer == "TIME") + if (buffer.starts_with("TIME")) { + parseState = ParseSection::TIME; break; } - // Read the field name and associated file name. Eg, - // scalar per element: 1 p data/********/p + // Read the field name and associated file name. + // Eg, + // scalar per element: [ts] [fs] p data/********/p + // but ignore + // scalar per node: [ts] [fs] other data/********/other - const auto parsed = stringOps::splitSpace(buffer); + const auto pos_colon = buffer.find(':'); - if (!buffer.contains(':') || parsed.size() < 4) + if (pos_colon == std::string::npos) + { + DebugInfo<< "ignore variable line: " << buffer << nl; + continue; + } + + // TODO? handle variable descriptions with spaces (they are quoted) + + split = stringOps::splitSpace(buffer, pos_colon+1); + + if (split.size() < 2) { WarningInFunction - << "Error reading field file name. Current buffer: " + << "Error reading field file name, variable line: " << buffer << endl; continue; } - else if (debug) + + auto pos_key = buffer.find("element"); + if ((pos_key == std::string::npos) || (pos_colon < pos_key)) { - Info<< "variable line: " << parsed.size(); - for (const auto& s : parsed) - { - Info<< " " << s.str(); - } - Info<< nl; + DebugInfo<< "ignore variable line: " << buffer << nl; + continue; } - fieldNames.push_back(parsed[parsed.size()-2].str()); - fieldFileNames.push_back(parsed.back().str()); + DebugInfo<< "variable line: " << buffer << nl; + + // With timeset? - need at least 3 entries + dynFieldTimesets.push_back(extractTimeset(split, 3)); + + dynFieldNames.push_back(split[split.size()-2].str()); + dynFieldFileNames.push_back(split[split.size()-1].str()); } - fieldNames_.transfer(fieldNames); - fieldFileNames_.transfer(fieldFileNames); + fieldTimesets_.transfer(dynFieldTimesets); + fieldNames_.transfer(dynFieldNames); + fieldFileNames_.transfer(dynFieldFileNames); DebugInfo << "fieldNames: " << fieldNames_ << nl << "fieldFileNames: " << fieldFileNames_ << nl; - // Start reading time information - readLine(is, buffer); // time set: <int> - readLine(is, buffer); - readFromLine(3, buffer, nTimeSteps_); // number of steps: <int> - readLine(is, buffer); - readFromLine(3, buffer, timeStartIndex_); // filename start number: <int> - readLine(is, buffer); - readFromLine(2, buffer, timeIncrement_); // filename increment: <int> + if (parseState != ParseSection::TIME) + { + FatalIOErrorInFunction(is) + << "Did not find section header 'TIME'" << nl + << exit(FatalIOError); + } + + + // Determine which unique timeset or fileset to expect + + labelHashSet expectTimeset; + labelHashSet expectFileset; + + expectTimeset.insert(meshTimeset_.first()); + expectFileset.insert(meshTimeset_.second()); + + for (const auto& tup : fieldTimesets_) + { + expectTimeset.insert(tup.first()); + expectFileset.insert(tup.second()); + } + + // Remove placeholders + expectTimeset.erase(-1); + expectFileset.erase(-1); + DebugInfo - << "nTimeSteps: " << nTimeSteps_ << nl - << "timeStartIndex: " << timeStartIndex_ << nl - << "timeIncrement: " << timeIncrement_ << nl; - - // Read the time values - readLine(is, buffer); // time values: - timeValues_.resize_nocopy(nTimeSteps_); - for (label i = 0; i < nTimeSteps_; ++i) + << "expect timesets: " << flatOutput(expectTimeset) << nl + << "expect filesets: " << flatOutput(expectFileset) << nl; + + + // TIME + // ~~~~ + // style 1: + // ==== + // time set: <int> [description] + // number of steps: <int> + // filename start number: <int> + // filename increment: <int> + // time values: time_1 .. time_N + // ==== + // + // style 2: + // ==== + // time set: <int> [description] + // number of steps: <int> + // filename numbers: int_1 .. int_N + // time values: time_1 .. time_N + // ==== + // + // style 3: + // ==== + // time set: <int> [description] + // number of steps: <int> + // filename numbers file: <filename> + // time values file: <filename> + // ==== + + + // Currently only handling style 1, style 2 + // and only a single time set + + // time set = 1 { - scalar t(readScalar(is)); + // time set: <int> + { + readLine(is, buffer); + } + + // number of steps: <int> + label nTimes = 0; + { + readLine(is, buffer); + split = stringOps::splitSpace(buffer); + readFrom(split.back(), nTimes); + } + + // filename start number: <int> + // filename increment: <int> + // + // OR: + // filename numbers: ... + + readLine(is, buffer); + auto pos_colon = buffer.find(':'); + + if (buffer.contains("numbers:")) + { + // Split out trailing values... + split = stringOps::splitSpace(buffer, pos_colon+1); + + fileNumbers_.resize_nocopy(nTimes); + + label numRead = 0; + while (numRead < nTimes) + { + for (const auto& chunk : split) + { + std::string str(chunk.str()); + + if (!Foam::readLabel(str, fileNumbers_[numRead])) + { + FatalIOErrorInFunction(is) + << "Could not parse label: " << str << nl + << exit(FatalIOError); + } + ++numRead; + + if (numRead == nTimes) + { + break; + } + } + + // Get more input + if (numRead < nTimes) + { + readLine(is, buffer); + split = stringOps::splitSpace(buffer); + } + } + + timeStartIndex_ = 0; + timeIncrement_ = 0; + fileNumbers_.resize(numRead); + } + else + { + // filename start number: <int> + split = stringOps::splitSpace(buffer); + readFrom(split.back(), timeStartIndex_); + + // filename increment: <int> + readLine(is, buffer); + split = stringOps::splitSpace(buffer); + readFrom(split.back(), timeIncrement_); + + fileNumbers_.clear(); + } + + DebugInfo + << "nTimes: " << nTimes + << " start-index: " << timeStartIndex_ + << " increment: " << timeIncrement_ + << " file numbers: " << flatOutput(fileNumbers_) << nl; + + + // time values: time_1 .. time_N + readLine(is, buffer); + + // Split out trailing values... + { + const auto pos_colon = buffer.find(':'); + const auto pos_key = buffer.find("values"); + + if + ( + (pos_colon == std::string::npos) + || (pos_key == std::string::npos) || (pos_colon < pos_key) + ) + { + split.clear(); + } + else + { + split = stringOps::splitSpace(buffer, pos_colon+1); + } + } + + timeValues_.resize_nocopy(nTimes); + + label numRead = 0; + while (numRead < nTimes) + { + for (const auto& chunk : split) + { + auto& inst = timeValues_[numRead]; + + // Retain character representation + inst.name() = word(chunk.str()); + + if (!Foam::readScalar(inst.name(), inst.value())) + { + FatalIOErrorInFunction(is) + << "Could not parse scalar: " << inst.name() << nl + << exit(FatalIOError); + } + ++numRead; + + if (numRead == nTimes) + { + break; + } + } + + // Get more input + if (numRead < nTimes) + { + readLine(is, buffer); + split = stringOps::splitSpace(buffer); + } + } - timeValues_[i].value() = t; - // TODO: use character representation of t directly instead of - // regenerating from scalar value - timeValues_[i].name() = Foam::name(t); + timeValues_.resize(numRead); } + + // Not yet: + + // FILE + // ~~~~ + // file set: <int> + // filename index: <int> - file index number in the file name + // number of steps: <int> } @@ -351,14 +618,9 @@ Foam::ensightSurfaceReader::ensightSurfaceReader ), readFormat_(IOstreamOption::ASCII), // Placeholder value baseDir_(fName.path()), - meshFileName_(), - fieldNames_(), - fieldFileNames_(), - nTimeSteps_(0), + meshTimeset_(-1,-1), timeStartIndex_(0), - timeIncrement_(1), - timeValues_(), - surfPtr_(nullptr) + timeIncrement_(1) { if (options.getOrDefault("debug", false)) { @@ -376,12 +638,14 @@ Foam::ensightSurfaceReader::ensightSurfaceReader Pstream::broadcasts ( UPstream::worldComm, + meshTimeset_, meshFileName_, + fieldTimesets_, fieldNames_, fieldFileNames_, - nTimeSteps_, timeStartIndex_, timeIncrement_, + fileNumbers_, timeValues_ ); } @@ -392,7 +656,8 @@ Foam::ensightSurfaceReader::ensightSurfaceReader Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry ( - const fileName& geometryFile + const fileName& geometryFile, + const label timeIndex ) { DebugInFunction << endl; @@ -404,6 +669,9 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry // Format detected from the geometry readFormat_ = is.format(); + // For transient single-file + is.seekTime(timeIndex); + DebugInfo << "File: " << is.name() << " format: " @@ -433,52 +701,59 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry << "Ignore " << nPoints << " node ids" << nl; // Read and discard labels - discard<label>(nPoints, is); + is.skip<label>(nPoints); } - pointField points(nPoints); - for (direction cmpt = 0; cmpt < vector::nComponents; ++cmpt) - { - for (point& p : points) - { - is.read(p[cmpt]); - } - } + pointField points; + is.readPoints(nPoints, points); // Read faces - may be a mix of tria3, quad4, nsided DynamicList<face> dynFaces(nPoints/3); DynamicList<faceInfoTuple> faceTypeInfo(16); - string faceType; - label faceCount = 0; + string buffer; - while (is.good()) // (is.peek() != EOF) + while (is.good()) { // The element type - is.read(faceType); + is.read(buffer); if (!is.good()) { break; } + else if (buffer.contains("BEGIN TIME STEP")) + { + // Graciously handle a miscued start + continue; + } + else if (buffer.contains("END TIME STEP")) + { + // END TIME STEP is a valid means to terminate input + break; + } if ( - faceType + buffer == ensightFaces::elemNames[ensightFaces::elemType::TRIA3] ) { - is.read(faceCount); + label elemCount; + is.read(elemCount); - faceTypeInfo.push_back + faceTypeInfo.emplace_back ( - faceInfoTuple(ensightFaces::elemType::TRIA3, faceCount) + ensightFaces::elemType::TRIA3, + elemCount ); DebugInfo - << "faceType <" << faceType.c_str() << "> count: " - << faceCount << nl; + << "faceType <" + << ensightFaces::elemNames[ensightFaces::elemType::TRIA3] + << "> count: " + << elemCount << nl; if ( @@ -487,39 +762,45 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry ) { DebugInfo - << "Ignore " << faceCount << " element ids" << nl; + << "Ignore " << elemCount << " element ids" << nl; // Read and discard labels - discard<label>(faceCount, is); + is.skip<label>(elemCount); } - for (label facei = 0; facei < faceCount; ++facei) + // Extend and fill the new trailing portion + const label startElemi = dynFaces.size(); + dynFaces.resize(startElemi+elemCount, face(3)); // tria3 + faceList::subList myElements = dynFaces.slice(startElemi); + + for (auto& f : myElements) { - face f(3); for (label& fp : f) { is.read(fp); } - - dynFaces.push_back(std::move(f)); } } else if ( - faceType + buffer == ensightFaces::elemNames[ensightFaces::elemType::QUAD4] ) { - is.read(faceCount); + label elemCount; + is.read(elemCount); - faceTypeInfo.push_back + faceTypeInfo.emplace_back ( - faceInfoTuple(ensightFaces::elemType::QUAD4, faceCount) + ensightFaces::elemType::QUAD4, + elemCount ); DebugInfo - << "faceType <" << faceType.c_str() << "> count: " - << faceCount << nl; + << "faceType <" + << ensightFaces::elemNames[ensightFaces::elemType::QUAD4] + << "> count: " + << elemCount << nl; if ( @@ -528,39 +809,44 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry ) { DebugInfo - << "Ignore " << faceCount << " element ids" << nl; + << "Ignore " << elemCount << " element ids" << nl; // Read and discard labels - discard<label>(faceCount, is); + is.skip<label>(elemCount); } - for (label facei = 0; facei < faceCount; ++facei) + // Extend and fill the new trailing portion + const label startElemi = dynFaces.size(); + dynFaces.resize(startElemi + elemCount, face(4)); // quad4 + faceList::subList myElements = dynFaces.slice(startElemi); + + for (auto& f : myElements) { - face f(4); for (label& fp : f) { is.read(fp); } - - dynFaces.push_back(std::move(f)); } } else if ( - faceType + buffer == ensightFaces::elemNames[ensightFaces::elemType::NSIDED] ) { - is.read(faceCount); + label elemCount; + is.read(elemCount); - faceTypeInfo.push_back + faceTypeInfo.emplace_back ( - faceInfoTuple(ensightFaces::elemType::NSIDED, faceCount) + ensightFaces::elemType::NSIDED, + elemCount ); DebugInfo - << "faceType <" << faceType.c_str() << "> count: " - << faceCount << nl; + << "faceType <" + << ensightFaces::elemNames[ensightFaces::elemType::NSIDED] + << "> count: " << elemCount << nl; if ( @@ -569,26 +855,31 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry ) { DebugInfo - << "Ignore " << faceCount << " element ids" << nl; + << "Ignore " << elemCount << " element ids" << nl; // Read and discard labels - discard<label>(faceCount, is); + is.skip<label>(elemCount); } - labelList np(faceCount); - for (label facei = 0; facei < faceCount; ++facei) + // Extend and fill the new trailing portion + const label startElemi = dynFaces.size(); + dynFaces.resize(startElemi + elemCount); + faceList::subList myElements = dynFaces.slice(startElemi); + + for (auto& f : myElements) { - is.read(np[facei]); + label nVerts; + is.read(nVerts); + + f.resize(nVerts); } - for (label facei = 0; facei < faceCount; ++facei) + + for (auto& f : myElements) { - face f(np[facei]); for (label& fp : f) { is.read(fp); } - - dynFaces.push_back(std::move(f)); } } else @@ -596,7 +887,7 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry if (debug) { WarningInFunction - << "Unknown face type: <" << faceType.c_str() + << "Unknown face type: <" << buffer.c_str() << ">. Stopping read and continuing with current " << "elements only" << endl; } @@ -605,7 +896,7 @@ Foam::meshedSurface Foam::ensightSurfaceReader::readGeometry } // From 1-based Ensight addressing to 0-based OF addressing - for (face& f : dynFaces) + for (auto& f : dynFaces) { for (label& fp : f) { @@ -637,11 +928,15 @@ const Foam::meshedSurface& Foam::ensightSurfaceReader::geometry surfPtr_.reset(new meshedSurface); auto& surf = *surfPtr_; - fileName geomFile(baseDir_/replaceMask(meshFileName_, timeIndex)); + fileName geomFile + ( + baseDir_ + / ensightCase::expand_mask(meshFileName_, timeIndex) + ); if (!masterOnly_ || UPstream::master(UPstream::worldComm)) { - surf = readGeometry(geomFile); + surf = readGeometry(geomFile, timeIndex); } if (masterOnly_ && UPstream::parRun()) diff --git a/src/surfMesh/readers/ensight/ensightSurfaceReader.H b/src/surfMesh/readers/ensight/ensightSurfaceReader.H index b364d4f15f02bdb04ab09e3322dfa8de031198c9..e8921db814d2764e2247719d1c7af95f56d452f2 100644 --- a/src/surfMesh/readers/ensight/ensightSurfaceReader.H +++ b/src/surfMesh/readers/ensight/ensightSurfaceReader.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -57,6 +57,7 @@ SourceFiles #define Foam_ensightSurfaceReader_H #include "surfaceReader.H" +#include "ensightCase.H" #include "ensightFaces.H" #include "ensightReadFile.H" #include "Pair.H" @@ -103,24 +104,30 @@ protected: //- Base directory fileName baseDir_; + //- The timeset/fileset (if any) associated with the mesh + labelPair meshTimeset_; + //- Name of mesh file, including any subdirectory fileName meshFileName_; + //- The timeset/fileset (if any) associated with fields + List<labelPair> fieldTimesets_; + //- Field names List<word> fieldNames_; //- Field file names List<string> fieldFileNames_; - //- Number of time steps - label nTimeSteps_; - //- Start time index label timeStartIndex_; //- Time increment label timeIncrement_; + //- Numbers for files + labelList fileNumbers_; + //- Times instantList timeValues_; @@ -131,23 +138,30 @@ protected: List<faceInfoTuple> faceTypeInfo_; - // Private Member Functions + // Static Member Functions - //- Helper function to skip forward n steps in stream - void skip(const label n, Istream& is) const; + //- Helper function to read an ascii line from file, + //- skipping blank lines and comments. + // \return True if reading was successful + static bool readLine(ISstream& is, std::string& line); - //- Helper function to read an ascii line from file - void readLine(ISstream& is, string& buffer) const; + //- Check a section header + static void checkSection + ( + const word& expected, + const string& buffer, + const ISstream& is // For errors + ); //- Read and check a section header - void debugSection(const word& expected, ISstream& is) const; + static void debugSection(const word& expected, ISstream& is); + + //- Helper function to return Type from string + template<class Type> + static void readFrom(const std::string& buffer, Type& value); - //- Replace the '*' mask chars with a 0 padded string. - static fileName replaceMask - ( - const fileName& fName, - const label timeIndex - ); + + // Protected Member Functions //- Read (and discard) geometry file header. // \return information about node/element id handling @@ -157,27 +171,20 @@ protected: void readCase(ISstream& is); //- Read and return surface geometry. Updates faceTypeInfo_ - meshedSurface readGeometry(const fileName& geometryFile); - - //- Helper function to return Type after skipping n tokens - template<class Type> - void readFromLine(const label nSkip, Istream& is, Type& value) const; - - //- Helper function to return Type after skipping n tokens - template<class Type> - void readFromLine + meshedSurface readGeometry ( - const label nSkip, - const string& buffer, - Type& value - ) const; + const fileName& geometryFile, + //! Optional index for transient single-file format + const label timeIndex = 0 + ); //- Helper function to return a field template<class Type> tmp<Field<Type>> readField ( const fileName& dataFile, - const word& fieldName + const word& fieldName, + const label timeIndex = 0 ) const; //- Helper function to return a field @@ -191,6 +198,15 @@ protected: public: + // Generated Methods + + //- No copy construct + ensightSurfaceReader(const ensightSurfaceReader&) = delete; + + //- No copy assignment + void operator=(const ensightSurfaceReader&) = delete; + + //- Runtime type information TypeName("ensight"); diff --git a/src/surfMesh/readers/ensight/ensightSurfaceReaderTemplates.C b/src/surfMesh/readers/ensight/ensightSurfaceReaderTemplates.C index 8f6dbbb8af9d68a2b630077613ff9d13ffaeaead..a67dbe82474f29d3345395e4e3225266f77d5b86 100644 --- a/src/surfMesh/readers/ensight/ensightSurfaceReaderTemplates.C +++ b/src/surfMesh/readers/ensight/ensightSurfaceReaderTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -28,41 +28,28 @@ License #include "SpanStream.H" #include "ensightPTraits.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * Protected Static Member Functions * * * * * * * * * * // template<class Type> -void Foam::ensightSurfaceReader::readFromLine +void Foam::ensightSurfaceReader::readFrom ( - const label nSkip, - Istream& is, + const std::string& buffer, Type& value -) const +) { - skip(nSkip, is); - + ISpanStream is(buffer.data(), buffer.size()); is >> value; } -template<class Type> -void Foam::ensightSurfaceReader::readFromLine -( - const label nSkip, - const string& buffer, - Type& value -) const -{ - ISpanStream is(buffer.data(), buffer.length()); - - readFromLine(nSkip, is, value); -} - +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // template<class Type> Foam::tmp<Foam::Field<Type>> Foam::ensightSurfaceReader::readField ( const fileName& dataFile, - const word& fieldName + const word& fieldName, + const label timeIndex ) const { auto tfield = tmp<Field<Type>>::New(surfPtr_->nFaces(), Zero); @@ -81,6 +68,10 @@ Foam::tmp<Foam::Field<Type>> Foam::ensightSurfaceReader::readField << exit(FatalError); } + // If transient single-file + is.seekTime(timeIndex); + + // Check that data type is as expected // (assuming OpenFOAM generated the data set) string primitiveType; @@ -104,11 +95,11 @@ Foam::tmp<Foam::Field<Type>> Foam::ensightSurfaceReader::readField } string strValue; - label iValue; + label intValue; // Read header info: part index, e.g. part 1 is.read(strValue); - is.read(iValue); + is.read(intValue); label begFace = 0; @@ -183,11 +174,18 @@ Foam::tmp<Foam::Field<Type>> Foam::ensightSurfaceReader::readField } const word& fieldName = fieldNames_[fieldIndex]; - const label fileIndex = timeStartIndex_ + timeIndex*timeIncrement_; + + const label fileIndex = + ( + (timeIndex >= 0 && timeIndex < fileNumbers_.size()) + ? fileNumbers_[timeIndex] + : (timeStartIndex_ + timeIndex*timeIncrement_) + ); const fileName dataFile ( - baseDir_/replaceMask(fieldFileNames_[fieldIndex], fileIndex) + baseDir_ + / ensightCase::expand_mask(fieldFileNames_[fieldIndex], fileIndex) ); if (debug) @@ -196,7 +194,7 @@ Foam::tmp<Foam::Field<Type>> Foam::ensightSurfaceReader::readField << dataFile << endl; } - return readField<Type>(dataFile, fieldName); + return readField<Type>(dataFile, fieldName, timeIndex); } diff --git a/src/surfMesh/surfMesh/fields/surfFieldsFwd.H b/src/surfMesh/surfMesh/fields/surfFieldsFwd.H index 6d0da8f573a8b2b806a8f4eb0c3e28a07a4454ee..dccb1d346bf9a9344059b25d4b10d3c29e91858f 100644 --- a/src/surfMesh/surfMesh/fields/surfFieldsFwd.H +++ b/src/surfMesh/surfMesh/fields/surfFieldsFwd.H @@ -45,22 +45,28 @@ template<class Type, class GeoMesh> class DimensionedField; class surfGeoMesh; // Typedefs -typedef DimensionedField<label, surfGeoMesh> +typedef + DimensionedField<label, surfGeoMesh> surfLabelField; -typedef DimensionedField<scalar, surfGeoMesh> +typedef + DimensionedField<scalar, surfGeoMesh> surfScalarField; -typedef DimensionedField<vector, surfGeoMesh> +typedef + DimensionedField<vector, surfGeoMesh> surfVectorField; -typedef DimensionedField<sphericalTensor, surfGeoMesh> +typedef + DimensionedField<sphericalTensor, surfGeoMesh> surfSphericalTensorField; -typedef DimensionedField<symmTensor, surfGeoMesh> +typedef + DimensionedField<symmTensor, surfGeoMesh> surfSymmTensorField; -typedef DimensionedField<tensor, surfGeoMesh> +typedef + DimensionedField<tensor, surfGeoMesh> surfTensorField; @@ -70,22 +76,28 @@ typedef DimensionedField<tensor, surfGeoMesh> class surfPointGeoMesh; // Typedefs -typedef DimensionedField<label, surfPointGeoMesh> +typedef + DimensionedField<label, surfPointGeoMesh> surfPointLabelField; -typedef DimensionedField<scalar, surfPointGeoMesh> +typedef + DimensionedField<scalar, surfPointGeoMesh> surfPointScalarField; -typedef DimensionedField<vector, surfPointGeoMesh> +typedef + DimensionedField<vector, surfPointGeoMesh> surfPointVectorField; -typedef DimensionedField<sphericalTensor, surfPointGeoMesh> +typedef + DimensionedField<sphericalTensor, surfPointGeoMesh> surfPointSphericalTensorField; -typedef DimensionedField<symmTensor, surfPointGeoMesh> +typedef + DimensionedField<symmTensor, surfPointGeoMesh> surfPointSymmTensorField; -typedef DimensionedField<tensor, surfPointGeoMesh> +typedef + DimensionedField<tensor, surfPointGeoMesh> surfPointTensorField; diff --git a/src/surfMesh/surfMesh/fields/surfGeoMesh.H b/src/surfMesh/surfMesh/fields/surfGeoMesh.H index ae142479dccaddceda53fe5d15719d0176db8dd4..4d4dd20d8767e80d22c6560da1e7497e0c4bdac2 100644 --- a/src/surfMesh/surfMesh/fields/surfGeoMesh.H +++ b/src/surfMesh/surfMesh/fields/surfGeoMesh.H @@ -28,7 +28,7 @@ Class Foam::surfGeoMesh Description - The surfMesh GeoMesh (for holding fields). + The surfMesh GeoMesh for face fields. \*---------------------------------------------------------------------------*/ diff --git a/src/surfMesh/surfMesh/fields/surfPointGeoMesh.H b/src/surfMesh/surfMesh/fields/surfPointGeoMesh.H index f3bc8745b78380ed360074534e7a2395b086ec1b..6a152d3fe72f6dfcb1c966a17ee7881fb55fd121 100644 --- a/src/surfMesh/surfMesh/fields/surfPointGeoMesh.H +++ b/src/surfMesh/surfMesh/fields/surfPointGeoMesh.H @@ -28,7 +28,7 @@ Class Foam::surfPointGeoMesh Description - The surfMesh GeoMesh (for holding fields). + The surfMesh GeoMesh for point fields. Similar to surfGeoMesh, but refers to the surface points. diff --git a/src/surfMesh/surfMesh/surfMesh.H b/src/surfMesh/surfMesh/surfMesh.H index 67a47d1f3e27027621ff985d86b731709ae9443d..bb7f5c76ddc2ba0a4aaa97f312379270e4abfb23 100644 --- a/src/surfMesh/surfMesh/surfMesh.H +++ b/src/surfMesh/surfMesh/surfMesh.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,6 +31,9 @@ Description A surface mesh consisting of general polygon faces that has IO capabilities and a registry for storing fields. +Note + In many places the Foam::polySurface class may be more flexible. + SourceFiles surfMesh.C surfMeshClear.C @@ -88,10 +91,13 @@ private: // Private Typedefs //- Memory and IO management - typedef Detail::MeshedSurfaceIOAllocator Allocator; + typedef + Detail::MeshedSurfaceIOAllocator + Allocator; //- Internal mesh storage type - typedef PrimitivePatch<::Foam::UList<face>, const pointField&> + typedef + PrimitivePatch<::Foam::UList<face>, const pointField&> MeshReference; @@ -101,15 +107,6 @@ private: surfZoneIOList surfZones_; - // Private Member Functions - - //- No copy construct - surfMesh(const surfMesh&) = delete; - - //- No copy assignment - void operator=(const surfMesh&) = delete; - - protected: // Protected Member Functions @@ -154,6 +151,15 @@ public: static word meshSubDir; + // Generated Methods + + //- No copy construct + surfMesh(const surfMesh&) = delete; + + //- No copy assignment + void operator=(const surfMesh&) = delete; + + // Constructors //- Read construct from IOobject. @@ -164,7 +170,7 @@ public: // Writing = NO_WRITE surfMesh(const IOobject& io, const word& surfName); - //- Construct null with specified name on the given registry. + //- Construct empty with specified name on the given registry. surfMesh(const word& surfName, const objectRegistry& obr); //- Copy construct from MeshedSurface<face> @@ -301,7 +307,11 @@ public: //- Transfer the contents of the argument and annul the argument // Optionally validate the zone coverage. - void transfer(MeshedSurface<face>& surf, bool validate=false); + void transfer + ( + MeshedSurface<face>& surf, + bool validate=false + ); //- Update mesh based on the files saved in time directories virtual readUpdateState readUpdate(); @@ -309,11 +319,30 @@ public: // Fields + //- Create/store named zero field as face or point data + //- (template parameter). + // + // - Default is face-data (surfGeoMesh as template). + // - For point-data use surfPointGeoMesh as template. + // + // \return reference to the field + template<class Type, class GeoMeshType = surfGeoMesh> + DimensionedField<Type, GeoMeshType>& + newField + ( + const word& fieldName, + const dimensionSet& dims + ); + //- Copy/store named field as face or point data (template parameter). // - // Default is face-data (surfGeoMesh as template). + // - Default is face-data (surfGeoMesh as template). + // - For point-data use surfPointGeoMesh as template. + // + // \return reference to the field template<class Type, class GeoMeshType = surfGeoMesh> - void storeField + DimensionedField<Type, GeoMeshType>& + storeField ( const word& fieldName, const dimensionSet& dims, @@ -322,9 +351,13 @@ public: //- Move/store named field as face or point data (template parameter). // - // Default is face-data (surfGeoMesh as template). + // - Default is face-data (surfGeoMesh as template). + // - For point-data use surfPointGeoMesh as template. + // + // \return reference to the field template<class Type, class GeoMeshType = surfGeoMesh> - void storeField + DimensionedField<Type, GeoMeshType>& + storeField ( const word& fieldName, const dimensionSet& dims, diff --git a/src/surfMesh/surfMesh/surfMeshTemplates.C b/src/surfMesh/surfMesh/surfMeshTemplates.C index 6bb6576710c267edf390baeea79ef807448af69c..9ed9da405e55a26ab5587b6932017132d50513c9 100644 --- a/src/surfMesh/surfMesh/surfMeshTemplates.C +++ b/src/surfMesh/surfMesh/surfMeshTemplates.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,31 +31,74 @@ License // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class Type, class GeoMeshType> -void Foam::surfMesh::storeField +Foam::DimensionedField<Type, GeoMeshType>& +Foam::surfMesh::newField +( + const word& fieldName, + const dimensionSet& dims +) +{ + typedef DimensionedField<Type, GeoMeshType> fieldType; + + const objectRegistry& fieldDb = *this; + + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); + + if (fldptr) + { + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = Foam::zero{}; + } + else + { + fldptr = new fieldType + ( + fieldDb.newIOobject + ( + fieldName, + IOobjectOption::NO_READ, + IOobjectOption::NO_WRITE, + IOobjectOption::REGISTER + ), + *this, + Foam::zero{}, + dims + ); + + regIOobject::store(fldptr); + } + + return *fldptr; +} + + +template<class Type, class GeoMeshType> +Foam::DimensionedField<Type, GeoMeshType>& +Foam::surfMesh::storeField ( const word& fieldName, const dimensionSet& dims, const Field<Type>& values ) { + typedef DimensionedField<Type, GeoMeshType> fieldType; + const objectRegistry& fieldDb = *this; - auto* dimfield = - fieldDb.getObjectPtr<DimensionedField<Type, GeoMeshType>>(fieldName); + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); - if (dimfield) + if (fldptr) { - dimfield->dimensions().reset(dims); // Dimensions may have changed - dimfield->field() = values; + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = values; } else { - dimfield = new DimensionedField<Type, GeoMeshType> + fldptr = new fieldType ( - IOobject + fieldDb.newIOobject ( fieldName, - fieldDb, IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -65,37 +108,40 @@ void Foam::surfMesh::storeField values ); - dimfield->store(); + regIOobject::store(fldptr); } + + return *fldptr; } template<class Type, class GeoMeshType> -void Foam::surfMesh::storeField +Foam::DimensionedField<Type, GeoMeshType>& +Foam::surfMesh::storeField ( const word& fieldName, const dimensionSet& dims, Field<Type>&& values ) { + typedef DimensionedField<Type, GeoMeshType> fieldType; + const objectRegistry& fieldDb = *this; - auto* dimfield = - fieldDb.getObjectPtr<DimensionedField<Type, GeoMeshType>>(fieldName); + auto* fldptr = fieldDb.getObjectPtr<fieldType>(fieldName); - if (dimfield) + if (fldptr) { - dimfield->dimensions().reset(dims); // Dimensions may have changed - dimfield->field() = std::move(values); + fldptr->dimensions().reset(dims); // Dimensions may have changed + fldptr->field() = std::move(values); } else { - dimfield = new DimensionedField<Type, GeoMeshType> + fldptr = new fieldType ( - IOobject + fieldDb.newIOobject ( fieldName, - fieldDb, IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, IOobjectOption::REGISTER @@ -105,8 +151,10 @@ void Foam::surfMesh::storeField std::move(values) ); - dimfield->store(); + regIOobject::store(fldptr); } + + return *fldptr; } diff --git a/src/surfMesh/surfZone/surfZoneIOList.C b/src/surfMesh/surfZone/surfZoneIOList.C index b2567d286cad77963ee2b27718c1830b4fe29eab..c7cf0c73dc8bc4605d36dac33e45eeff45061f1e 100644 --- a/src/surfMesh/surfZone/surfZoneIOList.C +++ b/src/surfMesh/surfZone/surfZoneIOList.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -38,7 +38,7 @@ namespace Foam // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -bool Foam::surfZoneIOList::readContents() +bool Foam::surfZoneIOList::readIOcontents() { if ( @@ -96,7 +96,7 @@ Foam::surfZoneIOList::surfZoneIOList regIOobject(io), surfZoneList() { - readContents(); // allowOptionalRead = false + readIOcontents(); // allowOptionalRead = false } diff --git a/src/surfMesh/surfZone/surfZoneIOList.H b/src/surfMesh/surfZone/surfZoneIOList.H index 4ceb9237582c67cd1ee50c702f50eaf119f8c2be..1165fb1a3fd9d1da70f7b929a023c073ade5bff1 100644 --- a/src/surfMesh/surfZone/surfZoneIOList.H +++ b/src/surfMesh/surfZone/surfZoneIOList.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2018-2023 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,7 +60,7 @@ class surfZoneIOList //- Return true if contents were read //- (controlled by IOobject readOption flags). - bool readContents(); + bool readIOcontents(); public: diff --git a/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.C b/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.C index 849c920a9fadef2fc5204e7c67694cfc2c46b818..a58d42cbc282f6e73dc19b8292da0a4e33e2a24a 100644 --- a/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.C +++ b/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020-2022 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -177,18 +177,13 @@ bool Foam::fileFormats::ABAQUSsurfaceFormat<Face>::read // Extra safety if (newToOldZone.empty()) { - newToOldZone.resize(1, Zero); - } - - Map<label> oldToNewZone(2*newToOldZone.size()); - - forAll(newToOldZone, zonei) - { - oldToNewZone.set(newToOldZone[zonei], zonei); + newToOldZone.push_back(0); } wordList zoneNames(newToOldZone.size()); - labelList zoneSizes(newToOldZone.size(), Zero); + labelList zoneSizes(newToOldZone.size(), Foam::zero{}); + + Map<label> oldToNewZone(invertToMap(newToOldZone)); forAllConstIters(reader.elsetMap_, iter) { diff --git a/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.H b/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.H index 5ddbf34ad90c09d6e1850ddf7f2c5cee5e1c33e3..bc3aa4b37789de535dd022afa1b325d72346ae5c 100644 --- a/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/abaqus/ABAQUSsurfaceFormat.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,8 +40,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef ABAQUSsurfaceFormat_H -#define ABAQUSsurfaceFormat_H +#ifndef Foam_ABAQUSsurfaceFormat_H +#define Foam_ABAQUSsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -95,7 +95,7 @@ public: // Static Member Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in ABAQUS format static void write ( const fileName& filename, @@ -108,18 +108,27 @@ public: // Member Functions //- Read from file - virtual bool read + virtual bool read(const fileName& filename) override; + + //- Write surface mesh to file (by proxy) + virtual void write ( - const fileName& filename - ); + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/ac3d/AC3DsurfaceFormat.H b/src/surfMesh/surfaceFormats/ac3d/AC3DsurfaceFormat.H index bcde42a49eefad427c0213c5e7d56e1bacbb7f25..d738fe45c6a6cb566134276017acc05ad83c77a4 100644 --- a/src/surfMesh/surfaceFormats/ac3d/AC3DsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/ac3d/AC3DsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,8 +48,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef AC3DsurfaceFormat_H -#define AC3DsurfaceFormat_H +#ifndef Foam_AC3DsurfaceFormat_H +#define Foam_AC3DsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -78,7 +78,7 @@ public: // Constructors //- Construct from file name - AC3DsurfaceFormat(const fileName& filename); + explicit AC3DsurfaceFormat(const fileName& filename); //- Destructor @@ -109,15 +109,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/fire/FLMAsurfaceFormat.H b/src/surfMesh/surfaceFormats/fire/FLMAsurfaceFormat.H index 6247ad4dfbcb044a8a644dc299395d14eb16c955..c2c59cfdc5e0e106b4559354169805c9e82010e8 100644 --- a/src/surfMesh/surfaceFormats/fire/FLMAsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/fire/FLMAsurfaceFormat.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,8 +45,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef FLMAsurfaceFormat_H -#define FLMAsurfaceFormat_H +#ifndef Foam_FLMAsurfaceFormat_H +#define Foam_FLMAsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -79,14 +79,14 @@ protected: // Protected Member Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) static void write ( OSstream& os, const MeshedSurfaceProxy<Face>& surf ); - //- Write surface mesh components by proxy with/without compression + //- Write surface mesh components (by proxy) with/without compression static void write ( IOstreamOption::compressionType comp, @@ -109,7 +109,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) static void write ( const fileName& filename, @@ -121,13 +121,25 @@ public: // Member Functions - //- Write surface mesh as flma file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } @@ -157,7 +169,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) static void write ( const fileName& filename, @@ -169,13 +181,25 @@ public: // Member Functions - //- Write surface mesh as flmaz file + //- Write surface mesh as flmaz file (by proxy) + virtual void write + ( + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh as flmaz file (by proxy) virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/gts/GTSsurfaceFormat.H b/src/surfMesh/surfaceFormats/gts/GTSsurfaceFormat.H index 2b3303912ef667942dceedc2f949e5eccce2bcf3..c77d2ce8ac9d45f2b79cdc8062d5f7fc68df40cd 100644 --- a/src/surfMesh/surfaceFormats/gts/GTSsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/gts/GTSsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,8 +44,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef GTSsurfaceFormat_H -#define GTSsurfaceFormat_H +#ifndef Foam_GTSsurfaceFormat_H +#define Foam_GTSsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -79,7 +79,7 @@ public: // Constructors //- Construct from file name - GTSsurfaceFormat(const fileName& filename); + explicit GTSsurfaceFormat(const fileName& filename); //- Destructor @@ -110,7 +110,7 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; //- Write surface mesh to file virtual void write @@ -118,7 +118,19 @@ public: const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, *this, streamOpt, options); + } + + //- Write surface mesh to file + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, *this, streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.C b/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.C index fedf3f303d02bcd9a42ca62ac18e884ea28e5261..a836708018c58e5d643cc40f502f06363df0dc15 100644 --- a/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.C +++ b/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2015 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -193,7 +193,8 @@ bool Foam::fileFormats::NASsurfaceFormat<Face>::read if (line.starts_with("$ANSA_NAME")) { // Keep empty elements when splitting - const auto args = stringOps::split<std::string>(line, ';', true); + const auto args = + stringOps::split<std::string>(line, ';', 0, true); if (args.size() > 4 && line.starts_with("$ANSA_NAME_COMMENT")) { @@ -493,16 +494,11 @@ bool Foam::fileFormats::NASsurfaceFormat<Face>::read // Transfer to normal lists this->storedPoints().transfer(dynPoints); - pointId.shrink(); dynFaces.shrink(); // Build inverse mapping (NASTRAN pointId -> index) - Map<label> mapPointId; - mapPointId.reserve(pointId.size()); - for (const label pointi : pointId) - { - mapPointId.insert(pointi, mapPointId.size()); - } + Map<label> mapPointId(invertToMap(pointId)); + pointId.clearStorage(); // Relabel faces // ~~~~~~~~~~~~~ @@ -513,7 +509,6 @@ bool Foam::fileFormats::NASsurfaceFormat<Face>::read vert = mapPointId[vert]; } } - pointId.clearStorage(); mapPointId.clear(); DebugInfo diff --git a/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.H b/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.H index 780a2737677512253a9c9a5c56fd81c582d7368e..c7219e7597ab7756539f92b45e9e140b6a509a9c 100644 --- a/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/nas/NASsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -51,8 +51,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef NASsurfaceFormat_H -#define NASsurfaceFormat_H +#ifndef Foam_NASsurfaceFormat_H +#define Foam_NASsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -93,7 +93,7 @@ public: // Constructors //- Construct from file name - NASsurfaceFormat(const fileName& filename); + explicit NASsurfaceFormat(const fileName& filename); //- Destructor @@ -102,7 +102,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in NAS format static void write ( const fileName& filename, @@ -115,15 +115,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.C b/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.C index d471bd66aed9a4799e34f1bdfda6af2f3c1e6f6e..4fd5c08a5f133681f0d5f98ad91aaa00e81d5704 100644 --- a/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.C +++ b/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.C @@ -91,7 +91,7 @@ bool Foam::fileFormats::OBJsurfaceFormat<Face>::read line += this->getLineNoComment(is); } - const SubStrings<string> tokens = stringOps::splitSpace(line); + const auto tokens = stringOps::splitSpace(line); // Require command and some arguments if (tokens.size() < 2) diff --git a/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.H b/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.H index 80febb0c9a47bfcb7e64292f1ffa97b8bd7c9460..ef1f3eab3c1dc053d1f28c60e07e9d622d43e567 100644 --- a/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/obj/OBJsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -43,8 +43,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef OBJsurfaceFormat_H -#define OBJsurfaceFormat_H +#ifndef Foam_OBJsurfaceFormat_H +#define Foam_OBJsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -71,7 +71,7 @@ public: // Constructors //- Construct from file name - OBJsurfaceFormat(const fileName& filename); + explicit OBJsurfaceFormat(const fileName& filename); //- Destructor @@ -80,7 +80,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in OBJ format static void write ( const fileName& filename, @@ -93,15 +93,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/off/OFFsurfaceFormat.H b/src/surfMesh/surfaceFormats/off/OFFsurfaceFormat.H index b988b0f5a55438c6e66ab21e10aae300dc38b788..ced17ea6ce9096c1de505fcc5c03f646932b8551 100644 --- a/src/surfMesh/surfaceFormats/off/OFFsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/off/OFFsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -50,8 +50,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef OFFsurfaceFormat_H -#define OFFsurfaceFormat_H +#ifndef Foam_OFFsurfaceFormat_H +#define Foam_OFFsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -78,7 +78,7 @@ public: // Constructors //- Construct from file name - OFFsurfaceFormat(const fileName& filename); + explicit OFFsurfaceFormat(const fileName& filename); //- Destructor @@ -87,7 +87,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in OFF format static void write ( const fileName& filename, @@ -100,15 +100,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/smesh/SMESHsurfaceFormat.H b/src/surfMesh/surfaceFormats/smesh/SMESHsurfaceFormat.H index d99cd4e17de82a9329eda0e5c8c8a5f0ba5df40e..9f42e6ba2a514869cff1438a9d9543cf9c79fd70 100644 --- a/src/surfMesh/surfaceFormats/smesh/SMESHsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/smesh/SMESHsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,8 +45,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef SMESHsurfaceFormat_H -#define SMESHsurfaceFormat_H +#ifndef Foam_SMESHsurfaceFormat_H +#define Foam_SMESHsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -82,7 +82,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in SMESH format static void write ( const fileName& filename, @@ -94,13 +94,25 @@ public: // Member Functions - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.C b/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.C index 9c0ae4d63318a783d16a78f09373bd883be549f5..4b761f239bd1618188ce3681952f1b0872555bdd 100644 --- a/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.C +++ b/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2022 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -107,11 +107,7 @@ bool Foam::fileFormats::STARCDsurfaceFormat<Face>::read ); // Build inverse mapping (STARCD pointId -> index) - Map<label> mapPointId(2*pointId.size()); - forAll(pointId, i) - { - mapPointId.insert(pointId[i], i); - } + Map<label> mapPointId(invertToMap(pointId)); pointId.clear(); diff --git a/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.H b/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.H index c6384363539636ab149f1379505c905799997d79..fe94aa4b6ab5338748e8c28a778e0a87f7f4ecfe 100644 --- a/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/starcd/STARCDsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -47,8 +47,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef STARCDsurfaceFormat_H -#define STARCDsurfaceFormat_H +#ifndef Foam_STARCDsurfaceFormat_H +#define Foam_STARCDsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -88,7 +88,7 @@ public: // Constructors //- Construct from file name - STARCDsurfaceFormat(const fileName& filename); + explicit STARCDsurfaceFormat(const fileName& filename); //- Destructor @@ -110,15 +110,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/stl/STLsurfaceFormat.H b/src/surfMesh/surfaceFormats/stl/STLsurfaceFormat.H index b91bb1e849cc3ab5b0423df1fc80c235f5d26d49..aa67b6a0e0cde2d737cec904f21d165780f30f40 100644 --- a/src/surfMesh/surfaceFormats/stl/STLsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/stl/STLsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2021 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -44,8 +44,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef STLsurfaceFormat_H -#define STLsurfaceFormat_H +#ifndef Foam_STLsurfaceFormat_H +#define Foam_STLsurfaceFormat_H #include "STLReader.H" #include "MeshedSurface.H" @@ -94,7 +94,7 @@ public: // Constructors //- Construct from file name - STLsurfaceFormat(const fileName& filename); + explicit STLsurfaceFormat(const fileName& filename); //- Destructor @@ -133,8 +133,8 @@ public: const UnsortedMeshedSurface<Face>& surf ); - //- Write surface mesh components by proxy - // as ASCII or BINARY or dependent on the extension + //- Write surface mesh components (by proxy) in STL format + //- as ASCII or BINARY or dependent on the extension static void write ( const fileName& filename, @@ -154,8 +154,8 @@ public: ); - //- Write surface mesh components by proxy - // as ASCII or BINARY, depending on the extension + //- Write surface mesh components (by proxy) in STL format + //- as ASCII or BINARY, depending on the extension static void write ( const fileName& filename, @@ -165,7 +165,7 @@ public: ); //- Write UnsortedMeshedSurface - // as ASCII or BINARY, depending on the extension + //- as ASCII or BINARY, depending on the extension static void write ( const fileName& filename, @@ -178,15 +178,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, + const word& fileType, /* ignored */ IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/surfaceFormatsCore.C b/src/surfMesh/surfaceFormats/surfaceFormatsCore.C index 7b852cb3c1689fe9f201a0f395d29e220f6cb760..f95129a18eef4bd1c546965f076841e439c14ce0 100644 --- a/src/surfMesh/surfaceFormats/surfaceFormatsCore.C +++ b/src/surfMesh/surfaceFormats/surfaceFormatsCore.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,7 +30,7 @@ License #include "Time.H" #include "ListOps.H" #include "surfMesh.H" -#include "stringListOps.H" +#include "stringListOps.H" // For stringListOps::findMatching() // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/surfMesh/surfaceFormats/tri/TRIsurfaceFormat.H b/src/surfMesh/surfaceFormats/tri/TRIsurfaceFormat.H index c9a1661711bc3bff0ba5371f6d99c18975140f17..7db53a02d44c87746c06417a3b9aa5345c977926 100644 --- a/src/surfMesh/surfaceFormats/tri/TRIsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/tri/TRIsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -45,8 +45,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef TRIsurfaceFormat_H -#define TRIsurfaceFormat_H +#ifndef Foam_TRIsurfaceFormat_H +#define Foam_TRIsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -84,7 +84,7 @@ public: // Constructors //- Construct from file name - TRIsurfaceFormat(const fileName& filename); + explicit TRIsurfaceFormat(const fileName& filename); //- Destructor @@ -93,7 +93,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in TRI format static void write ( const fileName& filename, @@ -115,15 +115,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/vtk/VTKsurfaceFormat.H b/src/surfMesh/surfaceFormats/vtk/VTKsurfaceFormat.H index c32ea42e37645736fc6500380b3767b0b8cf09a0..b744499b86a62305a703a12e2d05860d60d6eeda 100644 --- a/src/surfMesh/surfaceFormats/vtk/VTKsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/vtk/VTKsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,8 +46,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef VTKsurfaceFormat_H -#define VTKsurfaceFormat_H +#ifndef Foam_VTKsurfaceFormat_H +#define Foam_VTKsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -86,7 +86,7 @@ public: // Constructors //- Construct from file name - VTKsurfaceFormat(const fileName& filename); + explicit VTKsurfaceFormat(const fileName& filename); //- Destructor @@ -95,7 +95,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in legacy VTK format static void write ( const fileName& filename, @@ -117,15 +117,27 @@ public: // Member Functions //- Read from file - virtual bool read(const fileName& filename); + virtual bool read(const fileName& filename) override; - //- Write meshed surface to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/vtp/VTPsurfaceFormat.H b/src/surfMesh/surfaceFormats/vtp/VTPsurfaceFormat.H index 2ab0e3490c33a1059d350275628bdba88f323bad..47438053f3ab9362254508b312650a69e238ae7d 100644 --- a/src/surfMesh/surfaceFormats/vtp/VTPsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/vtp/VTPsurfaceFormat.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -46,8 +46,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef VTPsurfaceFormat_H -#define VTPsurfaceFormat_H +#ifndef Foam_VTPsurfaceFormat_H +#define Foam_VTPsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -95,7 +95,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in VTP format static void write ( const fileName& filename, @@ -116,13 +116,25 @@ public: // Member Functions - //- Write meshed surface to a file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/surfaceFormats/x3d/X3DsurfaceFormat.H b/src/surfMesh/surfaceFormats/x3d/X3DsurfaceFormat.H index 735a6803b51d3d272276992a00d9de06d2508015..81b6b12b2b2b7e0047606222316b8e2300b57f9f 100644 --- a/src/surfMesh/surfaceFormats/x3d/X3DsurfaceFormat.H +++ b/src/surfMesh/surfaceFormats/x3d/X3DsurfaceFormat.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,8 +41,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef X3DsurfaceFormat_H -#define X3DsurfaceFormat_H +#ifndef Foam_X3DsurfaceFormat_H +#define Foam_X3DsurfaceFormat_H #include "MeshedSurface.H" #include "MeshedSurfaceProxy.H" @@ -80,7 +80,7 @@ public: // Static Functions - //- Write surface mesh components by proxy + //- Write surface mesh components (by proxy) in X3D format static void write ( const fileName& filename, @@ -92,13 +92,25 @@ public: // Member Functions - //- Write surface mesh to file + //- Write surface mesh to file (by proxy) virtual void write ( const fileName& name, IOstreamOption streamOpt = IOstreamOption(), const dictionary& options = dictionary::null - ) const + ) const override + { + write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); + } + + //- Write surface mesh to file (by proxy) + virtual void write + ( + const fileName& name, + const word& fileType, /* ignored */ + IOstreamOption streamOpt = IOstreamOption(), + const dictionary& options = dictionary::null + ) const override { write(name, MeshedSurfaceProxy<Face>(*this), streamOpt, options); } diff --git a/src/surfMesh/triSurface/fields/triSurfaceFieldsFwd.H b/src/surfMesh/triSurface/fields/triSurfaceFieldsFwd.H index 8cc9387ab20df3e540f9390a2a324fc079120bd5..b4bf8fee0194bc264b8003ca6541830d8c59cb67 100644 --- a/src/surfMesh/triSurface/fields/triSurfaceFieldsFwd.H +++ b/src/surfMesh/triSurface/fields/triSurfaceFieldsFwd.H @@ -45,22 +45,28 @@ template<class Type, class GeoMesh> class DimensionedField; class triSurfaceGeoMesh; // Typedefs -typedef Foam::DimensionedField<label, triSurfaceGeoMesh> +typedef + DimensionedField<label, triSurfaceGeoMesh> triSurfaceLabelField; -typedef Foam::DimensionedField<scalar, triSurfaceGeoMesh> +typedef + DimensionedField<scalar, triSurfaceGeoMesh> triSurfaceScalarField; -typedef Foam::DimensionedField<vector, triSurfaceGeoMesh> +typedef + DimensionedField<vector, triSurfaceGeoMesh> triSurfaceVectorField; -typedef Foam::DimensionedField<sphericalTensor, triSurfaceGeoMesh> +typedef + DimensionedField<sphericalTensor, triSurfaceGeoMesh> triSurfaceSphericalTensorField; -typedef Foam::DimensionedField<symmTensor, triSurfaceGeoMesh> +typedef + DimensionedField<symmTensor, triSurfaceGeoMesh> triSurfaceSymmTensorField; -typedef Foam::DimensionedField<tensor, triSurfaceGeoMesh> +typedef + DimensionedField<tensor, triSurfaceGeoMesh> triSurfaceTensorField; @@ -69,22 +75,28 @@ typedef Foam::DimensionedField<tensor, triSurfaceGeoMesh> class triSurfacePointGeoMesh; -typedef Foam::DimensionedField<label, triSurfacePointGeoMesh> +typedef + DimensionedField<label, triSurfacePointGeoMesh> triSurfacePointLabelField; -typedef Foam::DimensionedField<scalar, triSurfacePointGeoMesh> +typedef + DimensionedField<scalar, triSurfacePointGeoMesh> triSurfacePointScalarField; -typedef Foam::DimensionedField<vector, triSurfacePointGeoMesh> +typedef + DimensionedField<vector, triSurfacePointGeoMesh> triSurfacePointVectorField; -typedef Foam::DimensionedField<sphericalTensor, triSurfacePointGeoMesh> +typedef + DimensionedField<sphericalTensor, triSurfacePointGeoMesh> triSurfacePointSphericalTensorField; -typedef Foam::DimensionedField<symmTensor, triSurfacePointGeoMesh> +typedef + DimensionedField<symmTensor, triSurfacePointGeoMesh> triSurfacePointSymmTensorField; -typedef Foam::DimensionedField<tensor, triSurfacePointGeoMesh> +typedef + DimensionedField<tensor, triSurfacePointGeoMesh> triSurfacePointTensorField; diff --git a/src/surfMesh/triSurface/triSurface.C b/src/surfMesh/triSurface/triSurface.C index 984b995a7e9dc1d0d3a78231c7e46c368507c104..efb0c92a8ec66be472451626a9cf96b6b81e82e0 100644 --- a/src/surfMesh/triSurface/triSurface.C +++ b/src/surfMesh/triSurface/triSurface.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2016-2020 OpenCFD Ltd. + Copyright (C) 2016-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -31,6 +31,7 @@ License #include "surfZoneList.H" #include "MeshedSurface.H" #include "ListOps.H" +#include "stringListOps.H" // For stringListOps::findMatching() // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // diff --git a/src/surfMesh/writers/common/surfaceWriter.C b/src/surfMesh/writers/common/surfaceWriter.C index 2b412d9aaeaff99951795583f867c7e7e1929bc1..6658e542c930bb4d7eb460f231fe3f3fab6ac8fe 100644 --- a/src/surfMesh/writers/common/surfaceWriter.C +++ b/src/surfMesh/writers/common/surfaceWriter.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2019-2022 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -84,43 +84,31 @@ Foam::dictionary Foam::surfaceWriter::formatOptions Foam::autoPtr<Foam::surfaceWriter> -Foam::surfaceWriter::New(const word& writeType) +Foam::surfaceWriter::TryNew(const word& writeType) { - // Constructors without dictionary options - auto* ctorPtr = wordConstructorTable(writeType); - - if (!ctorPtr) + // Without dictionary options { - if (MeshedSurfaceProxy<face>::canWriteType(writeType)) + auto* ctorPtr = wordConstructorTable(writeType); + + if (ctorPtr) { - // Generally unknown, but handle via 'proxy' handler - return autoPtr<surfaceWriter> - ( - new surfaceWriters::proxyWriter(writeType) - ); + return autoPtr<surfaceWriter>(ctorPtr()); } - - FatalErrorInFunction - << "Unknown write type \"" << writeType << "\"\n\n" - << "Valid write types : " - << flatOutput(wordConstructorTablePtr_->sortedToc()) << nl - << "Valid proxy types : " - << MeshedSurfaceProxy<face>::writeTypes() << endl - << exit(FatalError); } - return autoPtr<surfaceWriter>(ctorPtr()); + // Fallback to proxy writer... + return surfaceWriters::proxyWriter::TryNew(writeType); } Foam::autoPtr<Foam::surfaceWriter> -Foam::surfaceWriter::New +Foam::surfaceWriter::TryNew ( const word& writeType, const dictionary& writeOpts ) { - // Constructors with dictionary options + // With dictionary options { auto* ctorPtr = wordDictConstructorTable(writeType); @@ -130,31 +118,68 @@ Foam::surfaceWriter::New } } - - // Constructors without dictionary options - auto* ctorPtr = wordConstructorTable(writeType); - - if (!ctorPtr) + // Without dictionary options { - if (MeshedSurfaceProxy<face>::canWriteType(writeType)) + auto* ctorPtr = wordConstructorTable(writeType); + + if (ctorPtr) { - // Generally unknown, but handle via 'proxy' handler - return autoPtr<surfaceWriter> - ( - new surfaceWriters::proxyWriter(writeType, writeOpts) - ); + return autoPtr<surfaceWriter>(ctorPtr()); } + } + + // Fallback to proxy writer... + return surfaceWriters::proxyWriter::TryNew(writeType, writeOpts); +} + + +Foam::autoPtr<Foam::surfaceWriter> +Foam::surfaceWriter::New(const word& writeType) +{ + autoPtr<surfaceWriter> writer + ( + surfaceWriter::TryNew(writeType) + ); + if (!writer) + { FatalErrorInFunction << "Unknown write type \"" << writeType << "\"\n\n" << "Valid write types : " - << wordConstructorTablePtr_->sortedToc() << nl + << flatOutput(wordConstructorTablePtr_->sortedToc()) << nl + << "Valid proxy types : " + << flatOutput(MeshedSurfaceProxy<face>::writeTypes()) << endl + << exit(FatalError); + } + + return writer; +} + + +Foam::autoPtr<Foam::surfaceWriter> +Foam::surfaceWriter::New +( + const word& writeType, + const dictionary& writeOpts +) +{ + autoPtr<surfaceWriter> writer + ( + surfaceWriter::TryNew(writeType, writeOpts) + ); + + if (!writer) + { + FatalErrorInFunction + << "Unknown write type \"" << writeType << "\"\n\n" + << "Valid write types : " + << flatOutput(wordConstructorTablePtr_->sortedToc()) << nl << "Valid proxy types : " - << MeshedSurfaceProxy<face>::writeTypes() << endl + << flatOutput(MeshedSurfaceProxy<face>::writeTypes()) << endl << exit(FatalError); } - return autoPtr<surfaceWriter>(ctorPtr()); + return writer; } @@ -687,7 +712,7 @@ Foam::tmp<Foam::Field<Type>> Foam::surfaceWriter::adjustFieldTemplate // Rotate fields (vector and non-spherical tensors) if ( - (pTraits<Type>::rank != 0 && pTraits<Type>::nComponents > 1) + (is_vectorspace<Type>::value && pTraits<Type>::nComponents > 1) && geometryTransform_.good() && !geometryTransform_.R().is_identity() ) diff --git a/src/surfMesh/writers/common/surfaceWriter.H b/src/surfMesh/writers/common/surfaceWriter.H index 94df1ee6591c03a4b420e9f96f9affcee4786ffd..d67c7b3f4f41e12122c042ac1d6558c91bab033b 100644 --- a/src/surfMesh/writers/common/surfaceWriter.H +++ b/src/surfMesh/writers/common/surfaceWriter.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2012 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -237,7 +237,7 @@ protected: const tmp<Field<Type>>& tfield ) const; -#undef declareSurfaceFieldMethod +#undef declareSurfaceFieldMethods #define declareSurfaceFieldMethods(Type) \ \ tmp<Field<Type>> mergeField(const Field<Type>& fld) const; \ @@ -326,16 +326,27 @@ public: ); - // Selectors + // Factory Methods / Selectors //- True if New is likely to succeed for this writeType static bool supportedType(const word& writeType); - //- Return a reference to the selected surfaceWriter + //- Optional select construct surfaceWriter. + // Return nullptr if the specified type is not supported. + static autoPtr<surfaceWriter> TryNew(const word& writeType); + + //- Optional select construct surfaceWriter with extra write options. + // Return nullptr if the specified type is not supported. + static autoPtr<surfaceWriter> TryNew + ( + const word& writeType, + const dictionary& writeOptions + ); + + //- Select construct a surfaceWriter static autoPtr<surfaceWriter> New(const word& writeType); - //- Return a reference to the selected surfaceWriter - // Select with extra write option + //- Select construct a surfaceWriter with extra write options. static autoPtr<surfaceWriter> New ( const word& writeType, diff --git a/src/surfMesh/writers/debug/debugSurfaceWriter.H b/src/surfMesh/writers/debug/debugSurfaceWriter.H index 239f4be28cef6dd44667535d88d271981644b301..bbe5c4fca6d44087ce291409471006d978314370 100644 --- a/src/surfMesh/writers/debug/debugSurfaceWriter.H +++ b/src/surfMesh/writers/debug/debugSurfaceWriter.H @@ -44,7 +44,7 @@ Description Format options: \table Property | Description | Required | Default - commsType | blocking/nonBlocking/scheduled | no | scheduled + commsType | scheduled/nonBlocking/buffered | no | scheduled merge | Enable geometry/field merging | no | true write | Write file(s) | no | false \endtable diff --git a/src/surfMesh/writers/ensight/ensightSurfaceWriterCollated.C b/src/surfMesh/writers/ensight/ensightSurfaceWriterCollated.C index 1d5595564ec992bcb34af0bf46ba573d0dbf1bdd..1cc730e25776578d15b3de0cf28541820a0a0838 100644 --- a/src/surfMesh/writers/ensight/ensightSurfaceWriterCollated.C +++ b/src/surfMesh/writers/ensight/ensightSurfaceWriterCollated.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2014 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -99,9 +99,9 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated if (UPstream::master() || !parallel_) { - if (!isDir(outputFile.path())) + if (!Foam::isDir(outputFile.path())) { - mkDir(outputFile.path()); + Foam::mkDir(outputFile.path()); } const bool stateChanged = @@ -138,7 +138,7 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated ); // As per mkdir -p "data/00000000" - mkDir(dataDir); + Foam::mkDir(dataDir); const fileName geomFile(baseDir/geometryName); @@ -151,7 +151,7 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated geomFile.name() ); - if (!exists(geomFile)) + if (!Foam::exists(geomFile)) { if (verbose_) { @@ -165,7 +165,9 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated geomFile.name(), caseOpts_.format() ); - part.write(osGeom); // serial + + osGeom.beginGeometry(); + part.write(osGeom); // serial } // Write field @@ -190,7 +192,12 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated // Update case file if (stateChanged) { - OFstream osCase(outputFile, IOstreamOption::ASCII); + OFstream osCase + ( + IOstreamOption::ATOMIC, + outputFile, + IOstreamOption::ASCII + ); ensightCase::setTimeFormat(osCase, caseOpts_); // time-format if (verbose_) @@ -236,7 +243,7 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated { const dictionary& subDict = dEntry.dict(); - const word varType(subDict.get<word>("type")); + const string varType(subDict.get<string>("type")); const word varName ( subDict.getOrDefault<word> @@ -247,7 +254,7 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeCollated ); osCase - << varType + << varType.c_str() << ( this->isPointData() diff --git a/src/surfMesh/writers/ensight/ensightSurfaceWriterUncollated.C b/src/surfMesh/writers/ensight/ensightSurfaceWriterUncollated.C index 27f5e9e6d51246acc9a415bfb9dd8499516175f8..f9cce2978f955c37c0cebbfa85cda5cad241eaa4 100644 --- a/src/surfMesh/writers/ensight/ensightSurfaceWriterUncollated.C +++ b/src/surfMesh/writers/ensight/ensightSurfaceWriterUncollated.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2014 OpenFOAM Foundation - Copyright (C) 2015-2023 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -64,11 +64,20 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeUncollated() if (UPstream::master() || !parallel_) { - if (!isDir(outputDir)) + if (!Foam::isDir(outputDir)) { - mkDir(outputDir); + Foam::mkDir(outputDir); } + // The geometry + ensightOutputSurface part + ( + surf.points(), + surf.faces(), + baseName + ); + + // Two-argument form for path-name to avoid validating outputDir ensightGeoFile osGeom ( outputDir, @@ -76,16 +85,16 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeUncollated() caseOpts_.format() ); - ensightOutputSurface part - ( - surf.points(), - surf.faces(), - osGeom.name().name() - ); - part.write(osGeom); // serial + osGeom.beginGeometry(); + part.write(osGeom); // serial // Update case file - OFstream osCase(outputFile, IOstreamOption::ASCII); + OFstream osCase + ( + IOstreamOption::ATOMIC, + outputFile, + IOstreamOption::ASCII + ); ensightCase::setTimeFormat(osCase, caseOpts_); // time-format osCase @@ -168,11 +177,19 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeUncollated if (UPstream::master() || !parallel_) { - if (!isDir(outputFile.path())) + if (!Foam::isDir(outputFile.path())) { - mkDir(outputFile.path()); + Foam::mkDir(outputFile.path()); } + // The geometry + ensightOutputSurface part + ( + surf.points(), + surf.faces(), + baseName + ); + // Two-argument form for path-name to avoid validating base-dir ensightGeoFile osGeom ( @@ -187,14 +204,8 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeUncollated caseOpts_.format() ); - // Ensight Geometry - ensightOutputSurface part - ( - surf.points(), - surf.faces(), - osGeom.name().name() - ); - part.write(osGeom); // serial + osGeom.beginGeometry(); + part.write(osGeom); // serial // Write field (serial) osField.write(ensightPTraits<Type>::typeName); @@ -204,7 +215,12 @@ Foam::fileName Foam::surfaceWriters::ensightWriter::writeUncollated // Update case file { - OFstream osCase(outputFile, IOstreamOption::ASCII); + OFstream osCase + ( + IOstreamOption::ATOMIC, + outputFile, + IOstreamOption::ASCII + ); ensightCase::setTimeFormat(osCase, caseOpts_); // time-format osCase diff --git a/src/surfMesh/writers/proxy/proxySurfaceWriter.C b/src/surfMesh/writers/proxy/proxySurfaceWriter.C index 9491b8c537c39d5a7d55f67023298c1217a8e03e..238985cada3a7ca99ff50df43844164129783bef 100644 --- a/src/surfMesh/writers/proxy/proxySurfaceWriter.C +++ b/src/surfMesh/writers/proxy/proxySurfaceWriter.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2015-2020 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -98,6 +98,36 @@ Foam::surfaceWriters::proxyWriter::proxyWriter } +// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // + +Foam::autoPtr<Foam::surfaceWriter> +Foam::surfaceWriters::proxyWriter::TryNew(const word& writeType) +{ + if (MeshedSurfaceProxy<face>::canWriteType(writeType)) + { + return autoPtr<surfaceWriter>(new proxyWriter(writeType)); + } + + return nullptr; +} + + +Foam::autoPtr<Foam::surfaceWriter> +Foam::surfaceWriters::proxyWriter::TryNew +( + const word& writeType, + const dictionary& writeOpts +) +{ + if (MeshedSurfaceProxy<face>::canWriteType(writeType)) + { + return autoPtr<surfaceWriter>(new proxyWriter(writeType, writeOpts)); + } + + return nullptr; +} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::fileName Foam::surfaceWriters::proxyWriter::write() diff --git a/src/surfMesh/writers/proxy/proxySurfaceWriter.H b/src/surfMesh/writers/proxy/proxySurfaceWriter.H index 2530352baf138e3c214e595971a24028641fa238..3a5b1040d84d130820e4b636244f0fbef9310cf7 100644 --- a/src/surfMesh/writers/proxy/proxySurfaceWriter.H +++ b/src/surfMesh/writers/proxy/proxySurfaceWriter.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011 OpenFOAM Foundation - Copyright (C) 2015-2022 OpenCFD Ltd. + Copyright (C) 2015-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -131,6 +131,21 @@ public: virtual ~proxyWriter() = default; + // Factory Methods + + //- Optional select construct proxy writer. + // Return nullptr if the specified type is not supported. + static autoPtr<surfaceWriter> TryNew(const word& writeType); + + //- Optional select construct proxy writer with extra write options. + // Return nullptr if the specified type is not supported. + static autoPtr<surfaceWriter> TryNew + ( + const word& writeType, + const dictionary& writeOptions + ); + + // Member Functions //- A separate file is required for geometry. diff --git a/src/thermoTools/derivedFvPatchFields/convectiveHeatTransfer/convectiveHeatTransferFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/convectiveHeatTransfer/convectiveHeatTransferFvPatchScalarField.H index 836ce9249bc9330eec92957c482ef0f58aebef28..9e7fcd048e5c59eaa673d9bcd312fc6e9e5e1837 100644 --- a/src/thermoTools/derivedFvPatchFields/convectiveHeatTransfer/convectiveHeatTransferFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/convectiveHeatTransfer/convectiveHeatTransferFvPatchScalarField.H @@ -143,15 +143,6 @@ public: const convectiveHeatTransferFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new convectiveHeatTransferFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference convectiveHeatTransferFvPatchScalarField ( @@ -159,16 +150,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new convectiveHeatTransferFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C b/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C index 9b186b78d0408e180344b6f67ec6dfda2ac4f83e..67f622f2ccf417b65799a3a8018513c906c72839 100644 --- a/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C +++ b/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C @@ -331,7 +331,7 @@ void Foam::externalWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() Q_->value(this->db().time().timeOutputValue()); refGrad() = (heatPower/gSum(patch().magSf()) + qr)/kappa(Tp); - refValue() = 0; + refValue() = 293.15; // prevents FPE, no impact on condition valueFraction() = 0; break; @@ -342,7 +342,7 @@ void Foam::externalWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() q_->value(this->db().time().timeOutputValue()); refGrad() = (heatFlux + qr)/kappa(Tp); - refValue() = 0; + refValue() = 293.15; // prevents FPE, no impact on condition valueFraction() = 0; break; diff --git a/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H index bad3c6db95c60a71b3af8c11b9ebc5009237d6b8..b711dbd2aefbe33b6946c9cec49b817295c9145e 100644 --- a/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H @@ -224,15 +224,6 @@ public: const externalWallHeatFluxTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new externalWallHeatFluxTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference externalWallHeatFluxTemperatureFvPatchScalarField ( @@ -240,16 +231,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new externalWallHeatFluxTemperatureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/fixedIncidentRadiation/fixedIncidentRadiationFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/fixedIncidentRadiation/fixedIncidentRadiationFvPatchScalarField.H index cb4aae6c51388dd1868c897be8d1595594062013..5ae31ccddd0bfe68d8cfd2c11ad3508e75b04f89 100644 --- a/src/thermoTools/derivedFvPatchFields/fixedIncidentRadiation/fixedIncidentRadiationFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/fixedIncidentRadiation/fixedIncidentRadiationFvPatchScalarField.H @@ -134,19 +134,6 @@ public: const fixedIncidentRadiationFvPatchScalarField& ); - - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedIncidentRadiationFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference fixedIncidentRadiationFvPatchScalarField ( @@ -154,27 +141,25 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedIncidentRadiationFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } // Member functions - - // Mapping functions + // Mapping functions //- Map (and resize as needed) from self given a mapping object virtual void autoMap(const fvPatchFieldMapper&); diff --git a/src/thermoTools/derivedFvPatchFields/humidityTemperatureCoupledMixed/humidityTemperatureCoupledMixedFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/humidityTemperatureCoupledMixed/humidityTemperatureCoupledMixedFvPatchScalarField.H index 64cfd0f070e94ee8c48b00842bf09007b9f13cfd..dba84d973bdf6b4278120217d86888128cf58159 100644 --- a/src/thermoTools/derivedFvPatchFields/humidityTemperatureCoupledMixed/humidityTemperatureCoupledMixedFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/humidityTemperatureCoupledMixed/humidityTemperatureCoupledMixedFvPatchScalarField.H @@ -332,18 +332,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new humidityTemperatureCoupledMixedFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference humidityTemperatureCoupledMixedFvPatchScalarField ( @@ -351,20 +339,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new humidityTemperatureCoupledMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/lumpedMassWallTemperature/lumpedMassWallTemperatureFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/lumpedMassWallTemperature/lumpedMassWallTemperatureFvPatchScalarField.H index c657b4cc72a366559ee242ad77945f0471bb276f..5d961e010c044df96f2f91707b34dfce813f4154 100644 --- a/src/thermoTools/derivedFvPatchFields/lumpedMassWallTemperature/lumpedMassWallTemperatureFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/lumpedMassWallTemperature/lumpedMassWallTemperatureFvPatchScalarField.H @@ -135,15 +135,6 @@ public: const lumpedMassWallTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new lumpedMassWallTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference lumpedMassWallTemperatureFvPatchScalarField ( @@ -151,16 +142,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new lumpedMassWallTemperatureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/outletMachNumberPressure/outletMachNumberPressureFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/outletMachNumberPressure/outletMachNumberPressureFvPatchScalarField.H index ea0a8ed59d61ce9bb2edd695e87fd67a4f1e89e3..ad4cf26abf189cc04f09f43b6d9961826b7b13e3 100644 --- a/src/thermoTools/derivedFvPatchFields/outletMachNumberPressure/outletMachNumberPressureFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/outletMachNumberPressure/outletMachNumberPressureFvPatchScalarField.H @@ -216,15 +216,6 @@ public: const outletMachNumberPressureFvPatchScalarField& tppsf ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new outletMachNumberPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference outletMachNumberPressureFvPatchScalarField ( @@ -232,16 +223,19 @@ public: const DimensionedField<scalar, volMesh>& iF ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new outletMachNumberPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H b/src/thermoTools/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H index 0640c2a39e5b3330c5c007ab89d91d338b7e55f7..844000f90497ed6d9e9497bcf502abe0716e3572 100644 --- a/src/thermoTools/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H +++ b/src/thermoTools/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H @@ -142,15 +142,6 @@ public: const outletMappedUniformInletHeatAdditionFvPatchField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new outletMappedUniformInletHeatAdditionFvPatchField(*this) - ); - } - //- Construct as copy setting internal field reference outletMappedUniformInletHeatAdditionFvPatchField ( @@ -158,16 +149,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new outletMappedUniformInletHeatAdditionFvPatchField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleMassFraction/semiPermeableBaffleMassFractionFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleMassFraction/semiPermeableBaffleMassFractionFvPatchScalarField.H index db2c6292bc6b1241a17f9d37f6f58fdc06bbbae2..58ae15b2c45d58499fe8ea79b567996aa5d12d79 100644 --- a/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleMassFraction/semiPermeableBaffleMassFractionFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleMassFraction/semiPermeableBaffleMassFractionFvPatchScalarField.H @@ -143,15 +143,6 @@ public: const semiPermeableBaffleMassFractionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new semiPermeableBaffleMassFractionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference semiPermeableBaffleMassFractionFvPatchScalarField ( @@ -159,20 +150,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new semiPermeableBaffleMassFractionFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleVelocity/semiPermeableBaffleVelocityFvPatchVectorField.H b/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleVelocity/semiPermeableBaffleVelocityFvPatchVectorField.H index 72824c12d8060d55beedd9eeb7b6a99012eefbe7..56e08da2f223cc7496e4683a927811a866379136 100644 --- a/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleVelocity/semiPermeableBaffleVelocityFvPatchVectorField.H +++ b/src/thermoTools/derivedFvPatchFields/semiPermeableBaffle/semiPermeableBaffleVelocity/semiPermeableBaffleVelocityFvPatchVectorField.H @@ -126,15 +126,6 @@ public: const semiPermeableBaffleVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new semiPermeableBaffleVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference semiPermeableBaffleVelocityFvPatchVectorField ( @@ -142,20 +133,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new semiPermeableBaffleVelocityFvPatchVectorField - ( - *this, - iF - ) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C b/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C index 6687c4a772726d77ed97ee9d8b430b39e85e4051..bb3532b43d3a525176c833e9f6fd352414a6cf35 100644 --- a/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C +++ b/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C @@ -253,11 +253,9 @@ baffleThickness() const nbrPatch.template lookupPatchField<volScalarField>(TName_) ); - tmp<scalarField> tthickness - ( - new scalarField(nbrField.baffleThickness()) - ); - scalarField& thickness = tthickness.ref(); + auto tthickness = tmp<scalarField>::New(nbrField.baffleThickness()); + auto& thickness = tthickness.ref(); + mapDist.distribute(thickness); return tthickness; } @@ -284,8 +282,9 @@ tmp<scalarField> thermalBaffle1DFvPatchScalarField<solidType>::qs() const nbrPatch.template lookupPatchField<volScalarField>(TName_) ); - tmp<scalarField> tqs(new scalarField(nbrField.qs())); - scalarField& qs = tqs.ref(); + auto tqs = tmp<scalarField>::New(nbrField.qs()); + auto& qs = tqs.ref(); + mapDist.distribute(qs); return tqs; } diff --git a/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H index 075b9dc26d6b9a70014cca2bc57e0605d786eb62..69c61b466e7eee6362e9e65c038409a7de4fee0a 100644 --- a/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H @@ -198,15 +198,6 @@ public: const thermalBaffle1DFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new thermalBaffle1DFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference thermalBaffle1DFvPatchScalarField ( @@ -214,16 +205,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new thermalBaffle1DFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/totalFlowRateAdvectiveDiffusive/totalFlowRateAdvectiveDiffusiveFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/totalFlowRateAdvectiveDiffusive/totalFlowRateAdvectiveDiffusiveFvPatchScalarField.H index 4a6faa495e00d90cfb7a6ff3fd400809c5dfe213..d59c2bda695838b5979af92f5c02ada526241346 100644 --- a/src/thermoTools/derivedFvPatchFields/totalFlowRateAdvectiveDiffusive/totalFlowRateAdvectiveDiffusiveFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/totalFlowRateAdvectiveDiffusive/totalFlowRateAdvectiveDiffusiveFvPatchScalarField.H @@ -107,16 +107,6 @@ public: const totalFlowRateAdvectiveDiffusiveFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new - totalFlowRateAdvectiveDiffusiveFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference totalFlowRateAdvectiveDiffusiveFvPatchScalarField ( @@ -124,28 +114,24 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new - totalFlowRateAdvectiveDiffusiveFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } // Member functions - - // Mapping functions //- Map (and resize as needed) from self given a mapping object diff --git a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C index 0c782f824cf8bbc1781b72bb8f008713d1ac668a..d2066bec6d8305de988dfbe273665061f3581121 100644 --- a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C +++ b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C @@ -433,20 +433,8 @@ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::coeffs << "which has more functionalities and it can handle " << "the assemble coupled option for energy. " << abort(FatalError); - /* - const label index(this->patch().index()); - const label nSubFaces(matrix.lduMesh().cellBoundMap()[mat][index].size()); - - Field<scalar> mapCoeffs(nSubFaces, Zero); - - label subFaceI = 0; - forAll(*this, faceI) - { - - } - */ - return tmp<Field<scalar>>(new Field<scalar>()); + return nullptr; } diff --git a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H index 7de8e9d7a3747577e1034bb0a134c96eb480be30..e4e621a55cd199ba4d4aa60fde6821f726410941 100644 --- a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H @@ -170,18 +170,6 @@ public: const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new turbulentTemperatureCoupledBaffleMixedFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference turbulentTemperatureCoupledBaffleMixedFvPatchScalarField ( @@ -189,20 +177,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentTemperatureCoupledBaffleMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.C b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.C index 2c10c551c84ba4a41b61606fc2327edce0271c9b..81b6f09f6857e67600c27c55b10626cbbf1e8e85 100644 --- a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.C +++ b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017-2023 OpenCFD Ltd. + Copyright (C) 2017-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -62,14 +62,15 @@ turbulentTemperatureRadCoupledMixedFvPatchScalarField::getOrCreateField ( fieldName, mesh.time().timeName(), - mesh, + mesh.thisDb(), IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimless, Zero) ); - mesh.objectRegistry::store(ptr); + regIOobject::store(ptr); } return *ptr; @@ -803,7 +804,7 @@ tmp<Field<scalar>> turbulentTemperatureRadCoupledMixedFvPatchScalarField::coeffs << "the assemble coupled option for energy. " << abort(FatalError); - return tmp<Field<scalar>>(new Field<scalar>()); + return nullptr; } diff --git a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.H index 44a721daa25bbcfd362deddcb10d64c8b7784358..0fc48788c6f54d22f9ec25099a80de4f913f82ba 100644 --- a/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.H @@ -270,18 +270,6 @@ public: const turbulentTemperatureRadCoupledMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new turbulentTemperatureRadCoupledMixedFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference turbulentTemperatureRadCoupledMixedFvPatchScalarField ( @@ -289,20 +277,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new turbulentTemperatureRadCoupledMixedFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H index 9a35d35a78b9ffbb2991ead7d16b33384c5308db..ed6a596d40f1bf9ac070ef503f2f12ecaead94e5 100644 --- a/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatJayatillekeWallFunction/alphatJayatillekeWallFunctionFvPatchScalarField.H @@ -171,15 +171,6 @@ public: const alphatJayatillekeWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatJayatillekeWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphatJayatillekeWallFunctionFvPatchScalarField ( @@ -187,20 +178,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatJayatillekeWallFunctionFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatWallFunction/alphatWallFunctionFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatWallFunction/alphatWallFunctionFvPatchScalarField.H index ae11c223a63631fae731417a943a88ab2c51bfe2..611c6ae15aae163ec39509f0d43a89bc9221b786 100644 --- a/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatWallFunction/alphatWallFunctionFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatWallFunction/alphatWallFunctionFvPatchScalarField.H @@ -146,15 +146,6 @@ public: const alphatWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphatWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphatWallFunctionFvPatchScalarField ( @@ -162,16 +153,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphatWallFunctionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/wallFunctions/sorptionWallFunction/sorptionWallFunctionFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/wallFunctions/sorptionWallFunction/sorptionWallFunctionFvPatchScalarField.H index bcc7c2522ea1f7c72101b5b0546d7ec93b93fc64..0f069a3df2335937c23b1adf4ab537bdcc65e5c3 100644 --- a/src/thermoTools/derivedFvPatchFields/wallFunctions/sorptionWallFunction/sorptionWallFunctionFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/wallFunctions/sorptionWallFunction/sorptionWallFunctionFvPatchScalarField.H @@ -251,15 +251,6 @@ public: const sorptionWallFunctionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new sorptionWallFunctionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference sorptionWallFunctionFvPatchScalarField ( @@ -267,20 +258,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new sorptionWallFunctionFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermoTools/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H b/src/thermoTools/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H index 356273dc7dce4d112f46c188e0dd7cb251310b31..09ffb7826c0c45b642c5b0fb351a723aaefac975 100644 --- a/src/thermoTools/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H +++ b/src/thermoTools/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H @@ -121,15 +121,6 @@ public: const wallHeatTransferFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new wallHeatTransferFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference wallHeatTransferFvPatchScalarField ( @@ -137,16 +128,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new wallHeatTransferFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/basicThermo/basicThermo.C b/src/thermophysicalModels/basic/basicThermo/basicThermo.C index e4bcf751c7c8ebccfd044f454bceddd344cc8ce7..f012c7a91416ef5aa99ed6e2eec0b846d7730192 100644 --- a/src/thermophysicalModels/basic/basicThermo/basicThermo.C +++ b/src/thermophysicalModels/basic/basicThermo/basicThermo.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -285,8 +285,9 @@ Foam::basicThermo::basicThermo phasePropertyName(dictName, phaseName), mesh.time().constant(), mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), @@ -303,11 +304,12 @@ Foam::basicThermo::basicThermo ( IOobject ( - phasePropertyName("thermo:alpha"), + phaseScopedName("thermo", "alpha"), mesh.time().timeName(), mesh, IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimensionSet(1, -1, -1, 0, 0), Zero) @@ -332,7 +334,8 @@ Foam::basicThermo::basicThermo mesh.time().constant(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), dict ), @@ -350,11 +353,12 @@ Foam::basicThermo::basicThermo ( IOobject ( - phasePropertyName("thermo:alpha"), + phaseScopedName("thermo", "alpha"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimensionSet(1, -1, -1, 0, 0), Zero) @@ -378,8 +382,9 @@ Foam::basicThermo::basicThermo dictionaryName, mesh.time().constant(), mesh, - IOobject::MUST_READ_IF_MODIFIED, - IOobject::NO_WRITE + IOobject::READ_MODIFIED, + IOobject::NO_WRITE, + IOobject::REGISTER ) ), @@ -396,11 +401,12 @@ Foam::basicThermo::basicThermo ( IOobject ( - phasePropertyName("thermo:alpha"), + phaseScopedName("thermo", "alpha"), mesh.time().timeName(), mesh, IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionedScalar(dimensionSet(1, -1, -1, 0, 0), Zero) diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C index c7bf081805382aa1d2d4bfbb058ba9593128a114..d2beacf925dd3e57022f22833eaff668b4f03879 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C @@ -66,7 +66,7 @@ Foam::energyJumpFvPatchScalarField::energyJumpFvPatchScalarField { if (!this->readValueEntry(dict)) { - evaluate(Pstream::commsTypes::blocking); + evaluate(Pstream::commsTypes::buffered); } } @@ -115,7 +115,7 @@ void Foam::energyJumpFvPatchScalarField::updateCoeffs() const_cast<fixedJumpFvPatchScalarField&>(TbPatch); // force update of jump - Tbp.evaluate(Pstream::commsTypes::blocking); + Tbp.evaluate(Pstream::commsTypes::buffered); const labelUList& faceCells = this->patch().faceCells(); diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.H index 86bd3df4ab59e0b80228d1c38558a3b2413eb7c8..674eebcfa8decb23447b755547d24d579e24715c 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.H +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.H @@ -100,15 +100,6 @@ public: const energyJumpFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new energyJumpFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference energyJumpFvPatchScalarField ( @@ -116,16 +107,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new energyJumpFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C index 8a55c2152dbd33ea68faff5a80c02c6561a6770b..d222d40dd8a1d30f2cce11ab94dc6a6d49aa17e3 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C @@ -66,7 +66,7 @@ Foam::energyJumpAMIFvPatchScalarField::energyJumpAMIFvPatchScalarField { if (!this->readValueEntry(dict)) { - evaluate(Pstream::commsTypes::blocking); + evaluate(Pstream::commsTypes::buffered); } } @@ -115,7 +115,7 @@ void Foam::energyJumpAMIFvPatchScalarField::updateCoeffs() const_cast<fixedJumpAMIFvPatchScalarField&>(TbPatch); // force update of jump - Tbp.evaluate(Pstream::commsTypes::blocking); + Tbp.evaluate(Pstream::commsTypes::buffered); const labelUList& faceCells = this->patch().faceCells(); diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.H index 8164adca40e4400b069036eb3d90f6cc9b1ae370..023632aaab88d4f0c58ab7e49923cb3725e47483 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.H +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.H @@ -100,15 +100,6 @@ public: const energyJumpAMIFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar>> clone() const - { - return tmp<fvPatchField<scalar>> - ( - new energyJumpAMIFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference energyJumpAMIFvPatchScalarField ( @@ -116,16 +107,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar>> - ( - new energyJumpAMIFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.H index 6f6572a40d7d81ae586b6695dc3495d361b1043e..86afb41ab817511ddd59632df1f939ff0e20e793 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.H +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.H @@ -108,15 +108,6 @@ public: const fixedEnergyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedEnergyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedEnergyFvPatchScalarField ( @@ -124,16 +115,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedEnergyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.H index bf84e88d0bbb821343c6a0d733cf7e371033771c..8e8c2a61dc7c471fbd23a72661e34e63e71dfa83 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.H +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.H @@ -123,15 +123,6 @@ public: const gradientEnergyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new gradientEnergyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference gradientEnergyFvPatchScalarField ( @@ -139,16 +130,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new gradientEnergyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.H index 918300f68f475e5237697670dd5e928d2d336081..e7b01cf743c4ad3c2db5dd1c4bce0c722a716709 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.H +++ b/src/thermophysicalModels/basic/derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.H @@ -99,15 +99,6 @@ public: const mixedEnergyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new mixedEnergyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference mixedEnergyFvPatchScalarField ( @@ -115,16 +106,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new mixedEnergyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/basic/heThermo/heThermo.C b/src/thermophysicalModels/basic/heThermo/heThermo.C index 78600ba69c587771b3cfeeeb4bceba0677df800d..40eb9b0705ac535531e0008c98d06e52d06ea2f4 100644 --- a/src/thermophysicalModels/basic/heThermo/heThermo.C +++ b/src/thermophysicalModels/basic/heThermo/heThermo.C @@ -218,25 +218,15 @@ Foam::tmp<Foam::volScalarField> Foam::heThermo<BasicThermo, MixtureType>::he { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> the + auto the = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "he", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - he_.dimensions() - ) + "he", + IOobject::NO_REGISTER, + mesh, + he_.dimensions() ); + auto& he = the.ref(); - volScalarField& he = the.ref(); scalarField& heCells = he.primitiveFieldRef(); const scalarField& pCells = p; const scalarField& TCells = T; @@ -274,8 +264,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::he const labelList& cells ) const { - tmp<scalarField> the(new scalarField(T.size())); - scalarField& he = the.ref(); + auto the = tmp<scalarField>::New(T.size()); + auto& he = the.ref(); forAll(T, celli) { @@ -294,8 +284,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::he const label patchi ) const { - tmp<scalarField> the(new scalarField(T.size())); - scalarField& he = the.ref(); + auto the = tmp<scalarField>::New(T.size()); + auto& he = the.ref(); forAll(T, facei) { @@ -313,25 +303,15 @@ Foam::heThermo<BasicThermo, MixtureType>::hc() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> thc + auto thc = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "hc", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - he_.dimensions() - ) + "hc", + IOobject::NO_REGISTER, + mesh, + he_.dimensions() ); + auto& hcf = thc.ref(); - volScalarField& hcf = thc.ref(); scalarField& hcCells = hcf.primitiveFieldRef(); forAll(hcCells, celli) @@ -363,8 +343,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::Cp const label patchi ) const { - tmp<scalarField> tCp(new scalarField(T.size())); - scalarField& cp = tCp.ref(); + auto tCp = tmp<scalarField>::New(T.size()); + auto& cp = tCp.ref(); forAll(T, facei) { @@ -404,25 +384,14 @@ Foam::heThermo<BasicThermo, MixtureType>::Cp() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tCp + auto tCp = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Cp", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimEnergy/dimMass/dimTemperature - ) + "Cp", + IOobject::NO_REGISTER, + mesh, + dimEnergy/dimMass/dimTemperature ); - - volScalarField& cp = tCp.ref(); + auto& cp = tCp.ref(); forAll(this->T_, celli) { @@ -458,8 +427,8 @@ Foam::heThermo<BasicThermo, MixtureType>::Cv const label patchi ) const { - tmp<scalarField> tCv(new scalarField(T.size())); - scalarField& cv = tCv.ref(); + auto tCv = tmp<scalarField>::New(T.size()); + auto& cv = tCv.ref(); forAll(T, facei) { @@ -499,25 +468,14 @@ Foam::heThermo<BasicThermo, MixtureType>::Cv() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tCv + auto tCv = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Cv", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimEnergy/dimMass/dimTemperature - ) + "Cv", + IOobject::NO_REGISTER, + mesh, + dimEnergy/dimMass/dimTemperature ); - - volScalarField& cv = tCv.ref(); + auto& cv = tCv.ref(); forAll(this->T_, celli) { @@ -549,8 +507,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::gamma const label patchi ) const { - tmp<scalarField> tgamma(new scalarField(T.size())); - scalarField& gamma = tgamma.ref(); + auto tgamma = tmp<scalarField>::New(T.size()); + auto& gamma = tgamma.ref(); forAll(T, facei) { @@ -568,25 +526,14 @@ Foam::heThermo<BasicThermo, MixtureType>::gamma() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tgamma + auto tgamma = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "gamma", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimless - ) + "gamma", + IOobject::NO_REGISTER, + mesh, + dimless ); - - volScalarField& gamma = tgamma.ref(); + auto& gamma = tgamma.ref(); forAll(this->T_, celli) { @@ -624,8 +571,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::Cpv const label patchi ) const { - tmp<scalarField> tCpv(new scalarField(T.size())); - scalarField& Cpv = tCpv.ref(); + auto tCpv = tmp<scalarField>::New(T.size()); + auto& Cpv = tCpv.ref(); forAll(T, facei) { @@ -643,25 +590,14 @@ Foam::heThermo<BasicThermo, MixtureType>::Cpv() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tCpv + auto tCpv = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Cpv", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimEnergy/dimMass/dimTemperature - ) + "Cpv", + IOobject::NO_REGISTER, + mesh, + dimEnergy/dimMass/dimTemperature ); - - volScalarField& Cpv = tCpv.ref(); + auto& Cpv = tCpv.ref(); forAll(this->T_, celli) { @@ -696,8 +632,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::CpByCpv const label patchi ) const { - tmp<scalarField> tCpByCpv(new scalarField(T.size())); - scalarField& CpByCpv = tCpByCpv.ref(); + auto tCpByCpv = tmp<scalarField>::New(T.size()); + auto& CpByCpv = tCpByCpv.ref(); forAll(T, facei) { @@ -715,25 +651,14 @@ Foam::heThermo<BasicThermo, MixtureType>::CpByCpv() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tCpByCpv + auto tCpByCpv = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "CpByCpv", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimless - ) + "CpByCpv", + IOobject::NO_REGISTER, + mesh, + dimless ); - - volScalarField& CpByCpv = tCpByCpv.ref(); + auto& CpByCpv = tCpByCpv.ref(); forAll(this->T_, celli) { @@ -776,8 +701,8 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::THE const labelList& cells ) const { - tmp<scalarField> tT(new scalarField(h.size())); - scalarField& T = tT.ref(); + auto tT = tmp<scalarField>::New(h.size()); + auto& T = tT.ref(); forAll(h, celli) { @@ -799,8 +724,9 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::THE ) const { - tmp<scalarField> tT(new scalarField(h.size())); - scalarField& T = tT.ref(); + auto tT = tmp<scalarField>::New(h.size()); + auto& T = tT.ref(); + forAll(h, facei) { T[facei] = this->patchFaceMixture @@ -821,25 +747,15 @@ Foam::tmp<Foam::volScalarField> Foam::heThermo<BasicThermo, MixtureType>::W { const fvMesh& mesh = this->T_.mesh(); - tmp<volScalarField> tW + auto tW = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "W", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh, - dimMass/dimMoles - ) + "W", + IOobject::NO_REGISTER, + mesh, + dimMass/dimMoles ); + auto& W = tW.ref(); - volScalarField& W = tW.ref(); scalarField& WCells = W.primitiveFieldRef(); forAll(WCells, celli) @@ -847,7 +763,7 @@ Foam::tmp<Foam::volScalarField> Foam::heThermo<BasicThermo, MixtureType>::W WCells[celli] = this->cellMixture(celli).W(); } - volScalarField::Boundary& WBf = W.boundaryFieldRef(); + auto& WBf = W.boundaryFieldRef(); forAll(WBf, patchi) { diff --git a/src/thermophysicalModels/basic/psiThermo/psiThermo.C b/src/thermophysicalModels/basic/psiThermo/psiThermo.C index 82e14feb19ee449c23d5ae84c669ad6892c1752c..871a795d683a73ef9631d2e8dca93b5bf2fe52a7 100644 --- a/src/thermophysicalModels/basic/psiThermo/psiThermo.C +++ b/src/thermophysicalModels/basic/psiThermo/psiThermo.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -48,11 +48,12 @@ Foam::psiThermo::psiThermo(const fvMesh& mesh, const word& phaseName) ( IOobject ( - phasePropertyName("thermo:psi"), + phaseScopedName("thermo", "psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(0, -2, 2, 0, 0) @@ -62,11 +63,12 @@ Foam::psiThermo::psiThermo(const fvMesh& mesh, const word& phaseName) ( IOobject ( - phasePropertyName("thermo:mu"), + phaseScopedName("thermo", "mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(1, -1, -1, 0, 0) @@ -87,11 +89,12 @@ Foam::psiThermo::psiThermo ( IOobject ( - phasePropertyName("thermo:psi"), + phaseScopedName("thermo", "psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(0, -2, 2, 0, 0) @@ -101,11 +104,12 @@ Foam::psiThermo::psiThermo ( IOobject ( - phasePropertyName("thermo:mu"), + phaseScopedName("thermo", "mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(1, -1, -1, 0, 0) diff --git a/src/thermophysicalModels/basic/rhoThermo/rhoThermo.C b/src/thermophysicalModels/basic/rhoThermo/rhoThermo.C index 9ce5a2bd59c8ccdbbb41f5e75b54e87a76e7204d..074cccfde8f83d418f8ad06a8e7b567fabc306b2 100644 --- a/src/thermophysicalModels/basic/rhoThermo/rhoThermo.C +++ b/src/thermophysicalModels/basic/rhoThermo/rhoThermo.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2017 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -47,11 +47,12 @@ Foam::rhoThermo::rhoThermo(const fvMesh& mesh, const word& phaseName) ( IOobject ( - phasePropertyName("thermo:rho"), + phaseScopedName("thermo", "rho"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimDensity @@ -61,11 +62,12 @@ Foam::rhoThermo::rhoThermo(const fvMesh& mesh, const word& phaseName) ( IOobject ( - phasePropertyName("thermo:psi"), + phaseScopedName("thermo", "psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(0, -2, 2, 0, 0) @@ -75,11 +77,12 @@ Foam::rhoThermo::rhoThermo(const fvMesh& mesh, const word& phaseName) ( IOobject ( - phasePropertyName("thermo:mu"), + phaseScopedName("thermo", "mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(1, -1, -1, 0, 0) @@ -99,11 +102,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:rho"), + phaseScopedName("thermo", "rho"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimDensity @@ -113,11 +117,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:psi"), + phaseScopedName("thermo", "psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(0, -2, 2, 0, 0) @@ -127,11 +132,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:mu"), + phaseScopedName("thermo", "mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(1, -1, -1, 0, 0) @@ -151,11 +157,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:rho"), + phaseScopedName("thermo", "rho"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimDensity @@ -165,11 +172,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:psi"), + phaseScopedName("thermo", "psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(0, -2, 2, 0, 0) @@ -179,11 +187,12 @@ Foam::rhoThermo::rhoThermo ( IOobject ( - phasePropertyName("thermo:mu"), + phaseScopedName("thermo", "mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::REGISTER ), mesh, dimensionSet(1, -1, -1, 0, 0) diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/StandardChemistryModel/StandardChemistryModel.C b/src/thermophysicalModels/chemistryModel/chemistryModel/StandardChemistryModel/StandardChemistryModel.C index a306b2dadd4ab51143fde7293cc0ae9d97dd347b..03e1160b6cef7c20754cac2e5a8446de3a726211 100644 --- a/src/thermophysicalModels/chemistryModel/chemistryModel/StandardChemistryModel/StandardChemistryModel.C +++ b/src/thermophysicalModels/chemistryModel/chemistryModel/StandardChemistryModel/StandardChemistryModel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2020-2021,2023 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -470,25 +470,14 @@ template<class ReactionThermo, class ThermoType> Foam::tmp<Foam::volScalarField> Foam::StandardChemistryModel<ReactionThermo, ThermoType>::tc() const { - tmp<volScalarField> ttc + auto ttc = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "tc", - this->time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh(), - dimensionedScalar(word::null, dimTime, SMALL), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + "tc", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(word::null, dimTime, SMALL), + fvPatchFieldBase::extrapolatedCalculatedType() ); - scalarField& tc = ttc.ref(); tmp<volScalarField> trho(this->thermo().rho()); @@ -544,22 +533,12 @@ template<class ReactionThermo, class ThermoType> Foam::tmp<Foam::volScalarField> Foam::StandardChemistryModel<ReactionThermo, ThermoType>::Qdot() const { - tmp<volScalarField> tQdot + auto tQdot = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Qdot", - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh_, - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + "Qdot", + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); if (this->chemistry_) @@ -592,24 +571,14 @@ Foam::StandardChemistryModel<ReactionThermo, ThermoType>::calculateRR scalar pf, cf, pr, cr; label lRef, rRef; - tmp<volScalarField::Internal> tRR + auto tRR = volScalarField::Internal::New ( - new volScalarField::Internal - ( - IOobject - ( - "RR", - this->mesh().time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - this->mesh(), - dimensionedScalar(dimMass/dimVolume/dimTime, Zero) - ) + "RR", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); - - volScalarField::Internal& RR = tRR.ref(); + auto& RR = tRR.ref(); tmp<volScalarField> trho(this->thermo().rho()); const scalarField& rho = trho(); diff --git a/src/thermophysicalModels/chemistryModel/functionObjects/BilgerMixtureFraction/BilgerMixtureFraction.C b/src/thermophysicalModels/chemistryModel/functionObjects/BilgerMixtureFraction/BilgerMixtureFraction.C index 3deae524453464023f2204b7b862461227c322c7..038a33451f4fb558111bbb8c3a0c848b3a1c9e27 100644 --- a/src/thermophysicalModels/chemistryModel/functionObjects/BilgerMixtureFraction/BilgerMixtureFraction.C +++ b/src/thermophysicalModels/chemistryModel/functionObjects/BilgerMixtureFraction/BilgerMixtureFraction.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2020 Thorsten Zirwes - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -68,7 +68,7 @@ void Foam::functionObjects::BilgerMixtureFraction::calcBilgerMixtureFraction() ( resultName_, mesh_.time().timeName(), - mesh_, + mesh_.thisDb(), IOobject::NO_READ, IOobject::NO_WRITE, IOobject::REGISTER @@ -76,7 +76,7 @@ void Foam::functionObjects::BilgerMixtureFraction::calcBilgerMixtureFraction() mesh_, dimensionedScalar(dimless, Zero) ); - mesh_.objectRegistry::store(resultPtr); + regIOobject::store(resultPtr); } auto& f_Bilger = *resultPtr; diff --git a/src/thermophysicalModels/laminarFlameSpeed/Gulders/Gulders.C b/src/thermophysicalModels/laminarFlameSpeed/Gulders/Gulders.C index d17d028d9ffdda4daa1d2e83dafd2cea625ce333..ddf47fb7f6ba8c9bab4fde946ae20909684cbb97 100644 --- a/src/thermophysicalModels/laminarFlameSpeed/Gulders/Gulders.C +++ b/src/thermophysicalModels/laminarFlameSpeed/Gulders/Gulders.C @@ -112,25 +112,14 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::Gulders::Su0pTphi scalar phi ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { @@ -165,25 +154,14 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::Gulders::Su0pTphi const volScalarField& phi ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { diff --git a/src/thermophysicalModels/laminarFlameSpeed/GuldersEGR/GuldersEGR.C b/src/thermophysicalModels/laminarFlameSpeed/GuldersEGR/GuldersEGR.C index f3478e80b32e5109f30b8e70c62e2f14b0091bbd..be2d86de4518ed2171e4b3501f94a525be1644bc 100644 --- a/src/thermophysicalModels/laminarFlameSpeed/GuldersEGR/GuldersEGR.C +++ b/src/thermophysicalModels/laminarFlameSpeed/GuldersEGR/GuldersEGR.C @@ -112,25 +112,14 @@ Foam::laminarFlameSpeedModels::GuldersEGR::Su0pTphi scalar phi ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { @@ -167,25 +156,14 @@ Foam::laminarFlameSpeedModels::GuldersEGR::Su0pTphi const volScalarField& egr ) const { - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { diff --git a/src/thermophysicalModels/laminarFlameSpeed/RaviPetersen/RaviPetersen.C b/src/thermophysicalModels/laminarFlameSpeed/RaviPetersen/RaviPetersen.C index ac4df025296e5e9f2594933068bedda172e13419..3f248fe4cc331fa8f003393a42ee57e6c4e6c3a8 100644 --- a/src/thermophysicalModels/laminarFlameSpeed/RaviPetersen/RaviPetersen.C +++ b/src/thermophysicalModels/laminarFlameSpeed/RaviPetersen/RaviPetersen.C @@ -295,15 +295,7 @@ Foam::laminarFlameSpeedModels::RaviPetersen::operator()() const volScalarField EqR ( - IOobject - ( - "EqR", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + p.db().newIOobject("EqR"), p.mesh(), dimensionedScalar(dimless, Zero) ); @@ -323,25 +315,14 @@ Foam::laminarFlameSpeedModels::RaviPetersen::operator()() const EqR = equivalenceRatio_; } - tmp<volScalarField> tSu0 + auto tSu0 = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - p.time().timeName(), - p.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - p.mesh(), - dimensionedScalar(dimVelocity, Zero) - ) + "Su0", + IOobject::NO_REGISTER, + p.mesh(), + dimensionedScalar(dimVelocity, Zero) ); - - volScalarField& Su0 = tSu0.ref(); + auto& Su0 = tSu0.ref(); forAll(Su0, celli) { diff --git a/src/thermophysicalModels/laminarFlameSpeed/constant/constant.C b/src/thermophysicalModels/laminarFlameSpeed/constant/constant.C index 2f0989102207220ff8e91b4998c140a505977834..351a7b9c32c22b3b2bd640ceaa255af9ce315f2a 100644 --- a/src/thermophysicalModels/laminarFlameSpeed/constant/constant.C +++ b/src/thermophysicalModels/laminarFlameSpeed/constant/constant.C @@ -71,22 +71,12 @@ Foam::laminarFlameSpeedModels::constant::~constant() Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::constant::operator()() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Su0", - psiuReactionThermo_.T().time().timeName(), - psiuReactionThermo_.T().db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - psiuReactionThermo_.T().mesh(), - Su_ - ) + "Su0", + IOobject::NO_REGISTER, + psiuReactionThermo_.T().mesh(), + Su_ ); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.C index 369f03cc6c0746b137eb17bdf46a0dffb3e875d9..6d0423954f9d69d52e02ae77ac45fd4f48dedca1 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.C +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.C @@ -139,7 +139,7 @@ void Foam::radiation::MarshakRadiationFvPatchScalarField::updateCoeffs() const tmp<scalarField> temissivity ( - boundaryRadiation.emissivity(patch().index()) + boundaryRadiation.emissivity(patch().index(), 0, nullptr, &Tp) ); const scalarField& emissivity = temissivity(); diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.H index 0f7e73da03dd01e2ce8208b1044dd1ada826417a..2fde200cf8087b7f0e80c852a5498984d4dfbb45 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiation/MarshakRadiationFvPatchScalarField.H @@ -127,15 +127,6 @@ public: const MarshakRadiationFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new MarshakRadiationFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference MarshakRadiationFvPatchScalarField ( @@ -143,16 +134,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new MarshakRadiationFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiationFixedTemperature/MarshakRadiationFixedTemperatureFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiationFixedTemperature/MarshakRadiationFixedTemperatureFvPatchScalarField.H index 71da65c388d5541956b6549dcc924e979437f25f..ea583586243c02120ff3db29edd9b073d7a177e9 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiationFixedTemperature/MarshakRadiationFixedTemperatureFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/MarshakRadiationFixedTemperature/MarshakRadiationFixedTemperatureFvPatchScalarField.H @@ -127,15 +127,6 @@ public: const MarshakRadiationFixedTemperatureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new MarshakRadiationFixedTemperatureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference MarshakRadiationFixedTemperatureFvPatchScalarField ( @@ -143,20 +134,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new MarshakRadiationFixedTemperatureFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C index 6bcfb8437fb33bbf195123cc04484dff576c4fbd..29c0f4a20c6cb0b8e994e847a8244dd45498553e 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C @@ -178,14 +178,14 @@ updateCoeffs() const tmp<scalarField> temissivity ( - boundaryRadiation.emissivity(patch().index()) + boundaryRadiation.emissivity(patch().index(), 0, nullptr, &Tp) ); const scalarField& emissivity = temissivity(); const tmp<scalarField> ttransmissivity ( - boundaryRadiation.transmissivity(patch().index()) + boundaryRadiation.transmissivity(patch().index(), 0, nullptr, &Tp) ); const scalarField& transmissivity = ttransmissivity(); diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.H index bab87648027691463a47c5649e3b74d4d6257a7a..c66e6fabbc6a8dfcaa444c305c8f1ce12f1977c4 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.H @@ -151,15 +151,6 @@ public: const greyDiffusiveRadiationMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new greyDiffusiveRadiationMixedFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference greyDiffusiveRadiationMixedFvPatchScalarField ( @@ -167,16 +158,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new greyDiffusiveRadiationMixedFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.C index 16ec7886561c4613357623db7de0c40b37cdee04..c5d3d5ff61c5d34895d3a1264d0dfa2a8f3b6a32 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.C +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.C @@ -158,7 +158,7 @@ updateCoeffs() Foam::tmp<Foam::scalarField> Foam::radiation:: greyDiffusiveViewFactorFixedValueFvPatchScalarField::qro(label bandI) const { - tmp<scalarField> tqrt(new scalarField(qro_)); + auto tqrt = tmp<scalarField>::New(qro_); const viewFactor& radiation = db().lookupObject<viewFactor>("radiationProperties"); diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.H index c99ce057cd073c0bdefe0e2310e146b809d5b008..b8cd2bfd7ca1d21ac53e11d908926bfcfe54d117 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveViewFactor/greyDiffusiveViewFactorFixedValueFvPatchScalarField.H @@ -125,15 +125,6 @@ public: const greyDiffusiveViewFactorFixedValueFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new greyDiffusiveViewFactorFixedValueFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference greyDiffusiveViewFactorFixedValueFvPatchScalarField ( @@ -141,20 +132,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new greyDiffusiveViewFactorFixedValueFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.C index d7485533589a30de249b90d09ad9ff2702c3654a..7b7f5c100c12509aa43ad718091b3df64f2adeeb 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.C +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.C @@ -449,7 +449,7 @@ void specularRadiationMixedFvPatchScalarField::write(Ostream& os) const { mixedFvPatchScalarField::write(os); os.writeEntryIfDifferent<bool>("interpolate", false, interpolate_); - this->writeEntry("value", os); + this->writeValueEntry(os); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.H index bc456ae4fe33ea185e74a5820c3807a2384b6e70..3fd12a61d78b2417781f96864cfc81903334674d 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/specularRadiation/specularRadiationMixedFvPatchScalarField.H @@ -169,15 +169,6 @@ public: const specularRadiationMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchField<scalar> > clone() const - { - return tmp<fvPatchField<scalar> > - ( - new specularRadiationMixedFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference specularRadiationMixedFvPatchScalarField ( @@ -185,16 +176,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchField<scalar> > clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchField<scalar> > - ( - new specularRadiationMixedFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C index 72486e7dbce82f4805a6915b4286a1fe893381e0..a021059e0599eed6558d70b6f6a77e3a80472d9c 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C @@ -167,15 +167,17 @@ updateCoeffs() boundaryRadiationProperties::New(internalField().mesh()); + const auto& Tp = radiation.T().boundaryField()[patchi]; + const tmp<scalarField> temissivity ( - boundaryRadiation.emissivity(patch().index(), lambdaId) + boundaryRadiation.emissivity(patchi, lambdaId, nullptr, &Tp) ); const scalarField& emissivity = temissivity(); const tmp<scalarField> ttransmissivity ( - boundaryRadiation.transmissivity(patch().index(), lambdaId) + boundaryRadiation.transmissivity(patchi, lambdaId, nullptr, &Tp) ); const scalarField& transmissivity = ttransmissivity(); @@ -217,7 +219,7 @@ updateCoeffs() const volScalarField& qSec = this->db().lookupObject<volScalarField>(qSecName); - Ir += qSec.boundaryField()[patch().index()]; + Ir += qSec.boundaryField()[patchi]; } } diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.H b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.H index 112aa9610fa9febc109d2dd685417bb0968ba020..baf4640efa7ba7bc827310af56753fea6ab729de 100644 --- a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.H +++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.H @@ -116,15 +116,6 @@ public: const wideBandDiffusiveRadiationMixedFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new wideBandDiffusiveRadiationMixedFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference wideBandDiffusiveRadiationMixedFvPatchScalarField ( @@ -132,23 +123,24 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new wideBandDiffusiveRadiationMixedFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } // Member functions - - // Evaluation functions //- Update the coefficients associated with the patch field diff --git a/src/thermophysicalModels/radiation/radiationModels/P1/P1.C b/src/thermophysicalModels/radiation/radiationModels/P1/P1.C index 4df1c317a5fdeaf1bfdaba78d103413564a06765..fa7214960d30f3815de0a4a011422785faf8aa0b 100644 --- a/src/thermophysicalModels/radiation/radiationModels/P1/P1.C +++ b/src/thermophysicalModels/radiation/radiationModels/P1/P1.C @@ -215,18 +215,13 @@ void Foam::radiation::P1::calculate() const dimensionedScalar a0("a0", a_.dimensions(), ROOTVSMALL); // Construct diffusion - const volScalarField gamma + const auto tgamma = volScalarField::New ( - IOobject - ( - "gammaRad", - G_.mesh().time().timeName(), - G_.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "gammaRad", + IOobject::REGISTER, // used by boundary conditions 1.0/(3.0*a_ + sigmaEff + a0) ); + const auto& gamma = tgamma(); // Solve G transport equation solve @@ -254,21 +249,11 @@ void Foam::radiation::P1::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::P1::Rp() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - 4.0*absorptionEmission_->eCont()*physicoChemical::sigma - ) + "Rp", + IOobject::NO_REGISTER, + 4.0*absorptionEmission_->eCont()*physicoChemical::sigma ); } diff --git a/src/thermophysicalModels/radiation/radiationModels/fvDOM/blackBodyEmission/blackBodyEmission.C b/src/thermophysicalModels/radiation/radiationModels/fvDOM/blackBodyEmission/blackBodyEmission.C index 0195a01d69172888b127d1db15c442ab305cdef4..753b7fc0cf9224dbc7eac9a0f2f3147cf9a8c825 100644 --- a/src/thermophysicalModels/radiation/radiationModels/fvDOM/blackBodyEmission/blackBodyEmission.C +++ b/src/thermophysicalModels/radiation/radiationModels/fvDOM/blackBodyEmission/blackBodyEmission.C @@ -201,21 +201,12 @@ Foam::radiation::blackBodyEmission::deltaLambdaT const Vector2D<scalar>& band ) const { - tmp<volScalarField> deltaLambdaT + auto deltaLambdaT = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "deltaLambdaT", - T.mesh().time().timeName(), - T.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - T.mesh(), - dimensionedScalar("deltaLambdaT", dimless, 1.0) - ) + "deltaLambdaT", + IOobject::NO_REGISTER, + T.mesh(), + dimensionedScalar("deltaLambdaT", dimless, 1.0) ); if (band != Vector2D<scalar>::one) @@ -239,20 +230,11 @@ Foam::radiation::blackBodyEmission::EbDeltaLambdaT const Vector2D<scalar>& band ) const { - tmp<volScalarField> Eb + auto Eb = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Eb", - T.mesh().time().timeName(), - T.mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - physicoChemical::sigma*pow4(T) - ) + "Eb", + IOobject::NO_REGISTER, + physicoChemical::sigma*pow4(T) ); if (band != Vector2D<scalar>::one) diff --git a/src/thermophysicalModels/radiation/radiationModels/fvDOM/fvDOM/fvDOM.C b/src/thermophysicalModels/radiation/radiationModels/fvDOM/fvDOM/fvDOM.C index e7aabf242ad24af8c75daca944e26059b3b61232..234489340e1fd9ba6aeb5ace24ee5e16910eba15 100644 --- a/src/thermophysicalModels/radiation/radiationModels/fvDOM/fvDOM/fvDOM.C +++ b/src/thermophysicalModels/radiation/radiationModels/fvDOM/fvDOM/fvDOM.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2018 OpenFOAM Foundation - Copyright (C) 2019-2021 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -356,7 +356,8 @@ Foam::radiation::fvDOM::fvDOM(const volScalarField& T) mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -369,7 +370,8 @@ Foam::radiation::fvDOM::fvDOM(const volScalarField& T) mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -395,7 +397,8 @@ Foam::radiation::fvDOM::fvDOM(const volScalarField& T) mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -462,7 +465,8 @@ Foam::radiation::fvDOM::fvDOM mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -475,7 +479,8 @@ Foam::radiation::fvDOM::fvDOM mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -501,7 +506,8 @@ Foam::radiation::fvDOM::fvDOM mesh_.time().timeName(), mesh_, IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -645,29 +651,18 @@ void Foam::radiation::fvDOM::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::fvDOM::Rp() const { // Construct using contribution from first frequency band - tmp<volScalarField> tRp + auto tRp = volScalarField::New ( - new volScalarField + "Rp", + IOobject::NO_REGISTER, ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - ( - 4 - *physicoChemical::sigma - *(aLambda_[0] - absorptionEmission_->aDisp(0)()) - *blackBody_.deltaLambdaT(T_, absorptionEmission_->bands(0)) - ) + 4 + * physicoChemical::sigma + * (aLambda_[0] - absorptionEmission_->aDisp(0)()) + * blackBody_.deltaLambdaT(T_, absorptionEmission_->bands(0)) ) ); - - volScalarField& Rp=tRp.ref(); + auto& Rp = tRp.ref(); // Add contributions over remaining frequency bands for (label j=1; j < nLambda_; j++) @@ -688,25 +683,14 @@ Foam::tmp<Foam::volScalarField> Foam::radiation::fvDOM::Rp() const Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::radiation::fvDOM::Ru() const { - tmp<DimensionedField<scalar, volMesh>> tRu + auto tRu = DimensionedField<scalar, volMesh>::New ( - new DimensionedField<scalar, volMesh> - ( - IOobject - ( - "Ru", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimensionSet(1, -1, -3, 0, 0), Zero) - ) + "Ru", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimensionSet(1, -1, -3, 0, 0), Zero) ); - - DimensionedField<scalar, volMesh>& Ru=tRu.ref(); + auto& Ru = tRu.ref(); // Sum contributions over all frequency bands for (label j=0; j < nLambda_; j++) diff --git a/src/thermophysicalModels/radiation/radiationModels/noRadiation/noRadiation.C b/src/thermophysicalModels/radiation/radiationModels/noRadiation/noRadiation.C index ec998448ed76b8b4b04377697aefe2528fdde0cc..ae93e29668eb0a02c01afc6653d589bb7006f917 100644 --- a/src/thermophysicalModels/radiation/radiationModels/noRadiation/noRadiation.C +++ b/src/thermophysicalModels/radiation/radiationModels/noRadiation/noRadiation.C @@ -82,16 +82,10 @@ void Foam::radiation::noRadiation::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::noRadiation::Rp() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "Rp", + IOobject::NO_REGISTER, mesh_, dimensionedScalar ( @@ -104,16 +98,10 @@ Foam::tmp<Foam::volScalarField> Foam::radiation::noRadiation::Rp() const Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::radiation::noRadiation::Ru() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - "Ru", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "Ru", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); diff --git a/src/thermophysicalModels/radiation/radiationModels/opaqueSolid/opaqueSolid.C b/src/thermophysicalModels/radiation/radiationModels/opaqueSolid/opaqueSolid.C index 4fd40720a2c0863e9db68b69dc80f9d59dc40563..b99907d232ac1a540f7a31b90e9032ade81915f1 100644 --- a/src/thermophysicalModels/radiation/radiationModels/opaqueSolid/opaqueSolid.C +++ b/src/thermophysicalModels/radiation/radiationModels/opaqueSolid/opaqueSolid.C @@ -83,16 +83,10 @@ void Foam::radiation::opaqueSolid::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::opaqueSolid::Rp() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "Rp", + IOobject::NO_REGISTER, mesh_, dimensionedScalar ( @@ -105,16 +99,10 @@ Foam::tmp<Foam::volScalarField> Foam::radiation::opaqueSolid::Rp() const Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::radiation::opaqueSolid::Ru() const { - return tmp<volScalarField::Internal>::New + return volScalarField::Internal::New ( - IOobject - ( - "Ru", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), + "Ru", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); @@ -126,4 +114,5 @@ Foam::label Foam::radiation::opaqueSolid::nBands() const return absorptionEmission_->nBands(); } + // ************************************************************************* // diff --git a/src/thermophysicalModels/radiation/radiationModels/radiationModel/radiationModel.H b/src/thermophysicalModels/radiation/radiationModels/radiationModel/radiationModel.H index a52350daad34c268db4f367075c848e8a95c5e48..cf730c0ce19054d0aa542b66a7d74f994a4b51aa 100644 --- a/src/thermophysicalModels/radiation/radiationModels/radiationModel/radiationModel.H +++ b/src/thermophysicalModels/radiation/radiationModels/radiationModel/radiationModel.H @@ -240,6 +240,9 @@ public: return radiation_; } + //- Return access to the temperature field + const volScalarField& T() const noexcept { return T_; } + //- Source term component (for power of T^4) virtual tmp<volScalarField> Rp() const = 0; diff --git a/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceReflecting/faceReflecting.C b/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceReflecting/faceReflecting.C index 0980bc0b7249d01cd767e23da7dde3606b6ddb84..32fa503e548ca5469a3caa62b63391b94d846513 100644 --- a/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceReflecting/faceReflecting.C +++ b/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceReflecting/faceReflecting.C @@ -58,7 +58,8 @@ void Foam::faceReflecting::initialise(const dictionary& coeffs) mesh_.time().timeName(), mesh_, IOobject::NO_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh_, dimensionedScalar(dimMass/pow3(dimTime), Zero) @@ -393,17 +394,8 @@ void Foam::faceReflecting::calculate() PtrList<List<scalarField>> patcha(patches.size()); forAll(patchr, patchi) { - patchr.set - ( - patchi, - new List<scalarField>(nBands) - ); - - patcha.set - ( - patchi, - new List<scalarField>(nBands) - ); + patchr.emplace_set(patchi, nBands); + patcha.emplace_set(patchi, nBands); } // Fill patchr diff --git a/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceShading/faceShading.C b/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceShading/faceShading.C index d415b9c03035db83e3f62ef2a5dd17a8521b870f..7310b71551b6866d49e9ff5d3c6a0b91963d9cd0 100644 --- a/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceShading/faceShading.C +++ b/src/thermophysicalModels/radiation/radiationModels/solarLoad/faceShading/faceShading.C @@ -214,22 +214,15 @@ void Foam::faceShading::calculate() if (debug) { - auto thitFaces = tmp<surfaceScalarField>::New + auto thitFaces = surfaceScalarField::New ( - IOobject - ( - "hitFaces", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "hitFaces", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); + auto& hitFaces = thitFaces.ref(); - surfaceScalarField& hitFaces = thitFaces.ref(); surfaceScalarField::Boundary& hitFacesBf = hitFaces.boundaryFieldRef(); hitFacesBf = 0.0; diff --git a/src/thermophysicalModels/radiation/radiationModels/solarLoad/solarLoad.C b/src/thermophysicalModels/radiation/radiationModels/solarLoad/solarLoad.C index ef13824206f26b8fa92731a62f54d868400b9a95..503a7489ce98957cf9713fada175232d8b02ea49 100644 --- a/src/thermophysicalModels/radiation/radiationModels/solarLoad/solarLoad.C +++ b/src/thermophysicalModels/radiation/radiationModels/solarLoad/solarLoad.C @@ -911,17 +911,10 @@ void Foam::radiation::solarLoad::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::solarLoad::Rp() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "Rp", + IOobject::NO_REGISTER, mesh_, dimensionedScalar ( diff --git a/src/thermophysicalModels/radiation/radiationModels/viewFactor/viewFactor.C b/src/thermophysicalModels/radiation/radiationModels/viewFactor/viewFactor.C index 63c0aa70af04e2bdfd8cc699db7491a5ea1035c0..d434b37a90ffe0efa8dc17d8aaacd1b625a4c598 100644 --- a/src/thermophysicalModels/radiation/radiationModels/viewFactor/viewFactor.C +++ b/src/thermophysicalModels/radiation/radiationModels/viewFactor/viewFactor.C @@ -738,14 +738,14 @@ void Foam::radiation::viewFactor::calculate() fvPatchScalarField& qrPatch = qrBf[patchID]; - greyDiffusiveViewFactorFixedValueFvPatchScalarField& qrp = + auto& qrp = refCast < greyDiffusiveViewFactorFixedValueFvPatchScalarField >(qrPatch); const tmp<scalarField> teb = - boundaryRadiation.emissivity(patchID, bandI); + boundaryRadiation.emissivity(patchID, bandI, nullptr, &Tp); const scalarField& eb = teb(); @@ -1133,17 +1133,10 @@ void Foam::radiation::viewFactor::calculate() Foam::tmp<Foam::volScalarField> Foam::radiation::viewFactor::Rp() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "Rp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "Rp", + IOobject::NO_REGISTER, mesh_, dimensionedScalar ( @@ -1156,17 +1149,10 @@ Foam::tmp<Foam::volScalarField> Foam::radiation::viewFactor::Rp() const Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::radiation::viewFactor::Ru() const { - return tmp<DimensionedField<scalar, volMesh>>::New + return DimensionedField<scalar, volMesh>::New ( - IOobject - ( - "Ru", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "Ru", + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/absorptionEmissionModel/absorptionEmissionModel.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/absorptionEmissionModel/absorptionEmissionModel.C index f9f78d2d2d40bafe410b9bece8b32f7b2c9dbd7b..10870b666034f7cac73df97a7ad40e848a8bd2b6 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/absorptionEmissionModel/absorptionEmissionModel.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/absorptionEmissionModel/absorptionEmissionModel.C @@ -69,22 +69,12 @@ Foam::radiation::absorptionEmissionModel::a(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::aCont(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "aCont", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "aCont", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); } @@ -92,22 +82,12 @@ Foam::radiation::absorptionEmissionModel::aCont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::aDisp(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "aDisp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "aDisp", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); } @@ -122,22 +102,12 @@ Foam::radiation::absorptionEmissionModel::e(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::eCont(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "eCont", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "eCont", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); } @@ -145,22 +115,12 @@ Foam::radiation::absorptionEmissionModel::eCont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::eDisp(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "eDisp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "eDisp", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); } @@ -175,22 +135,12 @@ Foam::radiation::absorptionEmissionModel::E(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::ECont(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "ECont", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "ECont", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); } @@ -198,22 +148,12 @@ Foam::radiation::absorptionEmissionModel::ECont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::absorptionEmissionModel::EDisp(const label bandI) const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "EDisp", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "EDisp", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); } diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/constantAbsorptionEmission/constantAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/constantAbsorptionEmission/constantAbsorptionEmission.C index c3f0af471af45e1dfbca85a1a9c7c3d96640c1cd..5d3642c10e17550d983b33474e83f3e60efaf67e 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/constantAbsorptionEmission/constantAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/constantAbsorptionEmission/constantAbsorptionEmission.C @@ -67,75 +67,39 @@ Foam::radiation::constantAbsorptionEmission::constantAbsorptionEmission Foam::tmp<Foam::volScalarField> Foam::radiation::constantAbsorptionEmission::aCont(const label bandI) const { - tmp<volScalarField> ta + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - a_ - ) + "a", + IOobject::NO_REGISTER, + mesh_, + a_ ); - - return ta; } Foam::tmp<Foam::volScalarField> Foam::radiation::constantAbsorptionEmission::eCont(const label bandI) const { - tmp<volScalarField> te + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "e", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - e_ - ) + "e", + IOobject::NO_REGISTER, + mesh_, + e_ ); - - return te; } Foam::tmp<Foam::volScalarField> Foam::radiation::constantAbsorptionEmission::ECont(const label bandI) const { - tmp<volScalarField> tE + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - E_ - ) + "E", + IOobject::NO_REGISTER, + mesh_, + E_ ); - - return tE; } diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanAbsorptionEmission/greyMeanAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanAbsorptionEmission/greyMeanAbsorptionEmission.C index 7aca57b9221db3ee3eb4e6ebc40d63d69aedd2ee..b226234969264b223f39e11e3008160a6af9a338 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanAbsorptionEmission/greyMeanAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanAbsorptionEmission/greyMeanAbsorptionEmission.C @@ -194,25 +194,15 @@ Foam::radiation::greyMeanAbsorptionEmission::aCont(const label bandI) const const volScalarField& p = thermo_.p(); - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "aCont" + name(bandI), - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimless/dimLength, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + "aCont" + name(bandI), + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimless/dimLength, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); - - scalarField& a = ta.ref().primitiveFieldRef(); + auto& a = ta.ref().primitiveFieldRef(); forAll(a, celli) { @@ -275,21 +265,12 @@ Foam::radiation::greyMeanAbsorptionEmission::eCont(const label bandI) const Foam::tmp<Foam::volScalarField> Foam::radiation::greyMeanAbsorptionEmission::ECont(const label bandI) const { - tmp<volScalarField> E + auto E = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "ECont" + name(bandI), - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "ECont" + name(bandI), + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); const volScalarField* QdotPtr = mesh_.findObject<volScalarField>("Qdot"); diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C index b4fc2fc425373d372ec62af733d5c2789de686dd..310ea6f2f2272233d19b99e3a4b24e7d31f53bc1 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C @@ -56,11 +56,11 @@ greyMeanSolidAbsorptionEmission::X(const word specie) const const volScalarField& T = thermo_.T(); const volScalarField& p = thermo_.p(); - tmp<scalarField> tXj(new scalarField(T.primitiveField().size(), Zero)); - scalarField& Xj = tXj.ref(); + auto tXj = tmp<scalarField>::New(T.primitiveField().size(), Zero); + auto& Xj = tXj.ref(); - tmp<scalarField> tRhoInv(new scalarField(T.primitiveField().size(), Zero)); - scalarField& rhoInv = tRhoInv.ref(); + auto tRhoInv = tmp<scalarField>::New(T.primitiveField().size(), Zero); + auto& rhoInv = tRhoInv.ref(); forAll(mixture_.Y(), specieI) { @@ -142,25 +142,15 @@ Foam::tmp<Foam::volScalarField> Foam::radiation::greyMeanSolidAbsorptionEmission:: calc(const label propertyId) const { - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimless/dimLength, Zero), - fvPatchFieldBase::extrapolatedCalculatedType() - ) + "a", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimless/dimLength, Zero), + fvPatchFieldBase::extrapolatedCalculatedType() ); - - scalarField& a = ta.ref().primitiveFieldRef(); + auto& a = ta.ref().primitiveFieldRef(); forAllConstIters(speciesNames_, iter) { @@ -194,4 +184,5 @@ Foam::radiation::greyMeanSolidAbsorptionEmission::aCont return calc(absorptivity); } + // ************************************************************************* // diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandAbsorptionEmission/multiBandAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandAbsorptionEmission/multiBandAbsorptionEmission.C index c7c3199f47ee2b6f8c8de19d6f2351254c172f3d..deb4da3b47d466ed803115cc870b67aa6acac3d8 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandAbsorptionEmission/multiBandAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandAbsorptionEmission/multiBandAbsorptionEmission.C @@ -81,24 +81,13 @@ Foam::radiation::multiBandAbsorptionEmission::aCont const label bandI ) const { - tmp<volScalarField> ta + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar("a", dimless/dimLength, absCoeffs_[bandI]) - ) + "a", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar("a", dimless/dimLength, absCoeffs_[bandI]) ); - - return ta; } @@ -108,24 +97,13 @@ Foam::radiation::multiBandAbsorptionEmission::eCont const label bandI ) const { - tmp<volScalarField> te + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "e", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar("e", dimless/dimLength, emiCoeffs_[bandI]) - ) + "e", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar("e", dimless/dimLength, emiCoeffs_[bandI]) ); - - return te; } @@ -135,24 +113,13 @@ Foam::radiation::multiBandAbsorptionEmission::ECont const label bandI ) const { - tmp<volScalarField> E + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "E", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); - - return E; } diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.C index b1fb235f0247eca0a62190653accce6c6d742f47..44a7171bb3d0bf6671362173aef1f97d1f517661 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.C @@ -61,8 +61,8 @@ multiBandZoneAbsorptionEmission emiCoeffs_(maxBands_), nBands_(0), zoneAbsorptivity_(), - zoneEmisivity_(), - zoneCells_() + zoneEmissivity_(), + zoneIds_() { coeffsDict_.readEntry("absorptivity", absCoeffs_); coeffsDict_.readEntry("emissivity", emiCoeffs_); @@ -71,11 +71,11 @@ multiBandZoneAbsorptionEmission const dictionary& zoneDict = coeffsDict_.subDict("zones"); zoneDict.readEntry("absorptivity", zoneAbsorptivity_); - zoneDict.readEntry("emissivity", zoneEmisivity_); + zoneDict.readEntry("emissivity", zoneEmissivity_); - zoneCells_.setSize(zoneAbsorptivity_.size(), -1); + zoneIds_.resize(zoneAbsorptivity_.size(), -1); - label i = 0; + label numZones = 0; forAllConstIters(zoneAbsorptivity_, iter) { label zoneID = mesh.cellZones().findZoneID(iter.key()); @@ -86,9 +86,10 @@ multiBandZoneAbsorptionEmission << "Valid cellZones are " << mesh.cellZones().names() << exit(FatalError); } - zoneCells_[i++] = zoneID; + zoneIds_[numZones] = zoneID; + ++numZones; } - + // zoneIds_.resize(numZones); } @@ -107,41 +108,26 @@ Foam::radiation::multiBandZoneAbsorptionEmission::aCont const label bandI ) const { - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar("a", dimless/dimLength, absCoeffs_[bandI]) - ) + "a", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar("a", dimless/dimLength, absCoeffs_[bandI]) ); + scalarField& a = ta.ref().primitiveFieldRef(); - volScalarField& a = ta.ref(); - - forAll(zoneCells_, zonei) + for (const label zonei : zoneIds_) { - const cellZone& cZone = mesh().cellZones()[zoneCells_[zonei]]; - - tmp<volScalarField> tzoneAbs(a*0.0); - volScalarField& zoneAbs = tzoneAbs.ref(); + const cellZone& zn = mesh().cellZones()[zonei]; + const auto iter = zoneAbsorptivity_.cfind(zn.name()); - const scalarList& abs = zoneAbsorptivity_.find(cZone.name())(); - - forAll(cZone, i) + if (iter.good()) // Check is redundant (cannot fail) { - label cellId = cZone[i]; - zoneAbs[cellId] = abs[bandI] - absCoeffs_[bandI]; - } + const scalarList& absorb = iter.val(); - a += zoneAbs; + UIndirectList<scalar>(a, zn) = absorb[bandI]; + } } return ta; @@ -154,43 +140,28 @@ Foam::radiation::multiBandZoneAbsorptionEmission::eCont const label bandI ) const { - tmp<volScalarField> te + auto te = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "e", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar("e", dimless/dimLength, emiCoeffs_[bandI]) - ) + "e", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar("e", dimless/dimLength, emiCoeffs_[bandI]) ); + scalarField& e = te.ref().primitiveFieldRef(); - volScalarField& e = te.ref(); - - forAll(zoneCells_, zonei) + for (const label zonei : zoneIds_) { - const cellZone& cZone = mesh().cellZones()[zoneCells_[zonei]]; - - tmp<volScalarField> tzoneEm(e*0.0); - volScalarField& zoneEm = tzoneEm.ref(); + const cellZone& zn = mesh().cellZones()[zonei]; + const auto iter = zoneEmissivity_.cfind(zn.name()); - const scalarList& emi = zoneEmisivity_.find(cZone.name())(); - - forAll(cZone, i) + if (iter.good()) // Check is redundant (cannot fail) { - label cellId = cZone[i]; - zoneEm[cellId] = emi[bandI] - emiCoeffs_[bandI]; + const scalarList& emit = iter.val(); + + UIndirectList<scalar>(e, zn) = emit[bandI]; } - e += zoneEm; } - return te; } @@ -201,24 +172,13 @@ Foam::radiation::multiBandZoneAbsorptionEmission::ECont const label bandI ) const { - tmp<volScalarField> E + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "E", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); - - return E; } diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.H b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.H index 35eb5e7a1bd16ab8f551ccb5d0a6756f259d960e..be139399444ea2fbd688776576e575a6c0a5432d 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.H +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/multiBandZoneAbsorptionEmission/multiBandZoneAbsorptionEmission.H @@ -86,11 +86,11 @@ private: //- Cell zones absorptivity HashTable<scalarList> zoneAbsorptivity_; - //- Cell zones emisivity - HashTable<scalarList> zoneEmisivity_; + //- Cell zones emissivity + HashTable<scalarList> zoneEmissivity_; - //- Cells for each zone - labelList zoneCells_; + //- The cellZones selected + labelList zoneIds_; diff --git a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/wideBandAbsorptionEmission/wideBandAbsorptionEmission.C b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/wideBandAbsorptionEmission/wideBandAbsorptionEmission.C index 084cd0284fa3e695b39bb43ea51935d0f68a90b5..3eb8adc9e59a37b3f7aa7d593663998a9512e981 100644 --- a/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/wideBandAbsorptionEmission/wideBandAbsorptionEmission.C +++ b/src/thermophysicalModels/radiation/submodels/absorptionEmissionModel/wideBandAbsorptionEmission/wideBandAbsorptionEmission.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2018 OpenFOAM Foundation - Copyright (C) 2020 OpenCFD Ltd. + Copyright (C) 2020-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -206,23 +206,13 @@ Foam::radiation::wideBandAbsorptionEmission::aCont(const label bandi) const const volScalarField& T = thermo_.T(); const volScalarField& p = thermo_.p(); - tmp<volScalarField> ta + auto ta = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "a", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimless/dimLength, Zero) - ) + "a", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimless/dimLength, Zero) ); - scalarField& a = ta.ref().primitiveFieldRef(); forAll(a, celli) @@ -290,21 +280,12 @@ Foam::radiation::wideBandAbsorptionEmission::eCont(const label bandi) const Foam::tmp<Foam::volScalarField> Foam::radiation::wideBandAbsorptionEmission::ECont(const label bandi) const { - tmp<volScalarField> E + auto E = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "E", - mesh().time().timeName(), - mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh(), - dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) - ) + "E", + IOobject::NO_REGISTER, + mesh(), + dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero) ); const volScalarField* QdotPtr = mesh().findObject<volScalarField>("Qdot"); diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.C b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.C index e6201ee327f4645eb9ff754b26b82441745b230c..c09039955f5c9016539ceea4db94d8db6f09ec35 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.C +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.C @@ -46,12 +46,8 @@ Foam::radiation::boundaryRadiationProperties::boundaryRadiationProperties const fvMesh& mesh ) : - MeshObject - < - fvMesh, - Foam::GeometricMeshObject, - boundaryRadiationProperties - >(mesh), + MeshObject_type(mesh), + radBoundaryPropertiesPtrList_(mesh.boundary().size()), radZonePropertiesPtrList_(mesh.faceZones().size()) { @@ -189,8 +185,8 @@ Foam::radiation::boundaryRadiationProperties::emissivity ( const label patchi, const label bandi, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { if (radBoundaryPropertiesPtrList_.set(patchi)) @@ -209,7 +205,7 @@ Foam::radiation::boundaryRadiationProperties::emissivity << "Please add it" << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } @@ -248,8 +244,8 @@ Foam::radiation::boundaryRadiationProperties::absorptivity ( const label patchi, const label bandi, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { if (radBoundaryPropertiesPtrList_.set(patchi)) @@ -262,13 +258,13 @@ Foam::radiation::boundaryRadiationProperties::absorptivity ); } - FatalErrorInFunction - << "Patch : " << mesh().boundaryMesh()[patchi].name() - << " is not found in the boundaryRadiationProperties. " - << "Please add it" - << exit(FatalError); + FatalErrorInFunction + << "Patch : " << mesh().boundaryMesh()[patchi].name() + << " is not found in the boundaryRadiationProperties. " + << "Please add it" + << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } @@ -307,8 +303,8 @@ Foam::radiation::boundaryRadiationProperties::transmissivity ( const label patchi, const label bandi, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { if (radBoundaryPropertiesPtrList_.set(patchi)) @@ -327,7 +323,7 @@ Foam::radiation::boundaryRadiationProperties::transmissivity << "Please add it" << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } @@ -389,12 +385,12 @@ Foam::radiation::boundaryRadiationProperties::zoneTransmissivity } FatalErrorInFunction - << "Zone : " << mesh().faceZones()[zonei].name() - << " is not found in the boundaryRadiationProperties. " - << "Please add it" - << exit(FatalError); + << "Zone : " << mesh().faceZones()[zonei].name() + << " is not found in the boundaryRadiationProperties. " + << "Please add it" + << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } @@ -403,8 +399,8 @@ Foam::radiation::boundaryRadiationProperties::diffReflectivity ( const label patchi, const label bandi, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { if (radBoundaryPropertiesPtrList_.set(patchi)) @@ -423,7 +419,7 @@ Foam::radiation::boundaryRadiationProperties::diffReflectivity << "Please add it" << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } @@ -462,8 +458,8 @@ Foam::radiation::boundaryRadiationProperties::specReflectivity ( const label patchi, const label bandi, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { if (radBoundaryPropertiesPtrList_.set(patchi)) @@ -482,7 +478,7 @@ Foam::radiation::boundaryRadiationProperties::specReflectivity << "Please add it" << exit(FatalError); - return tmp<scalarField>::New(); + return nullptr; } diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.H index 69dd3973d5b4d2640222e149043adfc330a202a2..d9edda9b6380368465ef9d1997e59cb2a12adf76 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationProperties.H @@ -34,8 +34,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef boundaryRadiationProperties_H -#define boundaryRadiationProperties_H +#ifndef Foam_boundaryRadiationProperties_H +#define Foam_boundaryRadiationProperties_H #include "MeshObject.H" #include "boundaryRadiationPropertiesPatch.H" @@ -45,6 +45,7 @@ SourceFiles namespace Foam { +// Forward Declarations class fvMesh; namespace radiation @@ -59,10 +60,20 @@ class boundaryRadiationProperties public MeshObject < fvMesh, - Foam::GeometricMeshObject, + GeometricMeshObject, boundaryRadiationProperties > { + // Private Typedefs + + typedef MeshObject + < + fvMesh, + GeometricMeshObject, + boundaryRadiationProperties + > MeshObject_type; + + // Private Data //- Per patch the boundaryRadiationProperties @@ -83,7 +94,7 @@ public: // Constructors //- Construct given fvMesh - explicit boundaryRadiationProperties(const fvMesh&); + explicit boundaryRadiationProperties(const fvMesh& mesh); // Member Functions @@ -109,8 +120,8 @@ public: ( const label patchI, const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Access boundary emissivity on face @@ -128,8 +139,8 @@ public: ( const label patchI, const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Access boundary absorptivity on face @@ -147,8 +158,8 @@ public: ( const label patchI, const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Access boundary transmissivity on face @@ -180,8 +191,8 @@ public: ( const label patchI, const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Access boundary diffuse reflectivity on face @@ -199,8 +210,8 @@ public: ( const label patchI, const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Access boundary specular reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationPropertiesPatch.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationPropertiesPatch.H index afb1078a43a343705e223363ccc46808e2b28063..af109dfded72f58433a5ee0d6b427371c6a7d53b 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationPropertiesPatch.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/boundaryRadiationPropertiesPatch.H @@ -33,8 +33,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef boundaryRadiationPropertiesPatch_H -#define boundaryRadiationPropertiesPatch_H +#ifndef Foam_radiation_boundaryRadiationPropertiesPatch_H +#define Foam_radiation_boundaryRadiationPropertiesPatch_H #include "scalarField.H" #include "Enum.H" @@ -138,8 +138,8 @@ public: virtual tmp<scalarField> e ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return emissivity on face @@ -155,8 +155,8 @@ public: virtual tmp<scalarField> a ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return absorptivity on face @@ -172,8 +172,8 @@ public: virtual tmp<scalarField> t ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return transmissivity on face @@ -189,8 +189,8 @@ public: virtual tmp<scalarField> rSpec ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return specular reflectivity on face @@ -206,8 +206,8 @@ public: virtual tmp<scalarField> rDiff ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return diffusive reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.C b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.C index 0c2570035fe8494e26fc2e05b0008c01cb9a8cbe..bd19db5bf7649c2111d232b4f79794b4a8a4747e 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.C +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.C @@ -64,8 +64,8 @@ Foam::radiation::lookup::lookup Foam::tmp<Foam::scalarField> Foam::radiation::lookup::e ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New @@ -88,12 +88,11 @@ Foam::scalar Foam::radiation::lookup::e } -Foam::tmp<Foam::scalarField> -Foam::radiation::lookup::a +Foam::tmp<Foam::scalarField> Foam::radiation::lookup::a ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New @@ -119,8 +118,8 @@ Foam::scalar Foam::radiation::lookup::a Foam::tmp<Foam::scalarField> Foam::radiation::lookup::t ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New @@ -143,12 +142,11 @@ Foam::scalar Foam::radiation::lookup::t } -Foam::tmp<Foam::scalarField> -Foam::radiation::lookup::rSpec +Foam::tmp<Foam::scalarField> Foam::radiation::lookup::rSpec ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); @@ -167,12 +165,11 @@ Foam::scalar Foam::radiation::lookup::rSpec } -Foam::tmp<Foam::scalarField> -Foam::radiation::lookup::rDiff +Foam::tmp<Foam::scalarField> Foam::radiation::lookup::rDiff ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.H index a2946714d229888036851ca3553999f6b95484dc..8bf5fdda4ac9b725976bc7ca4683da4057588653 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/lookup/lookup.H @@ -45,8 +45,8 @@ Usage \*---------------------------------------------------------------------------*/ -#ifndef lookup_H -#define lookup_H +#ifndef Foam_radiation_lookup_H +#define Foam_radiation_lookup_H #include "boundaryRadiationPropertiesPatch.H" @@ -97,8 +97,8 @@ public: virtual tmp<scalarField> e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return emissivity on face @@ -114,8 +114,8 @@ public: virtual tmp<scalarField> a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return absorptivity on face @@ -131,8 +131,8 @@ public: virtual tmp<scalarField> t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return transmissivity on face (default: 0) @@ -148,8 +148,8 @@ public: virtual tmp<scalarField> rSpec ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return specular reflectivity on face @@ -165,8 +165,8 @@ public: virtual tmp<scalarField> rDiff ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return diffusive reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.C b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.C index bc7deb448357c0b0f0af3396ed9b67cdf454ea7f..96549cc9d7b7e4779d9ab1b11097ca4b2e0ed052 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.C +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.C @@ -71,8 +71,8 @@ Foam::radiation::opaqueDiffusive::opaqueDiffusive Foam::tmp<Foam::scalarField> Foam::radiation::opaqueDiffusive::e ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->e(bandI, dir, T)); @@ -91,12 +91,11 @@ Foam::scalar Foam::radiation::opaqueDiffusive::e } -Foam::tmp<Foam::scalarField> -Foam::radiation::opaqueDiffusive::a +Foam::tmp<Foam::scalarField> Foam::radiation::opaqueDiffusive::a ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->a(bandI, dir, T)); @@ -118,8 +117,8 @@ Foam::scalar Foam::radiation::opaqueDiffusive::a Foam::tmp<Foam::scalarField> Foam::radiation::opaqueDiffusive::t ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), 0.0); @@ -138,12 +137,11 @@ Foam::scalar Foam::radiation::opaqueDiffusive::t } -Foam::tmp<Foam::scalarField> -Foam::radiation::opaqueDiffusive::rSpec +Foam::tmp<Foam::scalarField> Foam::radiation::opaqueDiffusive::rSpec ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); @@ -165,8 +163,8 @@ Foam::scalar Foam::radiation::opaqueDiffusive::rSpec Foam::tmp<Foam::scalarField> Foam::radiation::opaqueDiffusive::rDiff ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.H index 328bb7e38436433e341f3078ef3df6817501a708..ddca6eb2eeb40c4ef3cbff3281f554e23c2e8a41 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueDiffusive/opaqueDiffusive.H @@ -46,8 +46,8 @@ Usage \*---------------------------------------------------------------------------*/ -#ifndef opaqueDiffusive_H -#define opaqueDiffusive_H +#ifndef Foam_radiation_opaqueDiffusive_H +#define Foam_radiation_opaqueDiffusive_H #include "boundaryRadiationPropertiesPatch.H" @@ -96,8 +96,8 @@ public: virtual tmp<scalarField> e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return emissivity on face @@ -113,8 +113,8 @@ public: virtual tmp<scalarField> a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return absorptivity on face @@ -130,8 +130,8 @@ public: virtual tmp<scalarField> t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return transmissivity on face @@ -147,8 +147,8 @@ public: virtual tmp<scalarField> rSpec ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return specular reflectivity on face @@ -164,8 +164,8 @@ public: virtual tmp<scalarField> rDiff ( const label bandI, - vectorField* incomingDirection , - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return diffusive reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.C b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.C index d45d441cc64c18360ccbae0bb6bb7070358349d7..253bfe3a997bf6c74e3ff7f9b3981e24630722d4 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.C +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.C @@ -72,8 +72,8 @@ Foam::radiation::opaqueReflective::opaqueReflective Foam::tmp<Foam::scalarField> Foam::radiation::opaqueReflective::e ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->e(bandI, dir, T)); @@ -92,12 +92,11 @@ Foam::scalar Foam::radiation::opaqueReflective::e } -Foam::tmp<Foam::scalarField> -Foam::radiation::opaqueReflective::a +Foam::tmp<Foam::scalarField> Foam::radiation::opaqueReflective::a ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->a(bandI, dir, T)); @@ -119,8 +118,8 @@ Foam::scalar Foam::radiation::opaqueReflective::a Foam::tmp<Foam::scalarField> Foam::radiation::opaqueReflective::t ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); @@ -139,12 +138,11 @@ Foam::scalar Foam::radiation::opaqueReflective::t } -Foam::tmp<Foam::scalarField> -Foam::radiation::opaqueReflective::rSpec +Foam::tmp<Foam::scalarField> Foam::radiation::opaqueReflective::rSpec ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return (1.0 - fd_)*(1.0 - a(bandI, dir, T)); @@ -163,12 +161,11 @@ Foam::scalar Foam::radiation::opaqueReflective::rSpec } -Foam::tmp<Foam::scalarField> -Foam::radiation::opaqueReflective::rDiff +Foam::tmp<Foam::scalarField> Foam::radiation::opaqueReflective::rDiff ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return fd_*(1.0 - a(bandI, dir, T)); diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.H index 655c3b3d7bb7798e1c54bd9a5c93b49ff853c2d4..22f06301d8026309470294bdec87c3f6005cb548 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/opaqueReflective/opaqueReflective.H @@ -54,8 +54,8 @@ Usage \*---------------------------------------------------------------------------*/ -#ifndef opaqueReflective_H -#define opaqueReflective_H +#ifndef Foam_radiation_opaqueReflective_H +#define Foam_radiation_opaqueReflective_H #include "boundaryRadiationPropertiesPatch.H" @@ -106,8 +106,8 @@ public: virtual tmp<scalarField> e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return emissivity on face @@ -123,8 +123,8 @@ public: virtual tmp<scalarField> a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return absorptivity on face @@ -140,8 +140,8 @@ public: virtual tmp<scalarField> t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return transmissivity on face @@ -157,8 +157,8 @@ public: virtual tmp<scalarField> rSpec ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return specular reflectivity on face @@ -174,8 +174,8 @@ public: virtual tmp<scalarField> rDiff ( const label bandI, - vectorField* incomingDirection , - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return diffusive reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.C b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.C index 0541d7cf27500bf2fe57f6594734d6da9677e556..d4d9e8bfaaa4268b20324dda59145fe0c4cbb791 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.C +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.C @@ -72,8 +72,8 @@ Foam::radiation::transparent::transparent Foam::tmp<Foam::scalarField> Foam::radiation::transparent::e ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->e(bandI, dir, T)); @@ -92,12 +92,11 @@ Foam::scalar Foam::radiation::transparent::e } -Foam::tmp<Foam::scalarField> -Foam::radiation::transparent::a +Foam::tmp<Foam::scalarField> Foam::radiation::transparent::a ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return(absorptionEmission_->a(bandI, dir, T)); @@ -119,8 +118,8 @@ Foam::scalar Foam::radiation::transparent::a Foam::tmp<Foam::scalarField> Foam::radiation::transparent::t ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), 1.0); @@ -139,12 +138,11 @@ Foam::scalar Foam::radiation::transparent::t } -Foam::tmp<Foam::scalarField> -Foam::radiation::transparent::rSpec +Foam::tmp<Foam::scalarField> Foam::radiation::transparent::rSpec ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); @@ -163,12 +161,11 @@ Foam::scalar Foam::radiation::transparent::rSpec } -Foam::tmp<Foam::scalarField> -Foam::radiation::transparent::rDiff +Foam::tmp<Foam::scalarField> Foam::radiation::transparent::rDiff ( const label bandI, - vectorField* dir, - scalarField* T + const vectorField* dir, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), Zero); diff --git a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.H b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.H index 7261891b273264b9a559865fe89b0f4073e6fffb..a388093df5ab27c986a2fb660f7fde4d49a3ad0d 100644 --- a/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.H +++ b/src/thermophysicalModels/radiation/submodels/boundaryRadiationProperties/transparent/transparent.H @@ -46,8 +46,8 @@ Usage \*---------------------------------------------------------------------------*/ -#ifndef transparent_H -#define transparent_H +#ifndef Foam_radiation_transparent_H +#define Foam_radiation_transparent_H #include "boundaryRadiationPropertiesPatch.H" @@ -96,8 +96,8 @@ public: virtual tmp<scalarField> e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return emissivity on face @@ -113,8 +113,8 @@ public: virtual tmp<scalarField> a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return absorptivity on face @@ -130,8 +130,8 @@ public: virtual tmp<scalarField> t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return transmissivity on face @@ -147,8 +147,8 @@ public: virtual tmp<scalarField> rSpec ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return specular reflectivity on face @@ -164,8 +164,8 @@ public: virtual tmp<scalarField> rDiff ( const label bandI, - vectorField* incomingDirection , - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const; //- Return diffusive reflectivity on face diff --git a/src/thermophysicalModels/radiation/submodels/scatterModel/constantScatter/constantScatter.C b/src/thermophysicalModels/radiation/submodels/scatterModel/constantScatter/constantScatter.C index 666af9dc28a6c62fcafd4480f114d272b5bb3b49..c14bdc79dc0c43685ed54dca0189777263ae28bb 100644 --- a/src/thermophysicalModels/radiation/submodels/scatterModel/constantScatter/constantScatter.C +++ b/src/thermophysicalModels/radiation/submodels/scatterModel/constantScatter/constantScatter.C @@ -66,22 +66,12 @@ Foam::radiation::constantScatter::constantScatter Foam::tmp<Foam::volScalarField> Foam::radiation::constantScatter::sigmaEff() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "sigma", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - sigma_*(3.0 - C_) - ) + "sigma", + IOobject::NO_REGISTER, + mesh_, + sigma_*(3.0 - C_) ); } diff --git a/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.C b/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.C index cc7f40c745f98e7a471b388da77dffdf8eb64a8a..8d9d1f09b649795615be1313c6fac5bb5d6ff364 100644 --- a/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.C +++ b/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.C @@ -56,22 +56,12 @@ Foam::radiation::noScatter::noScatter Foam::tmp<Foam::volScalarField> Foam::radiation::noScatter::sigmaEff() const { - return tmp<volScalarField> + return volScalarField::New ( - new volScalarField - ( - IOobject - ( - "sigma", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - mesh_, - dimensionedScalar(dimless/dimLength, Zero) - ) + "sigma", + IOobject::NO_REGISTER, + mesh_, + dimensionedScalar(dimless/dimLength, Zero) ); } diff --git a/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.H b/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.H index cd5459dd22d5bedac6d50618a17bb11eb17252b7..82c7f7607706136980e6d47c8e5532cb85a31a71 100644 --- a/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.H +++ b/src/thermophysicalModels/radiation/submodels/scatterModel/noScatter/noScatter.H @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef radiation_noScatter_H -#define radiation_noScatter_H +#ifndef Foam_radiation_noScatter_H +#define Foam_radiation_noScatter_H #include "scatterModel.H" diff --git a/src/thermophysicalModels/radiation/submodels/scatterModel/scatterModel/scatterModel.H b/src/thermophysicalModels/radiation/submodels/scatterModel/scatterModel/scatterModel.H index e197dbee78422ac563e2153fc56b62b85669e80b..6a3b5252b819c2bd4cbf966ad25b6ce4c0a1f712 100644 --- a/src/thermophysicalModels/radiation/submodels/scatterModel/scatterModel/scatterModel.H +++ b/src/thermophysicalModels/radiation/submodels/scatterModel/scatterModel/scatterModel.H @@ -31,8 +31,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef scatterModel_H -#define scatterModel_H +#ifndef Foam_radiation_scatterModel_H +#define Foam_radiation_scatterModel_H #include "IOdictionary.H" #include "autoPtr.H" diff --git a/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/sootModel.H b/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/sootModel.H index 64f8995ea35daf204c2cd6b36bb1774f18e6409f..407d52dc7a4cbb4f1065ca8a35ccb11bf24b5b42 100644 --- a/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/sootModel.H +++ b/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/sootModel.H @@ -27,12 +27,12 @@ Class Foam::radiation::sootModel Description - Base class for soor models + Base class for soot models \*---------------------------------------------------------------------------*/ -#ifndef radiation_sootModel_H -#define radiation_sootModel_H +#ifndef Foam_radiation_sootModel_H +#define Foam_radiation_sootModel_H #include "IOdictionary.H" #include "autoPtr.H" diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.C b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.C index 5b9d6ab769f0826349d4b753a248e3c1d0413ee8..7dabf10a894e19f72e1f4955458218984686b070 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.C +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2018 OpenCFD Ltd. + Copyright (C) 2015-2018, 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,8 +56,8 @@ Foam::radiation::constantAbsorption::constantAbsorption : wallAbsorptionEmissionModel(dict, pp), coeffsDict_(dict), - a_(coeffsDict_.get<scalar>("absorptivity")), - e_(coeffsDict_.get<scalar>("emissivity")) + a_(Function1<scalar>::New("absorptivity", coeffsDict_)), + e_(Function1<scalar>::New("emissivity", coeffsDict_)) {} @@ -66,11 +66,27 @@ Foam::radiation::constantAbsorption::constantAbsorption Foam::tmp<Foam::scalarField> Foam::radiation::constantAbsorption::a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { - return tmp<scalarField>(new scalarField(pp_.size(), a_)); + if (a_->constant()) + { + // Use arbitrary argument for a_ + return tmp<scalarField>::New(pp_.size(), a_->value(0)); + } + + if (T) + { + return a_->value(*T); + } + + FatalErrorInFunction + << "Attempted to set 'a' using a non-uniform function of Temperature, " + << "but temperature field is unavailable" + << abort(FatalError); + + return nullptr; } @@ -82,18 +98,34 @@ Foam::scalar Foam::radiation::constantAbsorption::a const scalar T ) const { - return a_; + return a_->value(T); } Foam::tmp<Foam::scalarField> Foam::radiation::constantAbsorption::e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { - return tmp<scalarField>(new scalarField(pp_.size(), e_)); + if (e_->constant()) + { + // Use arbitrary argument for e_ + return tmp<scalarField>::New(pp_.size(), e_->value(0)); + } + + if (T) + { + return e_->value(*T); + } + + FatalErrorInFunction + << "Attempted to set 'e' using a non-uniform function of Temperature, " + << "but temperature field is unavailable" + << abort(FatalError); + + return nullptr; } @@ -105,7 +137,7 @@ Foam::scalar Foam::radiation::constantAbsorption::e const scalar T ) const { - return e_; + return e_->value(T); } diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.H b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.H index d4a8868f18219c8ab1c6abb36c2c35c341c9576a..c7669eabe7d7a6d6bb167079cf7d2c137ce1bd61 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.H +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/constantAbsorption/constantAbsorption.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2018 OpenCFD Ltd. + Copyright (C) 2018, 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,10 +37,11 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef radiation_constantAbsorption_H -#define radiation_constantAbsorption_H +#ifndef Foam_radiation_constantAbsorption_H +#define Foam_radiation_constantAbsorption_H #include "wallAbsorptionEmissionModel.H" +#include "Function1.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -64,10 +65,10 @@ class constantAbsorption dictionary coeffsDict_; //- Absorptivity coefficient - scalar a_; + autoPtr<Function1<scalar>> a_; //- Emissivity coefficient - scalar e_; + autoPtr<Function1<scalar>> e_; public: @@ -92,8 +93,8 @@ public: tmp<scalarField> a ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return absorptivity on face @@ -109,8 +110,8 @@ public: tmp<scalarField> e ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return emission coefficient diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.C b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.C index 82f8f824e7afeac9642d6248639318c5f9bc100f..b80c6d83d8c7b49f5d5dcd15cc8f986140b8a907 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.C +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.C @@ -78,11 +78,11 @@ Foam::tmp<Foam::scalarField> Foam::radiation::multiBandAbsorption::a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { - return tmp<scalarField>(new scalarField(pp_.size(), aCoeffs_[bandI])); + return tmp<scalarField>::New(pp_.size(), aCoeffs_[bandI]); } Foam::scalar Foam::radiation::multiBandAbsorption::a @@ -100,11 +100,11 @@ Foam::scalar Foam::radiation::multiBandAbsorption::a Foam::tmp<Foam::scalarField> Foam::radiation::multiBandAbsorption::e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { - return tmp<scalarField>(new scalarField(pp_.size(), eCoeffs_[bandI])); + return tmp<scalarField>::New(pp_.size(), eCoeffs_[bandI]); } diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.H b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.H index 1ead5fc40292379aa6094164d8490a069c578471..b71639100fe5da8f31ebda0adee33dbb34645af5 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.H +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/multiBandAbsorption/multiBandAbsorption.H @@ -49,8 +49,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef multiBandAbsorption_H -#define multiBandAbsorption_H +#ifndef Foam_radiation_multiBandAbsorption_H +#define Foam_radiation_multiBandAbsorption_H #include "wallAbsorptionEmissionModel.H" @@ -122,8 +122,8 @@ public: tmp<scalarField> a ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return absorptivity on face @@ -138,9 +138,9 @@ public: //- Return emission coefficient tmp<scalarField> e ( - const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const label bandI = 0, + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return emission coefficient diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.C b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.C index 5614252d15179a8222221c0b8edd23b668db5d16..5ffb7c905c6c0f28aef75cb01dd4b31c58338359 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.C +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.C @@ -97,8 +97,8 @@ Foam::radiation::solidAbsorption::~solidAbsorption() Foam::tmp<Foam::scalarField> Foam::radiation::solidAbsorption::a ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { // Since we're inside initEvaluate/evaluate there might be processor @@ -148,8 +148,8 @@ Foam::scalar Foam::radiation::solidAbsorption::a Foam::tmp<Foam::scalarField> Foam::radiation::solidAbsorption::e ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.H b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.H index 094f404f4d40b7582423e357e41ee240c02b1ad4..f8d1cc35a76a803c1c19dd55208f534365be7ae3 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.H +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/solidAbsorption/solidAbsorption.H @@ -26,7 +26,6 @@ License Class Foam::radiation::solidAbsorption - Description Radiation absorptivity-emissivity model to be used on walls on inter-region patches when the solid opaque radiation model is used @@ -48,8 +47,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef radiation_solidAbsorption_H -#define radiation_solidAbsorption_H +#ifndef Foam_radiation_solidAbsorption_H +#define Foam_radiation_solidAbsorption_H #include "wallAbsorptionEmissionModel.H" #include "fvMesh.H" @@ -100,8 +99,8 @@ public: tmp<scalarField> a ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return absorptivity on face @@ -117,8 +116,8 @@ public: tmp<scalarField> e ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return emission coefficient diff --git a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel.H b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel.H index 74bd43f9b53f8f8ad320540ef1e92e9db63004b7..fb83ce0159ef0b7d8141990558830f0c5fd1cac7 100644 --- a/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel.H +++ b/src/thermophysicalModels/radiation/submodels/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel/wallAbsorptionEmissionModel.H @@ -31,8 +31,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef wallAbsorptionEmissionModel_H -#define wallAbsorptionEmissionModel_H +#ifndef Foam_radiation_wallAbsorptionEmissionModel_H +#define Foam_radiation_wallAbsorptionEmissionModel_H #include "dictionary.H" #include "autoPtr.H" @@ -47,7 +47,7 @@ namespace radiation { /*---------------------------------------------------------------------------*\ - Class wallAbsorptionEmissionModel Declaration + Class wallAbsorptionEmissionModel Declaration \*---------------------------------------------------------------------------*/ class wallAbsorptionEmissionModel @@ -108,8 +108,8 @@ public: virtual tmp<scalarField> e ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; @@ -127,8 +127,8 @@ public: virtual tmp<scalarField> a ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; diff --git a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.C b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.C index 1579cfa3d7066f1cc3ca1d9f8cb266253a9a389b..eac1e6c9498517be6d99cf443c8b67c247fb9ba3 100644 --- a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.C +++ b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2018 OpenCFD Ltd. + Copyright (C) 2015-2018, 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,21 +56,36 @@ Foam::radiation::constantTransmissivity::constantTransmissivity : wallTransmissivityModel(dict, pp), coeffsDict_(dict), - tau_(coeffsDict_.get<scalar>("transmissivity")) + tau_(Function1<scalar>::New("transmissivity", coeffsDict_)) {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::tmp<Foam::scalarField> -Foam::radiation::constantTransmissivity::t +Foam::tmp<Foam::scalarField> Foam::radiation::constantTransmissivity::t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { - return tmp<scalarField>::New(pp_.size(), tau_); + if (tau_->constant()) + { + // Use arbitrary argument for a_ + return tmp<scalarField>::New(pp_.size(), tau_->value(0)); + } + + if (T) + { + return tau_->value(*T); + } + + FatalErrorInFunction + << "Attempted to set 't' using a non-uniform function of Temperature, " + << "but temperature field is unavailable" + << abort(FatalError); + + return nullptr; } @@ -82,7 +97,7 @@ Foam::scalar Foam::radiation::constantTransmissivity::t const scalar T ) const { - return tau_; + return tau_->value(T); } diff --git a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.H b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.H index c3689529dcb2cbf3ac7a3e249847a8122a871489..1aa513bb6702bbbd5c9bc80ae1b2e14ae29f9bce 100644 --- a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.H +++ b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/constantTransmissivity/constantTransmissivity.H @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2015-2018 OpenCFD Ltd. + Copyright (C) 2015-2018, 2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -37,10 +37,11 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef radiation_constantTransmissivity_H -#define radiation_constantTransmissivity_H +#ifndef Foam_radiation_constantTransmissivity_H +#define Foam_radiation_constantTransmissivity_H #include "wallTransmissivityModel.H" +#include "Function1.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -64,7 +65,7 @@ class constantTransmissivity dictionary coeffsDict_; //- Transmissivity coefficient - scalar tau_; + autoPtr<Function1<scalar>> tau_; public: @@ -89,8 +90,8 @@ public: tmp<scalarField> t ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return transmissivity on facw diff --git a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.C b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.C index 48504a467ab91da41591d4f37c3a9cbd592ae5ab..c3eb125c17a19c2481270870b8d2a9854ab3f59c 100644 --- a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.C +++ b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.C @@ -70,8 +70,8 @@ Foam::tmp<Foam::scalarField> Foam::radiation::multiBandTransmissivity::t ( const label bandI, - vectorField* incomingDirection, - scalarField* T + const vectorField* incomingDirection, + const scalarField* T ) const { return tmp<scalarField>::New(pp_.size(), tauCoeffs_[bandI]); diff --git a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.H b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.H index 993f17a43c0d3236a2915b90fd737e6981247340..c4300eccef11dd9dbb70e8df9ba7523116cdf68e 100644 --- a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.H +++ b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/multiBandTransmissivity/multiBandTransmissivity.H @@ -48,8 +48,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef multiBandTransmissivity_H -#define multiBandTransmissivity_H +#ifndef Foam_radiation_multiBandTransmissivity_H +#define Foam_radiation_multiBandTransmissivity_H #include "wallTransmissivityModel.H" @@ -118,8 +118,8 @@ public: tmp<scalarField> t ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const; //- Return transmissivity on face diff --git a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/wallTransmissivityModel/wallTransmissivityModel.H b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/wallTransmissivityModel/wallTransmissivityModel.H index e87af5ae65c72f8ff3327e4cd0dcc9eb493fc6f4..fe3d76e7c69d188416fbd539ff5cd1fe70ddff0e 100644 --- a/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/wallTransmissivityModel/wallTransmissivityModel.H +++ b/src/thermophysicalModels/radiation/submodels/wallTransmissivityModel/wallTransmissivityModel/wallTransmissivityModel.H @@ -31,8 +31,8 @@ Description \*---------------------------------------------------------------------------*/ -#ifndef wallTransmissivityModel_H -#define wallTransmissivityModel_H +#ifndef Foam_radiation_wallTransmissivityModel_H +#define Foam_radiation_wallTransmissivityModel_H #include "dictionary.H" #include "autoPtr.H" @@ -106,8 +106,8 @@ public: virtual tmp<scalarField> t ( const label bandI = 0, - vectorField* incomingDirection = nullptr, - scalarField* T = nullptr + const vectorField* incomingDirection = nullptr, + const scalarField* T = nullptr ) const = 0; //- Return transmissivity on face diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C index b9b6006abde959391418a21f548a0ae202764775..3e5dd49c62e25c4e3994283f4475e18739d9d0bc 100644 --- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C +++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C @@ -219,22 +219,22 @@ void Foam::chemkinReader::addReactionType break; default: - + { if (rType < 3) { FatalErrorInFunction - << "Reaction type " << reactionTypeNames[rType] - << " on line " << lineNo_-1 - << " not handled by this function" + << "Unhandled reaction type " << reactionTypeNames[rType] + << " on line " << lineNo_-1 << nl << exit(FatalError); } else { FatalErrorInFunction - << "Unknown reaction type " << rType - << " on line " << lineNo_-1 + << "Unknown reaction type (" << int(rType) + << "), on line " << lineNo_-1 << nl << exit(FatalError); } + } } } @@ -401,10 +401,8 @@ void Foam::chemkinReader::addPressureDependentReaction default: { FatalErrorInFunction - << "Fall-off function type " - << fallOffFunctionNames[fofType] - << " on line " << lineNo_-1 - << " not implemented" + << "Fall-off function type (" << int(fofType) + << ") not implemented, line " << lineNo_-1 << exit(FatalError); } } @@ -748,9 +746,8 @@ void Foam::chemkinReader::addReaction default: { FatalErrorInFunction - << "Reaction rate type " << reactionRateTypeNames[rrType] - << " on line " << lineNo_-1 - << " not implemented" + << "Reaction rate type (" << int(rrType) + << ") not implemented, on line " << lineNo_-1 << exit(FatalError); } } diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.C b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.C index a3caadc95aa61ea5fb272eb715d58775a427327c..ca9bee458fadf018d9f249b77865f19a46fcd105 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.C +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.C @@ -89,7 +89,7 @@ Foam::enthalpySorptionFvPatchScalarField::enthalpySorptionFvPatchScalarField case enthalpyModelType::calculated: { enthalpyMassLoadPtr_ = - Function1<scalar>::New("enthalpyTable", dict); + Function1<scalar>::New("enthalpyTable", dict, &iF.db()); break; } case enthalpyModelType::estimated: diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.H b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.H index f232c79c71455e8d856632511c910b3f4c307378..87dde766df238eef77f1a5a49f4a769835774dfb 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.H +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/enthalpySorption/enthalpySorptionFvPatchScalarField.H @@ -210,15 +210,6 @@ public: const enthalpySorptionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new enthalpySorptionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference enthalpySorptionFvPatchScalarField ( @@ -226,16 +217,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new enthalpySorptionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/fixedUnburntEnthalpy/fixedUnburntEnthalpyFvPatchScalarField.H b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/fixedUnburntEnthalpy/fixedUnburntEnthalpyFvPatchScalarField.H index e996cfcb5af376f7abc99cd874740997f0cc2842..9ff483132a5a33a0a8f19d17d6be3f5008900202 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/fixedUnburntEnthalpy/fixedUnburntEnthalpyFvPatchScalarField.H +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/fixedUnburntEnthalpy/fixedUnburntEnthalpyFvPatchScalarField.H @@ -95,15 +95,6 @@ public: const fixedUnburntEnthalpyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new fixedUnburntEnthalpyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference fixedUnburntEnthalpyFvPatchScalarField ( @@ -111,16 +102,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new fixedUnburntEnthalpyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/gradientUnburntEnthalpy/gradientUnburntEnthalpyFvPatchScalarField.H b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/gradientUnburntEnthalpy/gradientUnburntEnthalpyFvPatchScalarField.H index 2ca2ef4321e9415d4a8d7321220e59c20202a920..99573406a2472f33826c16f9f84c96f692810ed9 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/gradientUnburntEnthalpy/gradientUnburntEnthalpyFvPatchScalarField.H +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/gradientUnburntEnthalpy/gradientUnburntEnthalpyFvPatchScalarField.H @@ -95,15 +95,6 @@ public: const gradientUnburntEnthalpyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new gradientUnburntEnthalpyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference gradientUnburntEnthalpyFvPatchScalarField ( @@ -111,16 +102,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new gradientUnburntEnthalpyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/mixedUnburntEnthalpy/mixedUnburntEnthalpyFvPatchScalarField.H b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/mixedUnburntEnthalpy/mixedUnburntEnthalpyFvPatchScalarField.H index c4f6c10172dbf8b894b382bccd9318875f05592d..839860201926069c5d37324553c06c18bccc838a 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/mixedUnburntEnthalpy/mixedUnburntEnthalpyFvPatchScalarField.H +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/mixedUnburntEnthalpy/mixedUnburntEnthalpyFvPatchScalarField.H @@ -95,15 +95,6 @@ public: const mixedUnburntEnthalpyFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new mixedUnburntEnthalpyFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference mixedUnburntEnthalpyFvPatchScalarField ( @@ -111,16 +102,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new mixedUnburntEnthalpyFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/speciesSorption/speciesSorptionFvPatchScalarField.H b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/speciesSorption/speciesSorptionFvPatchScalarField.H index 140492c752e632d03efe34f4f1b75585f790f0e9..0608a84820924b87c37e0ec4cf762d0801cb9710 100644 --- a/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/speciesSorption/speciesSorptionFvPatchScalarField.H +++ b/src/thermophysicalModels/reactionThermo/derivedFvPatchFields/speciesSorption/speciesSorptionFvPatchScalarField.H @@ -245,15 +245,6 @@ public: const speciesSorptionFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new speciesSorptionFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference speciesSorptionFvPatchScalarField ( @@ -261,16 +252,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new speciesSorptionFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/thermophysicalModels/reactionThermo/mixtures/basicMultiComponentMixture/basicMultiComponentMixture.C b/src/thermophysicalModels/reactionThermo/mixtures/basicMultiComponentMixture/basicMultiComponentMixture.C index 7a33d69695d89a1880e558406c896df831a76df4..f9f8bef58cdaf1a02bad442476d65728ef8731fb 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/basicMultiComponentMixture/basicMultiComponentMixture.C +++ b/src/thermophysicalModels/reactionThermo/mixtures/basicMultiComponentMixture/basicMultiComponentMixture.C @@ -98,7 +98,8 @@ Foam::basicMultiComponentMixture::basicMultiComponentMixture mesh.time().timeName(), mesh, IOobject::MUST_READ, - IOobject::NO_WRITE + IOobject::NO_WRITE, + IOobject::NO_REGISTER ); IOobject constantIO diff --git a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/heheuPsiThermo.C b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/heheuPsiThermo.C index 738cde1275ec6db9cbeb9c610382a2c41a8674c6..cf05a7c24bc40955c52a290ebbb914492e5eb36c 100644 --- a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/heheuPsiThermo.C +++ b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/heheuPsiThermo.C @@ -253,7 +253,8 @@ Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heheuPsiThermo mesh.time().timeName(), mesh, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh ), @@ -328,7 +329,8 @@ Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heheuPsiThermo mesh.time().timeName(), mesh, IOobject::MUST_READ, - IOobject::AUTO_WRITE + IOobject::AUTO_WRITE, + IOobject::REGISTER ), mesh ), @@ -429,8 +431,8 @@ Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heu const labelList& cells ) const { - tmp<scalarField> theu(new scalarField(Tu.size())); - scalarField& heu = theu.ref(); + auto theu = tmp<scalarField>::New(Tu.size()); + auto& heu = theu.ref(); forAll(Tu, celli) { @@ -450,8 +452,8 @@ Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heu const label patchi ) const { - tmp<scalarField> theu(new scalarField(Tu.size())); - scalarField& heu = theu.ref(); + auto theu = tmp<scalarField>::New(Tu.size()); + auto& heu = theu.ref(); forAll(Tu, facei) { @@ -467,24 +469,14 @@ template<class BasicPsiThermo, class MixtureType> Foam::tmp<Foam::volScalarField> Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::Tb() const { - tmp<volScalarField> tTb + auto tTb = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Tb", - this->T_.time().timeName(), - this->T_.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->T_ - ) + "Tb", + IOobject::NO_REGISTER, + this->T_ ); + auto& Tb_ = tTb.ref(); - volScalarField& Tb_ = tTb.ref(); scalarField& TbCells = Tb_.primitiveFieldRef(); const scalarField& pCells = this->p_; const scalarField& TCells = this->T_; @@ -526,25 +518,15 @@ template<class BasicPsiThermo, class MixtureType> Foam::tmp<Foam::volScalarField> Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::psiu() const { - tmp<volScalarField> tpsiu + auto tpsiu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "psiu", - this->psi_.time().timeName(), - this->psi_.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->psi_.mesh(), - this->psi_.dimensions() - ) + "psiu", + IOobject::NO_REGISTER, + this->psi_.mesh(), + this->psi_.dimensions() ); + auto& psiu = tpsiu.ref(); - volScalarField& psiu = tpsiu.ref(); scalarField& psiuCells = psiu.primitiveFieldRef(); const scalarField& TuCells = this->Tu_; const scalarField& pCells = this->p_; @@ -580,25 +562,15 @@ template<class BasicPsiThermo, class MixtureType> Foam::tmp<Foam::volScalarField> Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::psib() const { - tmp<volScalarField> tpsib + auto tpsib = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "psib", - this->psi_.time().timeName(), - this->psi_.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->psi_.mesh(), - this->psi_.dimensions() - ) + "psib", + IOobject::NO_REGISTER, + this->psi_.mesh(), + this->psi_.dimensions() ); + auto& psib = tpsib.ref(); - volScalarField& psib = tpsib.ref(); scalarField& psibCells = psib.primitiveFieldRef(); const volScalarField Tb_(Tb()); const scalarField& TbCells = Tb_; @@ -635,25 +607,15 @@ template<class BasicPsiThermo, class MixtureType> Foam::tmp<Foam::volScalarField> Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::muu() const { - tmp<volScalarField> tmuu + auto tmuu = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "muu", - this->T_.time().timeName(), - this->T_.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->T_.mesh(), - dimensionSet(1, -1, -1, 0, 0) - ) + "muu", + IOobject::NO_REGISTER, + this->T_.mesh(), + dimensionSet(1, -1, -1, 0, 0) ); + auto& muu_ = tmuu.ref(); - volScalarField& muu_ = tmuu.ref(); scalarField& muuCells = muu_.primitiveFieldRef(); const scalarField& pCells = this->p_; const scalarField& TuCells = this->Tu_; @@ -693,25 +655,15 @@ template<class BasicPsiThermo, class MixtureType> Foam::tmp<Foam::volScalarField> Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::mub() const { - tmp<volScalarField> tmub + auto tmub = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "mub", - this->T_.time().timeName(), - this->T_.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->T_.mesh(), - dimensionSet(1, -1, -1, 0, 0) - ) + "mub", + IOobject::NO_REGISTER, + this->T_.mesh(), + dimensionSet(1, -1, -1, 0, 0) ); + auto& mub_ = tmub.ref(); - volScalarField& mub_ = tmub.ref(); scalarField& mubCells = mub_.primitiveFieldRef(); const volScalarField Tb_(Tb()); const scalarField& pCells = this->p_; diff --git a/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModel.C b/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModel.C index 5076b34ca88864b22560ad6480a7d1a222c5b6a2..2653f238cef0f5bb729e13cb066c8a439a19eb95 100644 --- a/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModel.C +++ b/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModel.C @@ -59,7 +59,7 @@ const Foam::DimensionedField<Foam::scalar, Foam::volMesh>& Foam::basicSolidChemistryModel::RR(const label i) const { NotImplemented; - return (volScalarField::Internal::null()); + return volScalarField::Internal::null(); } @@ -67,14 +67,11 @@ Foam::DimensionedField<Foam::scalar, Foam::volMesh>& Foam::basicSolidChemistryModel::RR(const label i) { NotImplemented; - - return dynamic_cast<volScalarField::Internal&> - ( + return const_cast<volScalarField::Internal&> ( volScalarField::Internal::null() - ) - ); + ); } @@ -86,14 +83,7 @@ Foam::basicSolidChemistryModel::calculateRR ) const { NotImplemented; - - return dynamic_cast<tmp<volScalarField::Internal>&> - ( - const_cast<volScalarField::Internal&> - ( - volScalarField::Internal::null() - ) - ); + return nullptr; } diff --git a/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModel.C b/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModel.C index cda0d2ec763d546f8d9b104fcca8d1c7693a48a3..2901ab58e07c457db2a7e713209287c3697c5d63 100644 --- a/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModel.C +++ b/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -621,25 +621,14 @@ Foam::pyrolysisChemistryModel<CompType, SolidThermo, GasThermo>::gasHs const label index ) const { - tmp<volScalarField> tHs + auto tHs = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Hs_" + pyrolisisGases_[index], - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh_, - dimensionedScalar(dimEnergy/dimMass, Zero) - ) + "Hs_" + pyrolisisGases_[index], + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(dimEnergy/dimMass, Zero) ); - - volScalarField::Internal& gasHs = tHs.ref(); + auto& gasHs = tHs.ref(); const GasThermo& mixture = gasThermo_[index]; diff --git a/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModelI.H b/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModelI.H index 5029c4b0f4d7050bbf7539c195d33d51e43e879a..742f0e99d4bbe52166d1b66c68bc0b70c4bb838e 100644 --- a/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModelI.H +++ b/src/thermophysicalModels/solidChemistryModel/pyrolysisChemistryModel/pyrolysisChemistryModelI.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -81,26 +82,17 @@ inline Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::pyrolysisChemistryModel<CompType, SolidThermo, GasThermo>:: RRg() const { - tmp<volScalarField::Internal> tRRg + auto tRRg = DimensionedField<scalar, volMesh>::New ( - new volScalarField::Internal - ( - IOobject - ( - "RRg", - this->time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - this->mesh(), - dimensionedScalar(dimMass/dimVolume/dimTime, Zero) - ) + "RRg", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); + auto& RRg = tRRg.ref(); if (this->chemistry_) { - volScalarField::Internal& RRg = tRRg.ref(); for (label i=0; i < nGases_; i++) { RRg += RRg_[i]; diff --git a/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModel.C b/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModel.C index 6441efddce2f57fb3c41a76ef9e9758f8ac6eefd..f16eb650bce2e0545671d23232ffb5446f3338e9 100644 --- a/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModel.C +++ b/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModel.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -116,28 +117,17 @@ template<class CompType, class SolidThermo> Foam::tmp<Foam::volScalarField> Foam::solidChemistryModel<CompType, SolidThermo>::Qdot() const { - tmp<volScalarField> tQdot + auto tQdot = volScalarField::New ( - new volScalarField - ( - IOobject - ( - "Qdot", - this->mesh_.time().timeName(), - this->mesh_, - IOobject::NO_READ, - IOobject::AUTO_WRITE, - IOobject::NO_REGISTER - ), - this->mesh_, - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + "Qdot", + IOobject::NO_REGISTER, + this->mesh_, + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); + scalarField& Qdot = tQdot.ref(); if (this->chemistry_) { - scalarField& Qdot = tQdot.ref(); - forAll(Ys_, i) { forAll(Qdot, celli) diff --git a/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModelI.H b/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModelI.H index 855b29fb62db2ddea8e8b0d2e139408d63e17ba0..8b4fd00028886957bb22b9beec589452b0422ef8 100644 --- a/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModelI.H +++ b/src/thermophysicalModels/solidChemistryModel/solidChemistryModel/solidChemistryModelI.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2013-2016 OpenFOAM Foundation - Copyright (C) 2016 OpenCFD Ltd. + Copyright (C) 2016-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -70,26 +70,17 @@ template<class CompType, class SolidThermo> inline Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::solidChemistryModel<CompType, SolidThermo>::RRs() const { - tmp<volScalarField::Internal> tRRs + auto tRRs = DimensionedField<scalar, volMesh>::New ( - new volScalarField::Internal - ( - IOobject - ( - "RRs", - this->time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - this->mesh(), - dimensionedScalar(dimMass/dimVolume/dimTime, Zero) - ) + "RRs", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimMass/dimVolume/dimTime, Zero) ); + auto& RRs = tRRs.ref(); if (this->chemistry_) { - volScalarField::Internal& RRs = tRRs.ref(); for (label i=0; i < nSolids_; i++) { RRs += RRs_[i]; @@ -103,27 +94,17 @@ template<class CompType, class SolidThermo> inline Foam::tmp<Foam::DimensionedField<Foam::scalar, Foam::volMesh>> Foam::solidChemistryModel<CompType, SolidThermo>::RRsHs() const { - tmp<DimensionedField<scalar, volMesh>> tRRsHs + auto tRRsHs = DimensionedField<scalar, volMesh>::New ( - new DimensionedField<scalar, volMesh> - ( - IOobject - ( - "RRsHs", - this->time().timeName(), - this->mesh(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), - this->mesh(), - dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) - ) + "RRsHs", + IOobject::NO_REGISTER, + this->mesh(), + dimensionedScalar(dimEnergy/dimVolume/dimTime, Zero) ); + auto& RRs = tRRsHs.ref(); if (this->chemistry_) { - DimensionedField<scalar, volMesh>& RRs = tRRsHs.ref(); - const volScalarField& T = this->solidThermo().T(); const volScalarField& p = this->solidThermo().p(); diff --git a/src/thermophysicalModels/solidSpecie/reaction/Reactions/solidReaction/solidReaction.C b/src/thermophysicalModels/solidSpecie/reaction/Reactions/solidReaction/solidReaction.C index 6baafddc761c909e1eb71bef2b0bcb1bfa7ddc31..bdcc8773b9c0352f30e30d2575063724718885ee 100644 --- a/src/thermophysicalModels/solidSpecie/reaction/Reactions/solidReaction/solidReaction.C +++ b/src/thermophysicalModels/solidSpecie/reaction/Reactions/solidReaction/solidReaction.C @@ -81,9 +81,11 @@ Foam::solidReaction<ReactionThermo>::solidReaction glhs_(), grhs_() { + ICharStream reactionIs(dict.getString("reaction")); + this->setLRhs ( - IStringStream(dict.getString("reaction"))(), + reactionIs, pyrolisisGases_, glhs_, grhs_, @@ -99,9 +101,10 @@ Foam::solidReaction<ReactionThermo>::solidReaction List<specieCoeffs> dummyRhs; // Rescan (and fail) if a species is neither gas nor solid + reactionIs.rewind(); this->setLRhs ( - IStringStream(dict.getString("reaction"))(), + reactionIs, allSpecies, dummyLhs, dummyRhs diff --git a/src/thermophysicalModels/solidThermo/solidThermo/heSolidThermo.C b/src/thermophysicalModels/solidThermo/solidThermo/heSolidThermo.C index e2b581d21d7d8fb6f4021001b1d309e14cb9d3ec..def7f88fab03b9cd1d219b5a825f571beee5537a 100644 --- a/src/thermophysicalModels/solidThermo/solidThermo/heSolidThermo.C +++ b/src/thermophysicalModels/solidThermo/solidThermo/heSolidThermo.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation - Copyright (C) 2017-2020 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -219,24 +219,15 @@ Foam::heSolidThermo<BasicSolidThermo, MixtureType>::Kappa() const { const fvMesh& mesh = this->T_.mesh(); - tmp<volVectorField> tKappa + auto tKappa = volVectorField::New ( - new volVectorField - ( - IOobject - ( - "Kappa", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh, - dimEnergy/dimTime/dimLength/dimTemperature - ) + "Kappa", + IOobject::NO_REGISTER, + mesh, + dimEnergy/dimTime/dimLength/dimTemperature ); + auto& Kappa = tKappa.ref(); - volVectorField& Kappa = tKappa.ref(); vectorField& KappaCells = Kappa.primitiveFieldRef(); const scalarField& TCells = this->T_; const scalarField& pCells = this->p_; @@ -286,9 +277,9 @@ Foam::heSolidThermo<BasicSolidThermo, MixtureType>::Kappa { const scalarField& pp = this->p_.boundaryField()[patchi]; const scalarField& Tp = this->T_.boundaryField()[patchi]; - tmp<vectorField> tKappa(new vectorField(pp.size())); - vectorField& Kappap = tKappa.ref(); + auto tKappa = tmp<vectorField>::New(pp.size()); + auto& Kappap = tKappa.ref(); forAll(Tp, facei) { diff --git a/src/thermophysicalModels/specie/reaction/Reactions/Reaction/Reaction.C b/src/thermophysicalModels/specie/reaction/Reactions/Reaction/Reaction.C index 89b9fa51e23edb6053bdaae22189a004a9487886..af8e6ce523e258df75d2797ddcd7ec9ddef0b5bb 100644 --- a/src/thermophysicalModels/specie/reaction/Reactions/Reaction/Reaction.C +++ b/src/thermophysicalModels/specie/reaction/Reactions/Reaction/Reaction.C @@ -332,9 +332,11 @@ Foam::Reaction<ReactionThermo>::Reaction name_(dict.dictName()), species_(species) { + ICharStream reactionIs(dict.getString("reaction")); + setLRhs ( - IStringStream(dict.getString("reaction"))(), + reactionIs, species_, lhs_, rhs_, @@ -441,7 +443,7 @@ const Foam::List<typename Foam::Reaction<ReactionThermo>::specieCoeffs>& Foam::Reaction<ReactionThermo>::glhs() const { NotImplemented; - return NullObjectRef<List<specieCoeffs>>(); + return List<specieCoeffs>::null(); } @@ -450,7 +452,7 @@ const Foam::List<typename Foam::Reaction<ReactionThermo>::specieCoeffs>& Foam::Reaction<ReactionThermo>::grhs() const { NotImplemented; - return NullObjectRef<List<specieCoeffs>>(); + return List<specieCoeffs>::null(); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/Ar/Ar.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/Ar/Ar.H index de9273f625636ac32556ed7b1e5493dcab0deb58..3d71c0b79fb799917bfe5021f6053b21212d2d82 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/Ar/Ar.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/Ar/Ar.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary Ar(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<Ar>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C10H22/C10H22.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C10H22/C10H22.H index 164da673a0370c7e0bedd3c1eee0f6b5b557591a..0f544d1154913ae413faadf2ca3506386310eebf 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C10H22/C10H22.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C10H22/C10H22.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C10H22(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C10H22>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C12H26/C12H26.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C12H26/C12H26.H index 45346e3feeb7de2b0fa5e34f21b2db4668b06dbc..3d91dd881fbc9fc068e4df43669bcf8654bde8b3 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C12H26/C12H26.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C12H26/C12H26.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C12H26(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C12H26>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C13H28/C13H28.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C13H28/C13H28.H index b45b57d01926a9dcee450b183aa4a05adcc9856b..4b0fab59ef8c13bb22d96db7d46636704897051a 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C13H28/C13H28.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C13H28/C13H28.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C13H28(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C13H28>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C14H30/C14H30.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C14H30/C14H30.H index a1ad7431a7a2e18639209eb9672f3fec14ba11a2..0eeb8cc1a185b3e29d67ede59b9878ef286adabd 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C14H30/C14H30.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C14H30/C14H30.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C14H30(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C14H30>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C16H34/C16H34.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C16H34/C16H34.H index 47a1a5e3eab96558e27d8f80ada260f368ebdbfc..a8f4bb6a7350bbd51496a42b0adadbb2829eaec6 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C16H34/C16H34.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C16H34/C16H34.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C16H34(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C16H34>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H5OH/C2H5OH.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H5OH/C2H5OH.H index dc6a2f2477e3684575e2dc920b45f6ea587c0474..8d184291608dad09527ab09023be47b69219311a 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H5OH/C2H5OH.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H5OH/C2H5OH.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C2H5OH(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C2H5OH>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6/C2H6.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6/C2H6.H index 656656cac384d1792256c876334ef5cd796807f7..204160cf66fe6041176b076328026974447675e8 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6/C2H6.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6/C2H6.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C2H6(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C2H6>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6O/C2H6O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6O/C2H6O.H index 9c608556aef94b34a65cbc7ac1058bc6c501232b..538f4c2c92f8276a5c549f8df47ee533b263a92c 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6O/C2H6O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C2H6O/C2H6O.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C2H6O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C2H6O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H6O/C3H6O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H6O/C3H6O.H index 61e482f73e0c29b5c71f124c477fdab4d0e5a6f6..1efc92fd242bd4799be7c251c0cb7e92a66dcce7 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H6O/C3H6O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H6O/C3H6O.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C3H6O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C3H6O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H8/C3H8.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H8/C3H8.H index 4222ea2d98d865e2bf15eb75ddcae8ac2aac892e..ef9d85e3b575f5de6c05fe002724ddd55596fbe6 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H8/C3H8.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C3H8/C3H8.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C3H8(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C3H8>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C4H10O/C4H10O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C4H10O/C4H10O.H index 83d8fe1d06d17017b372f3da00843daff72b77a2..ed5e1326da77f95bc3e1c9e6d4dbd9882918e2e8 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C4H10O/C4H10O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C4H10O/C4H10O.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C4H10O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C4H10O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H14/C6H14.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H14/C6H14.H index 83b49d09a81013009e2c511c9d19adb613198f8a..ebe60044dd43db252affe5663688f9bd60e77453 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H14/C6H14.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H14/C6H14.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C6H14(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C6H14>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H6/C6H6.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H6/C6H6.H index e67f2e5e081dc106db8d5701b1c101f5388a73b1..81be1a18dde1374e03377b7d80bc208ccdc7cf3a 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H6/C6H6.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C6H6/C6H6.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C6H6(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C6H6>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H16/C7H16.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H16/C7H16.H index 5f713fda2ec8de7efd705d128959711e7ec03ff1..27b3485714f409cf3f4d7ea0e4be77553f7b7545 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H16/C7H16.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H16/C7H16.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C7H16(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C7H16>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H8/C7H8.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H8/C7H8.H index 51a66c69b516123080abcf53186c32c7a9df9405..6dfabef59ec292b2addacdd4c79a5f89e33e385f 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H8/C7H8.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C7H8/C7H8.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C7H8(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C7H8>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H10/C8H10.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H10/C8H10.H index 2b337d0a9df8f78255ae4e8593d45a4e68301b51..66f2622904365fbae9f0854b5938d81c972a2a0d 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H10/C8H10.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H10/C8H10.H @@ -113,10 +113,10 @@ public: //- Construct from dictionary C8H10(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C8H10>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H18/C8H18.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H18/C8H18.H index a2300872696c78151af3ce77e935b31051dbce22..6b0446c4ec211bc495c539a520c219e3274b98f0 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H18/C8H18.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C8H18/C8H18.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C8H18(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C8H18>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C9H20/C9H20.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C9H20/C9H20.H index 6206617bd8abc1655b5dba303ae504b2444d2022..dc38c2d753f295b3b4d97cf491f4b9a1d0b2b1d9 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C9H20/C9H20.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/C9H20/C9H20.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary C9H20(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<C9H20>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH3OH/CH3OH.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH3OH/CH3OH.H index d9e034f4297ca98e7c070734d24afccf2854e81e..c2a8001939eaf2235573d19773b508069e1be06a 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH3OH/CH3OH.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH3OH/CH3OH.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary CH3OH(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<CH3OH>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH4N2O/CH4N2O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH4N2O/CH4N2O.H index 628c9845226336a05052d12416008f91a5b3c2c3..b6992f526607ded32db6d11ae20a52d116cb1a97 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH4N2O/CH4N2O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/CH4N2O/CH4N2O.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary CH4N2O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<CH4N2O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/H2O/H2O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/H2O/H2O.H index d96d82ff9de73f0e06fb799c468639a0f3d6462b..764316c57954ba5613bd739437acd3372bcd8561 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/H2O/H2O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/H2O/H2O.H @@ -113,10 +113,10 @@ public: //- Construct from dictionary H2O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<H2O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IC8H18/IC8H18.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IC8H18/IC8H18.H index d1689a8bfa642a880734725ca0b22a3459735f06..e6d492faf3fcdcc410848c8114d0554ecd85f658 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IC8H18/IC8H18.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IC8H18/IC8H18.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary IC8H18(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<IC8H18>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IDEA/IDEA.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IDEA/IDEA.H index c9a5e6b7bff29ffee13b3b636e6db02e3d0bc771..1f7a6c9de1220135182d7219f2f49c2b0eddc658 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IDEA/IDEA.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/IDEA/IDEA.H @@ -136,10 +136,10 @@ public: //- Construct from dictionary IDEA(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<IDEA>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/MB/MB.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/MB/MB.H index fbb7fb049a36f0d00fb380989e2f60d52d621f37..3ed033af167a51715f435d80d8ae2f6cba705ecf 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/MB/MB.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/MB/MB.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary MB(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<MB>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/N2/N2.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/N2/N2.H index d57624c57cf3c6a69bd7fbbec7fbfbbc57adcd3b..72015b13e553488d46e92be935eac91b4d19dd6f 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/N2/N2.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/N2/N2.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary N2(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<N2>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/aC10H7CH3/aC10H7CH3.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/aC10H7CH3/aC10H7CH3.H index 6d07dacbe6a244018f0936798ab8e478ee73248e..fb6c4bed3139e7006731afb09c2f7fb06872d0e7 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/aC10H7CH3/aC10H7CH3.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/aC10H7CH3/aC10H7CH3.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary aC10H7CH3(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<aC10H7CH3>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/bC10H7CH3/bC10H7CH3.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/bC10H7CH3/bC10H7CH3.H index 93e4c0db6a701b10a4901410372d17338786734a..a8a45ecd650213ee7ebad8db2bde7cee5618939e 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/bC10H7CH3/bC10H7CH3.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/bC10H7CH3/bC10H7CH3.H @@ -114,10 +114,10 @@ public: //- Construct from dictionary bC10H7CH3(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<bC10H7CH3>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/iC3H8O/iC3H8O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/iC3H8O/iC3H8O.H index ffbea5673594f6858f2849d10586595f4549cb66..6144243c726d32bcea745f325c6a99adaecc54b9 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/iC3H8O/iC3H8O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/iC3H8O/iC3H8O.H @@ -112,10 +112,10 @@ public: //- Construct from dictionary iC3H8O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<iC3H8O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquid/liquid.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquid/liquid.H index 21b152c36aa23da9ea20c95e0d5487cd9d1c0134..fc6f69ea2c3831a6045699ea995cfc542f7ed196 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquid/liquid.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquid/liquid.H @@ -37,8 +37,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef liquid_H -#define liquid_H +#ifndef Foam_liquid_H +#define Foam_liquid_H #include "liquidProperties.H" #include "Function1.H" @@ -90,10 +90,10 @@ public: liquid(const liquid& rhs); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>(new liquid(*this)); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquidProperties/liquidProperties.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquidProperties/liquidProperties.H index 220f962f753ea6f8e1d8b2fe8506e6ca19a56628..589865f29225b4b968907c5ccf756fe06a6c7f47 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquidProperties/liquidProperties.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/liquidProperties/liquidProperties.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2019 OpenCFD Ltd. + Copyright (C) 2019-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef liquidProperties_H -#define liquidProperties_H +#ifndef Foam_liquidProperties_H +#define Foam_liquidProperties_H #include "thermophysicalProperties.H" @@ -137,7 +137,14 @@ public: virtual autoPtr<liquidProperties> clone() const = 0; - // Selectors + // Factory Methods + + //- Clone liquidProperties + template<class Derived> + static autoPtr<liquidProperties> Clone(const Derived& prop) + { + return autoPtr<liquidProperties>(new Derived(prop)); + } //- Return a pointer to a new liquidProperties created from name static autoPtr<liquidProperties> New(const word& name); diff --git a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/nC3H8O/nC3H8O.H b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/nC3H8O/nC3H8O.H index b5729a0ffa0def21e18733cd12f17f34478bf236..388375dc7250c834627815763f16e9686438d89b 100644 --- a/src/thermophysicalModels/thermophysicalProperties/liquidProperties/nC3H8O/nC3H8O.H +++ b/src/thermophysicalModels/thermophysicalProperties/liquidProperties/nC3H8O/nC3H8O.H @@ -112,10 +112,10 @@ public: //- Construct from dictionary nC3H8O(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<liquidProperties> clone() const { - return autoPtr<liquidProperties>::NewFrom<nC3H8O>(*this); + return liquidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/solidProperties/C/C.H b/src/thermophysicalModels/thermophysicalProperties/solidProperties/C/C.H index 471498121fc9dae625ee7b48a0c4274b9131259f..5ff8dda5ea042e5537e375039d7968130780d302 100644 --- a/src/thermophysicalModels/thermophysicalProperties/solidProperties/C/C.H +++ b/src/thermophysicalModels/thermophysicalProperties/solidProperties/C/C.H @@ -67,10 +67,10 @@ public: //- Construct from dictionary C(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<solidProperties> clone() const { - return autoPtr<solidProperties>::NewFrom<C>(*this); + return solidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/solidProperties/CaCO3/CaCO3.H b/src/thermophysicalModels/thermophysicalProperties/solidProperties/CaCO3/CaCO3.H index fce234a3f0a4bb8cfa0b5957e38b973177ee3382..b8baf048a39552d7ad696e5edaf071c05a402ff8 100644 --- a/src/thermophysicalModels/thermophysicalProperties/solidProperties/CaCO3/CaCO3.H +++ b/src/thermophysicalModels/thermophysicalProperties/solidProperties/CaCO3/CaCO3.H @@ -67,10 +67,10 @@ public: //- Construct from dictionary CaCO3(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<solidProperties> clone() const { - return autoPtr<solidProperties>::NewFrom<CaCO3>(*this); + return solidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/solidProperties/ash/ash.H b/src/thermophysicalModels/thermophysicalProperties/solidProperties/ash/ash.H index 7297af2785b95df9e69c79dbfc3adb905a2fa3aa..34e759813dccdd9dee59e288af56e0f5c594f23a 100644 --- a/src/thermophysicalModels/thermophysicalProperties/solidProperties/ash/ash.H +++ b/src/thermophysicalModels/thermophysicalProperties/solidProperties/ash/ash.H @@ -67,10 +67,10 @@ public: //- Construct from dictionary ash(const dictionary& dict); - //- Construct and return clone + //- Return a clone virtual autoPtr<solidProperties> clone() const { - return autoPtr<solidProperties>::NewFrom<ash>(*this); + return solidProperties::Clone(*this); } diff --git a/src/thermophysicalModels/thermophysicalProperties/solidProperties/solidProperties/solidProperties.H b/src/thermophysicalModels/thermophysicalProperties/solidProperties/solidProperties/solidProperties.H index 3d8729acc36295aa327f760bc1c6b629936cbf65..313f3c37ab1adfb7bfba37c51646714c3fce1a09 100644 --- a/src/thermophysicalModels/thermophysicalProperties/solidProperties/solidProperties/solidProperties.H +++ b/src/thermophysicalModels/thermophysicalProperties/solidProperties/solidProperties/solidProperties.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2017 OpenFOAM Foundation - Copyright (C) 2018-2019 OpenCFD Ltd. + Copyright (C) 2018-2024 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -35,8 +35,8 @@ SourceFiles \*---------------------------------------------------------------------------*/ -#ifndef solidProperties_H -#define solidProperties_H +#ifndef Foam_solidProperties_H +#define Foam_solidProperties_H #include "typeInfo.H" #include "autoPtr.H" @@ -133,7 +133,14 @@ public: } - // Selectors + // Factory Methods + + //- Clone solidProperties + template<class Derived> + static autoPtr<solidProperties> Clone(const Derived& prop) + { + return autoPtr<solidProperties>(new Derived(prop)); + } //- Return a pointer to a new solidProperties created from name static autoPtr<solidProperties> New(const word& name); diff --git a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C index 4e56adeb3d8a92b1c59a54c11a9cf30ee7435ff0..d4dc7990d4ffaaa0242ab4e2414bbd0c7b28fbb8 100644 --- a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C +++ b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C @@ -275,12 +275,8 @@ bool Foam::linearValveLayersFvMesh::attached() const Foam::tmp<Foam::pointField> Foam::linearValveLayersFvMesh::newPoints() const { - tmp<pointField> tnewPoints - ( - new pointField(points()) - ); - - pointField& np = tnewPoints(); + auto tnewPoints = tmp<pointField>::New(points()); + auto& np = tnewPoints(); const word layerPatchName ( diff --git a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C index 51221b8fadfe0287f10ecd6ef0e79b3d3b5fb543..0b0d1e8bef5136639a9bdaed29285a770b60489d 100644 --- a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C +++ b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C @@ -70,8 +70,8 @@ Foam::tmp<Foam::scalarField> Foam::movingConeTopoFvMesh::vertexMarkup Info<< "Updating vertex markup. curLeft: " << curLeft << " curRight: " << curRight << endl; - tmp<scalarField> tvertexMarkup(new scalarField(p.size())); - scalarField& vertexMarkup = tvertexMarkup.ref(); + auto tvertexMarkup = tmp<scalarField>::New(p.size()); + auto& vertexMarkup = tvertexMarkup.ref(); forAll(p, pI) { diff --git a/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.C b/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.C index 1b54ff2ca1a3eda72675618ba98733a1abd2c2db..a2296c3c6bf3833de1d56e73ddd3f318a9b698c4 100644 --- a/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.C +++ b/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.C @@ -497,7 +497,7 @@ Foam::DynamicList<Foam::label> Foam::isoAdvection::syncProcPatches if (Pstream::parRun()) { DynamicList<label> neighProcs; - PstreamBuffers pBufs(UPstream::commsTypes::nonBlocking); + PstreamBuffers pBufs; // Send for (const label patchi : procPatchLabels_) diff --git a/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.H b/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.H index 40c4162f946c08496649b57211d1bc1422bc36f3..f741963733d1c45041ceec005c37120a36af14bb 100644 --- a/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.H +++ b/src/transportModels/geometricVoF/advectionSchemes/isoAdvection/isoAdvection.H @@ -355,15 +355,15 @@ public: //- Return mass flux tmp<surfaceScalarField> getRhoPhi ( - const dimensionedScalar rho1, - const dimensionedScalar rho2 + const dimensionedScalar& rho1, + const dimensionedScalar& rho2 ) const { - return tmp<surfaceScalarField> + return surfaceScalarField::New ( - new surfaceScalarField + "rhoPhi", + IOobject::NO_REGISTER, ( - "rhoPhi", (rho1 - rho2)*dVf_/mesh_.time().deltaT() + rho2*phi_ ) ); @@ -376,14 +376,14 @@ public: const volScalarField& rho2 ) { - return tmp<surfaceScalarField> - ( - new surfaceScalarField + return surfaceScalarField::New ( "rhoPhi", - fvc::interpolate(rho1 - rho2)*alphaPhi_ - + fvc::interpolate(rho2)*phi_ - ) + IOobject::NO_REGISTER, + ( + fvc::interpolate(rho1 - rho2)*alphaPhi_ + + fvc::interpolate(rho2)*phi_ + ) ); } diff --git a/src/transportModels/incompressible/incompressibleTwoPhaseMixture/incompressibleTwoPhaseMixture.C b/src/transportModels/incompressible/incompressibleTwoPhaseMixture/incompressibleTwoPhaseMixture.C index 5275ca30172280065250a4f93a5bc28486590a8d..54df8f0053e67a906bfe86e32c321c97dcb06605 100644 --- a/src/transportModels/incompressible/incompressibleTwoPhaseMixture/incompressibleTwoPhaseMixture.C +++ b/src/transportModels/incompressible/incompressibleTwoPhaseMixture/incompressibleTwoPhaseMixture.C @@ -130,9 +130,10 @@ Foam::incompressibleTwoPhaseMixture::mu() const clamp(alpha1_, zero_one{}) ); - return tmp<volScalarField>::New + return volScalarField::New ( "mu", + IOobject::NO_REGISTER, limitedAlpha1*rho1_*nuModel1_->nu() + (scalar(1) - limitedAlpha1)*rho2_*nuModel2_->nu() ); @@ -155,9 +156,10 @@ Foam::incompressibleTwoPhaseMixture::muf() const clamp(fvc::interpolate(alpha1_), zero_one{}) ); - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( "muf", + IOobject::NO_REGISTER, alpha1f*rho1_*fvc::interpolate(nuModel1_->nu()) + (scalar(1) - alpha1f)*rho2_*fvc::interpolate(nuModel2_->nu()) ); @@ -172,9 +174,10 @@ Foam::incompressibleTwoPhaseMixture::nuf() const clamp(fvc::interpolate(alpha1_), zero_one{}) ); - return tmp<surfaceScalarField>::New + return surfaceScalarField::New ( "nuf", + IOobject::NO_REGISTER, ( alpha1f*rho1_*fvc::interpolate(nuModel1_->nu()) + (scalar(1) - alpha1f)*rho2_*fvc::interpolate(nuModel2_->nu()) diff --git a/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.C b/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.C index 5a13143fb01fb999cb59fb858f1eb80e1ecf14c8..798ca756ec206aa5a652351aaf9a0a1340f62283 100644 --- a/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.C +++ b/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.C @@ -55,7 +55,7 @@ alphaContactAngleTwoPhaseFvPatchScalarField ) : fixedGradientFvPatchScalarField(p, iF), - limit_(lcZeroGradient) + limit_(limitControls::lcZeroGradient) {} @@ -128,7 +128,7 @@ void Foam::alphaContactAngleTwoPhaseFvPatchScalarField::evaluate const Pstream::commsTypes ) { - if (limit_ == lcGradient) + if (limit_ == limitControls::lcGradient) { gradient() = patch().deltaCoeffs() @@ -137,14 +137,14 @@ void Foam::alphaContactAngleTwoPhaseFvPatchScalarField::evaluate - *this ); } - else if (limit_ == lcZeroGradient) + else if (limit_ == limitControls::lcZeroGradient) { gradient() = Zero; } fixedGradientFvPatchScalarField::evaluate(); - if (limit_ == lcAlpha) + if (limit_ == limitControls::lcAlpha) { scalarField::operator=(clamp(*this, zero_one{})); } diff --git a/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.H b/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.H index 0f9600705811ec5b7d90d0ba348330e101b51d4d..d9fe5dca2ef9f87d32ca1ed9bb9821d36b225aac 100644 --- a/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.H +++ b/src/transportModels/interfaceProperties/alphaContactAngle/alphaContactAngleTwoPhaseFvPatchScalarField.H @@ -136,7 +136,7 @@ public: ); - // Member functions + // Member Functions //- Return the contact angle virtual tmp<scalarField> theta @@ -148,11 +148,17 @@ public: //- Evaluate the patch field virtual void evaluate ( - const Pstream::commsTypes commsType=Pstream::commsTypes::blocking + const Pstream::commsTypes commsType=Pstream::commsTypes::buffered ); //- Write virtual void write(Ostream& os) const; + + + // Member Operators + + //- Inherit assignment operators + using fvPatchField<scalar>::operator=; }; diff --git a/src/transportModels/interfaceProperties/surfaceTensionModels/constant/constantSurfaceTension.C b/src/transportModels/interfaceProperties/surfaceTensionModels/constant/constantSurfaceTension.C index d433938fc3e4101907eb6f75410597e00b6fdbe5..33e3d0fdc569714e082429ecbef177807f9f85e2 100644 --- a/src/transportModels/interfaceProperties/surfaceTensionModels/constant/constantSurfaceTension.C +++ b/src/transportModels/interfaceProperties/surfaceTensionModels/constant/constantSurfaceTension.C @@ -65,17 +65,10 @@ Foam::surfaceTensionModels::constant::~constant() Foam::tmp<Foam::volScalarField> Foam::surfaceTensionModels::constant::sigma() const { - return tmp<volScalarField>::New + return volScalarField::New ( - IOobject - ( - "sigma", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "sigma", + IOobject::NO_REGISTER, mesh_, sigma_ ); diff --git a/src/transportModels/interfaceProperties/surfaceTensionModels/surfaceTensionModel/surfaceTensionModelNew.C b/src/transportModels/interfaceProperties/surfaceTensionModels/surfaceTensionModel/surfaceTensionModelNew.C index e6c1f680af205f5d7370074a48eac6544056da10..dd68bbb2208e411214ff64fe0ce7a652bfb46a98 100644 --- a/src/transportModels/interfaceProperties/surfaceTensionModels/surfaceTensionModel/surfaceTensionModelNew.C +++ b/src/transportModels/interfaceProperties/surfaceTensionModels/surfaceTensionModel/surfaceTensionModelNew.C @@ -37,9 +37,11 @@ Foam::autoPtr<Foam::surfaceTensionModel> Foam::surfaceTensionModel::New const fvMesh& mesh ) { - if (dict.isDict("sigma")) + const dictionary* sigmaDictPtr = dict.findDict("sigma"); + + if (sigmaDictPtr) { - const dictionary& sigmaDict = surfaceTensionModel::sigmaDict(dict); + const dictionary& sigmaDict = *sigmaDictPtr; const word modelType(sigmaDict.get<word>("type")); diff --git a/src/transportModels/interfaceProperties/surfaceTensionModels/temperatureDependent/temperatureDependentSurfaceTension.C b/src/transportModels/interfaceProperties/surfaceTensionModels/temperatureDependent/temperatureDependentSurfaceTension.C index 488cd0e97297e6eece0ee9bce2e4f34f378ed044..8fd8d54ce9304aa71a4b652488c455d1ec28fc1e 100644 --- a/src/transportModels/interfaceProperties/surfaceTensionModels/temperatureDependent/temperatureDependentSurfaceTension.C +++ b/src/transportModels/interfaceProperties/surfaceTensionModels/temperatureDependent/temperatureDependentSurfaceTension.C @@ -72,17 +72,10 @@ Foam::surfaceTensionModels::temperatureDependent::~temperatureDependent() Foam::tmp<Foam::volScalarField> Foam::surfaceTensionModels::temperatureDependent::sigma() const { - auto tsigma = tmp<volScalarField>::New + auto tsigma = volScalarField::New ( - IOobject - ( - "sigma", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE, - IOobject::NO_REGISTER - ), + "sigma", + IOobject::NO_REGISTER, mesh_, dimSigma ); diff --git a/src/transportModels/twoPhaseProperties/alphaContactAngle/constantAlphaContactAngle/constantAlphaContactAngleFvPatchScalarField.H b/src/transportModels/twoPhaseProperties/alphaContactAngle/constantAlphaContactAngle/constantAlphaContactAngleFvPatchScalarField.H index 72dea9c83c2dc985e21e6677d89a3a7ba29e68eb..74325b5d1ea4b5852a5b2d0e6b13bd52776a22b2 100644 --- a/src/transportModels/twoPhaseProperties/alphaContactAngle/constantAlphaContactAngle/constantAlphaContactAngleFvPatchScalarField.H +++ b/src/transportModels/twoPhaseProperties/alphaContactAngle/constantAlphaContactAngle/constantAlphaContactAngleFvPatchScalarField.H @@ -103,15 +103,6 @@ public: const constantAlphaContactAngleFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new constantAlphaContactAngleFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference constantAlphaContactAngleFvPatchScalarField ( @@ -119,16 +110,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new constantAlphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/transportModels/twoPhaseProperties/alphaContactAngle/dynamicAlphaContactAngle/dynamicAlphaContactAngleFvPatchScalarField.H b/src/transportModels/twoPhaseProperties/alphaContactAngle/dynamicAlphaContactAngle/dynamicAlphaContactAngleFvPatchScalarField.H index 29f6444350d4dad9e72847013e7893e67e4880f1..97619869a19b58c33cd7caf4bb08eb23605b6a73 100644 --- a/src/transportModels/twoPhaseProperties/alphaContactAngle/dynamicAlphaContactAngle/dynamicAlphaContactAngleFvPatchScalarField.H +++ b/src/transportModels/twoPhaseProperties/alphaContactAngle/dynamicAlphaContactAngle/dynamicAlphaContactAngleFvPatchScalarField.H @@ -109,15 +109,6 @@ public: const dynamicAlphaContactAngleFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new dynamicAlphaContactAngleFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference dynamicAlphaContactAngleFvPatchScalarField ( @@ -125,16 +116,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new dynamicAlphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/transportModels/twoPhaseProperties/alphaContactAngle/temperatureDependentAlphaContactAngle/temperatureDependentAlphaContactAngleFvPatchScalarField.H b/src/transportModels/twoPhaseProperties/alphaContactAngle/temperatureDependentAlphaContactAngle/temperatureDependentAlphaContactAngleFvPatchScalarField.H index 8817bd35bf807963450fdffdf1159917afa55a3f..4193eeb257101fff035755ca6888bec63ba6f993 100644 --- a/src/transportModels/twoPhaseProperties/alphaContactAngle/temperatureDependentAlphaContactAngle/temperatureDependentAlphaContactAngleFvPatchScalarField.H +++ b/src/transportModels/twoPhaseProperties/alphaContactAngle/temperatureDependentAlphaContactAngle/temperatureDependentAlphaContactAngleFvPatchScalarField.H @@ -128,18 +128,6 @@ public: const temperatureDependentAlphaContactAngleFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new temperatureDependentAlphaContactAngleFvPatchScalarField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference temperatureDependentAlphaContactAngleFvPatchScalarField ( @@ -147,20 +135,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new temperatureDependentAlphaContactAngleFvPatchScalarField - ( - *this, - iF - ) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/transportModels/twoPhaseProperties/alphaContactAngle/timeVaryingAlphaContactAngle/timeVaryingAlphaContactAngleFvPatchScalarField.H b/src/transportModels/twoPhaseProperties/alphaContactAngle/timeVaryingAlphaContactAngle/timeVaryingAlphaContactAngleFvPatchScalarField.H index 97ffe143311445e11695ba971c46be92e6ae4cfd..b6167db80118bbf14cccb468116cb49aaabc97f5 100644 --- a/src/transportModels/twoPhaseProperties/alphaContactAngle/timeVaryingAlphaContactAngle/timeVaryingAlphaContactAngleFvPatchScalarField.H +++ b/src/transportModels/twoPhaseProperties/alphaContactAngle/timeVaryingAlphaContactAngle/timeVaryingAlphaContactAngleFvPatchScalarField.H @@ -96,15 +96,6 @@ public: const fvPatchFieldMapper& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new timeVaryingAlphaContactAngleFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference timeVaryingAlphaContactAngleFvPatchScalarField ( @@ -112,16 +103,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new timeVaryingAlphaContactAngleFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/transportModels/twoPhaseProperties/alphaFixedPressure/alphaFixedPressureFvPatchScalarField.H b/src/transportModels/twoPhaseProperties/alphaFixedPressure/alphaFixedPressureFvPatchScalarField.H index 555939fda0652e7584c1922cdf0bb0722886336e..11f4ed7adab42356c6ab682f5b8cec4042fcf8cc 100644 --- a/src/transportModels/twoPhaseProperties/alphaFixedPressure/alphaFixedPressureFvPatchScalarField.H +++ b/src/transportModels/twoPhaseProperties/alphaFixedPressure/alphaFixedPressureFvPatchScalarField.H @@ -97,15 +97,6 @@ public: const alphaFixedPressureFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new alphaFixedPressureFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference alphaFixedPressureFvPatchScalarField ( @@ -113,16 +104,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new alphaFixedPressureFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/waveModels/derivedFvPatchFields/waveAlpha/waveAlphaFvPatchScalarField.H b/src/waveModels/derivedFvPatchFields/waveAlpha/waveAlphaFvPatchScalarField.H index ce5855721fb8d78ee34b56f616ab31b0f46f25dd..419aba0d1e9acec03a55ce1884c1720a03f06503 100644 --- a/src/waveModels/derivedFvPatchFields/waveAlpha/waveAlphaFvPatchScalarField.H +++ b/src/waveModels/derivedFvPatchFields/waveAlpha/waveAlphaFvPatchScalarField.H @@ -117,15 +117,6 @@ public: const waveAlphaFvPatchScalarField& ); - //- Construct and return a clone - virtual tmp<fvPatchScalarField> clone() const - { - return tmp<fvPatchScalarField> - ( - new waveAlphaFvPatchScalarField(*this) - ); - } - //- Construct as copy setting internal field reference waveAlphaFvPatchScalarField ( @@ -133,16 +124,19 @@ public: const DimensionedField<scalar, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone + //- 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 ( const DimensionedField<scalar, volMesh>& iF ) const { - return tmp<fvPatchScalarField> - ( - new waveAlphaFvPatchScalarField(*this, iF) - ); + return fvPatchField<scalar>::Clone(*this, iF); } diff --git a/src/waveModels/derivedFvPatchFields/waveVelocity/waveVelocityFvPatchVectorField.H b/src/waveModels/derivedFvPatchFields/waveVelocity/waveVelocityFvPatchVectorField.H index 6e3860fefe9f2709f37d71c40ed88bacc8f3292f..de82730c32d3ee5a204423a7dd916d86c0b4ea10 100644 --- a/src/waveModels/derivedFvPatchFields/waveVelocity/waveVelocityFvPatchVectorField.H +++ b/src/waveModels/derivedFvPatchFields/waveVelocity/waveVelocityFvPatchVectorField.H @@ -117,15 +117,6 @@ public: const waveVelocityFvPatchVectorField& ); - //- Construct and return a clone - virtual tmp<fvPatchVectorField> clone() const - { - return tmp<fvPatchVectorField> - ( - new waveVelocityFvPatchVectorField(*this) - ); - } - //- Construct as copy setting internal field reference waveVelocityFvPatchVectorField ( @@ -133,16 +124,19 @@ public: const DimensionedField<vector, volMesh>& ); - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchVectorField> clone + //- 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 ( const DimensionedField<vector, volMesh>& iF ) const { - return tmp<fvPatchVectorField> - ( - new waveVelocityFvPatchVectorField(*this, iF) - ); + return fvPatchField<vector>::Clone(*this, iF); } diff --git a/src/waveModels/derivedPointPatchFields/waveMaker/waveMakerPointPatchVectorField.H b/src/waveModels/derivedPointPatchFields/waveMaker/waveMakerPointPatchVectorField.H index e71e9044efaac5fbb18facd2d89f2433b655d4e5..b82a92cccafeffea948673acab54cb3fdcd5d63f 100644 --- a/src/waveModels/derivedPointPatchFields/waveMaker/waveMakerPointPatchVectorField.H +++ b/src/waveModels/derivedPointPatchFields/waveMaker/waveMakerPointPatchVectorField.H @@ -248,18 +248,6 @@ public: const pointPatchFieldMapper& ); - //- Construct and return a clone - virtual autoPtr<pointPatchField<vector>> clone() const - { - return autoPtr<pointPatchField<vector>> - ( - new waveMakerPointPatchVectorField - ( - *this - ) - ); - } - //- Construct as copy setting internal field reference waveMakerPointPatchVectorField ( @@ -267,20 +255,19 @@ public: const DimensionedField<vector, pointMesh>& ); + //- Return a clone + virtual autoPtr<pointPatchField<vector>> clone() const + { + return pointPatchField<vector>::Clone(*this); + } + //- Construct and return a clone setting internal field reference virtual autoPtr<pointPatchField<vector>> clone ( const DimensionedField<vector, pointMesh>& iF ) const { - return autoPtr<pointPatchField<vector>> - ( - new waveMakerPointPatchVectorField - ( - *this, - iF - ) - ); + return pointPatchField<vector>::Clone(*this, iF); } diff --git a/src/waveModels/fvOptions/multiphaseMangrovesSource/multiphaseMangrovesSource.C b/src/waveModels/fvOptions/multiphaseMangrovesSource/multiphaseMangrovesSource.C index 6c9ad94b3eb8ed760165d2a193c9fba044c60284..8be3cd40043eb83c410ba2549d5c786973ad43d8 100644 --- a/src/waveModels/fvOptions/multiphaseMangrovesSource/multiphaseMangrovesSource.C +++ b/src/waveModels/fvOptions/multiphaseMangrovesSource/multiphaseMangrovesSource.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 IH-Cantabria - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -56,16 +56,10 @@ namespace fv Foam::tmp<Foam::volScalarField> Foam::fv::multiphaseMangrovesSource::dragCoeff(const volVectorField& U) const { - auto tdragCoeff = tmp<volScalarField>::New + auto tdragCoeff = volScalarField::New ( - IOobject - ( - typeName + ":dragCoeff", - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "dragCoeff"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless/dimTime, Zero) ); @@ -101,16 +95,10 @@ Foam::fv::multiphaseMangrovesSource::dragCoeff(const volVectorField& U) const Foam::tmp<Foam::volScalarField> Foam::fv::multiphaseMangrovesSource::inertiaCoeff() const { - auto tinertiaCoeff = tmp<volScalarField>::New + auto tinertiaCoeff = volScalarField::New ( - IOobject - ( - typeName + ":inertiaCoeff", - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "inertiaCoeff"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless, Zero) ); diff --git a/src/waveModels/fvOptions/multiphaseMangrovesTurbulenceModel/multiphaseMangrovesTurbulenceModel.C b/src/waveModels/fvOptions/multiphaseMangrovesTurbulenceModel/multiphaseMangrovesTurbulenceModel.C index e9fd781b4d767af2b0462c1f922849395bb2222f..4d5effb1141cfde52256bf6986857421a0cfe5f8 100644 --- a/src/waveModels/fvOptions/multiphaseMangrovesTurbulenceModel/multiphaseMangrovesTurbulenceModel.C +++ b/src/waveModels/fvOptions/multiphaseMangrovesTurbulenceModel/multiphaseMangrovesTurbulenceModel.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2017 IH-Cantabria - Copyright (C) 2017-2021 OpenCFD Ltd. + Copyright (C) 2017-2023 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -58,21 +58,14 @@ Foam::fv::multiphaseMangrovesTurbulenceModel::kCoeff const volVectorField& U ) const { - auto tkCoeff = tmp<volScalarField>::New + auto tkCoeff = volScalarField::New ( - IOobject - ( - typeName + ":kCoeff", - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "kCoeff"), + IOobject::NO_REGISTER, mesh_, dimensionedScalar(dimless/dimTime, Zero) ); - - volScalarField& kCoeff = tkCoeff.ref(); + auto& kCoeff = tkCoeff.ref(); forAll(zoneIDs_, i) { @@ -104,21 +97,13 @@ Foam::fv::multiphaseMangrovesTurbulenceModel::epsilonCoeff const volVectorField& U ) const { - auto tepsilonCoeff = tmp<volScalarField>::New + auto tepsilonCoeff = volScalarField::New ( - IOobject - ( - typeName + ":epsilonCoeff", - mesh_.time().timeName(), - mesh_.time(), - IOobject::NO_READ, - IOobject::NO_WRITE - ), + IOobject::scopedName(typeName, "epsilonCoeff"), mesh_, dimensionedScalar(dimless/dimTime, Zero) ); - - volScalarField& epsilonCoeff = tepsilonCoeff.ref(); + auto& epsilonCoeff = tepsilonCoeff.ref(); forAll(zoneIDs_, i) { diff --git a/src/waveModels/waveModel/waveModel.C b/src/waveModels/waveModel/waveModel.C index 21c9cf35927b3a568d7910f908301bc172a34b69..94ac68982380f83d9af3217e460fd835b59f1865 100644 --- a/src/waveModels/waveModel/waveModel.C +++ b/src/waveModels/waveModel/waveModel.C @@ -90,8 +90,7 @@ void Foam::waveModel::initialiseGeometry() } // Local face centres - const vectorField& Cf = patch_.faceCentres(); - const vectorField CfLocal(Rgl_ & Cf); + const vectorField CfLocal(Rgl_ & patch_.faceCentres()); z_ = CfLocal.component(2); // Local face extents in z-direction diff --git a/tutorials/Alltest b/tutorials/Alltest index 7ab903e7dea4ab99c44e744c228f5c0d9226fb36..554549bf1e6188eab692bd753fdb228eabdc7d0f 100755 --- a/tutorials/Alltest +++ b/tutorials/Alltest @@ -7,7 +7,7 @@ # \\/ M anipulation | #------------------------------------------------------------------------------ # Copyright (C) 2011-2016 OpenFOAM Foundation -# Copyright (C) 2017-2023 OpenCFD Ltd. +# Copyright (C) 2017-2024 OpenCFD Ltd. #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, distributed under GPL-3.0-or-later. @@ -34,6 +34,7 @@ options: -force Force overwrite of existing tutorialsTest directory -debug Adjust DebugSwitches (fvSchemes, solution) -default Sets up a default scheme on all schemes + -init Initialise/copy only without running -git Use git to retrieve the tutorials -no-git Do not use git to retrieve the tutorials -print-context Print git context for tutorials @@ -44,7 +45,7 @@ Quickly tests the tutorials and writes out the scheme/solver information. Detects and uses 'git' to obtain a fresh set of files when possible. USAGE - exit 0 # A clean exit + exit 0 # A clean exit } # Report error and exit @@ -66,7 +67,7 @@ rootDir="./" adjustDebugSwitches=false useDefaultSchemes=false useGit=auto -unset opt_backup opt_printContext +unset opt_backup opt_initOnly opt_printContext # Parse options while [ "$#" -gt 0 ] @@ -75,6 +76,7 @@ do -h* | -help*) printHelp ;; -f | -force) opt_backup='force' ;; -backup) opt_backup='backup' ;; + -init) opt_initOnly=true ;; -print-cont*) opt_printContext=true ;; -root=*) @@ -150,6 +152,7 @@ modifyCaseControlDict() { for dict in $(find . -name "controlDict*" -type f) do + case "${dict}" in (*.orig) continue;; esac cp -f "${dict}" "${dict}.orig" sed \ -e 's/\(startFrom[ \t]*\)[^ \t;]*;/\1 latestTime;/' \ @@ -200,7 +203,7 @@ __FOOTER_TEXT__ if [ "$opt_printContext" = true ] then printContext_git - exit 0 # A clean exit + exit 0 # A clean exit fi @@ -393,6 +396,19 @@ fi [ -f Allrun ] || cp -f "${FOAM_TUTORIALS:?}/Allrun" . + +#------------------------------------------------------------------------------ + +# Dispatch + +if [ "$opt_initOnly" = true ] +then + echo "Initialised only - call 'Allrun -test' separately" 1>&2 + echo " $PWD" 1>&2 + echo 1>&2 + exit 0 # A clean exit +fi + echo "Starting Allrun -test" 1>&2 echo " $PWD" 1>&2 echo 1>&2 diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0.orig/U b/tutorials/DNS/dnsFoam/boxTurb16/0.orig/U index 30a4bf3a5742dd6d6eaa30b99846466ecab04267..5b54dbfd1026aefe3a116aba9a6184478ee78704 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/0.orig/U +++ b/tutorials/DNS/dnsFoam/boxTurb16/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0.orig/p b/tutorials/DNS/dnsFoam/boxTurb16/0.orig/p index 3ed98b42b77c2993835622b85fad6053f3fa2908..d56ab8647590395073344900f753a0d373abaf71 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/0.orig/p +++ b/tutorials/DNS/dnsFoam/boxTurb16/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/constant/boxTurbDict b/tutorials/DNS/dnsFoam/boxTurb16/constant/boxTurbDict index 67041307f8791d192f935a1c84bb424054d26815..7e2370375b18ed115cc4000039c982bb6097ab24 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/constant/boxTurbDict +++ b/tutorials/DNS/dnsFoam/boxTurb16/constant/boxTurbDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/constant/transportProperties b/tutorials/DNS/dnsFoam/boxTurb16/constant/transportProperties index 4cee8a192be75a950711f67e62c45e334aaaedad..38f30a72617aa28405525c07eaf5d10ea19ca18d 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/constant/transportProperties +++ b/tutorials/DNS/dnsFoam/boxTurb16/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/constant/turbulenceProperties b/tutorials/DNS/dnsFoam/boxTurb16/constant/turbulenceProperties index a096ff4c6068ad3fc10565c4d1b5b78bfc1043cb..d134448a56865ed047ed0307287d757c2ab8cb47 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/constant/turbulenceProperties +++ b/tutorials/DNS/dnsFoam/boxTurb16/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/system/blockMeshDict b/tutorials/DNS/dnsFoam/boxTurb16/system/blockMeshDict index 5d8c730c9c931915672a28fdc0ce4d27f4270300..9611e7c6fd1019edd93dca0fd482c8042af0a838 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/system/blockMeshDict +++ b/tutorials/DNS/dnsFoam/boxTurb16/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/system/controlDict b/tutorials/DNS/dnsFoam/boxTurb16/system/controlDict index 4a61b27c224a9e1c12726d7db5e106b7d00d4d5f..38fac604dbc5a01722d0a9998d5ef9fba2509342 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/system/controlDict +++ b/tutorials/DNS/dnsFoam/boxTurb16/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/system/fvSchemes b/tutorials/DNS/dnsFoam/boxTurb16/system/fvSchemes index 629d8a97b155c1307fc2dc793d273abf71419b0e..799e353224335ee8aea86d7a75c0b4cc96f0add5 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/system/fvSchemes +++ b/tutorials/DNS/dnsFoam/boxTurb16/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/DNS/dnsFoam/boxTurb16/system/fvSolution b/tutorials/DNS/dnsFoam/boxTurb16/system/fvSolution index 2e226d8f74294a6d9b778c09766516b3d3924efb..4b132a83e7f868e0d009d499fc58e6d78c742d8c 100644 --- a/tutorials/DNS/dnsFoam/boxTurb16/system/fvSolution +++ b/tutorials/DNS/dnsFoam/boxTurb16/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/0/U b/tutorials/IO/cavity_parProfiling/0/U index f525dbc89f290b0921ef115029fd91f4dc1ff770..e9ce88a98387ad09ba8f383acbbce03ce5f7d6a6 100644 --- a/tutorials/IO/cavity_parProfiling/0/U +++ b/tutorials/IO/cavity_parProfiling/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/0/p b/tutorials/IO/cavity_parProfiling/0/p index b2996b1aea83b43276449b06911b71dd6c7be984..1160434c0147040beee61fe88aac3e1862acfb98 100644 --- a/tutorials/IO/cavity_parProfiling/0/p +++ b/tutorials/IO/cavity_parProfiling/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/constant/transportProperties b/tutorials/IO/cavity_parProfiling/constant/transportProperties index a3caf605201bf867914b3d0bd1d5735d06191822..80ab6e271d387f5dd52ad4510b6511b10d11b3f0 100644 --- a/tutorials/IO/cavity_parProfiling/constant/transportProperties +++ b/tutorials/IO/cavity_parProfiling/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/system/blockMeshDict b/tutorials/IO/cavity_parProfiling/system/blockMeshDict index fa83c046b1c74f30997d50d6edb3079c121bd54b..346dc02de8308d88abdc16217a3514c137eba842 100644 --- a/tutorials/IO/cavity_parProfiling/system/blockMeshDict +++ b/tutorials/IO/cavity_parProfiling/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/system/controlDict b/tutorials/IO/cavity_parProfiling/system/controlDict index d11716929cf842e7aaebee1ab7d663b251865e1f..b2ceb91fe786aefd2b6507ef3b74e6689ed1fe02 100644 --- a/tutorials/IO/cavity_parProfiling/system/controlDict +++ b/tutorials/IO/cavity_parProfiling/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/system/decomposeParDict b/tutorials/IO/cavity_parProfiling/system/decomposeParDict index 6c8ad61231d9be049f97eb764556e53d777321bb..9a68dbc9e09a5ee013409dca465fa60981fa2465 100644 --- a/tutorials/IO/cavity_parProfiling/system/decomposeParDict +++ b/tutorials/IO/cavity_parProfiling/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/system/fvSchemes b/tutorials/IO/cavity_parProfiling/system/fvSchemes index 2a4d2c9557f012400a22504b9e570d404863cebb..51808e9ee6d8127afb334d4da45540edfc913135 100644 --- a/tutorials/IO/cavity_parProfiling/system/fvSchemes +++ b/tutorials/IO/cavity_parProfiling/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/cavity_parProfiling/system/fvSolution.template b/tutorials/IO/cavity_parProfiling/system/fvSolution.template index a67b88e20e6f4bb040f50b8157d7fdbbddec1dc9..d88c83a55d7817b4d1aa4c6a0bb419244808a6c8 100644 --- a/tutorials/IO/cavity_parProfiling/system/fvSolution.template +++ b/tutorials/IO/cavity_parProfiling/system/fvSolution.template @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-ending1.dict b/tutorials/IO/dictionary/fatal-ending1.dict index 5451c1f5548d6c256e814efcaf692c3207b727bc..bbcc5b5ce7452015490ae9af2f1d3984c20016a9 100644 --- a/tutorials/IO/dictionary/fatal-ending1.dict +++ b/tutorials/IO/dictionary/fatal-ending1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-ending2.dict b/tutorials/IO/dictionary/fatal-ending2.dict index 03cf22150c9f31f1716dc62e4931ea4bb486a629..dac692ae8a7291a0fffd16642a34f8dca65b0b74 100644 --- a/tutorials/IO/dictionary/fatal-ending2.dict +++ b/tutorials/IO/dictionary/fatal-ending2.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-ending3.dict b/tutorials/IO/dictionary/fatal-ending3.dict index f999118ca5f87ae7ced9ba891c5b41daa2cbf000..8b4e3283a0d9e39c08ec85b83bd286c6f95fe802 100644 --- a/tutorials/IO/dictionary/fatal-ending3.dict +++ b/tutorials/IO/dictionary/fatal-ending3.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-ending4.dict b/tutorials/IO/dictionary/fatal-ending4.dict index aabb585b2e3b4aa501cbd97c9a967149da928ada..eae5338febaee131ba0ede630dee8b70d290de74 100644 --- a/tutorials/IO/dictionary/fatal-ending4.dict +++ b/tutorials/IO/dictionary/fatal-ending4.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-premature-ending1.dict b/tutorials/IO/dictionary/fatal-premature-ending1.dict index 5af9e9acf52210ca69de2ad1e77567ab01db69aa..fbefccc049b320bdab0f253aff0e5457d4cfb109 100644 --- a/tutorials/IO/dictionary/fatal-premature-ending1.dict +++ b/tutorials/IO/dictionary/fatal-premature-ending1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-premature-ending2.dict b/tutorials/IO/dictionary/fatal-premature-ending2.dict index 7133eff3c300c532876397a4dce87d82f549ad26..29edd7c155541814657f237367e74f044d4f0e5f 100644 --- a/tutorials/IO/dictionary/fatal-premature-ending2.dict +++ b/tutorials/IO/dictionary/fatal-premature-ending2.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-primitive-ending1.dict b/tutorials/IO/dictionary/fatal-primitive-ending1.dict index 5f7b292f0502c125b965ec9ea89512640e619c15..b123671e032c45b6afc66313bcc4e634efbeba0e 100644 --- a/tutorials/IO/dictionary/fatal-primitive-ending1.dict +++ b/tutorials/IO/dictionary/fatal-primitive-ending1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-primitive-ending2.dict b/tutorials/IO/dictionary/fatal-primitive-ending2.dict index c0e5b74ca1853ea332b046dd62b636cb2de5157e..7bcf34e6ad9aaf718b06003318321f4f813bf4e7 100644 --- a/tutorials/IO/dictionary/fatal-primitive-ending2.dict +++ b/tutorials/IO/dictionary/fatal-primitive-ending2.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/fatal-primitive-ending3.dict b/tutorials/IO/dictionary/fatal-primitive-ending3.dict index a41300ca87904c79c52f263065d9fd96f44973e3..e44cb3fb58dc3b6dc288d542c5a022082865bee8 100644 --- a/tutorials/IO/dictionary/fatal-primitive-ending3.dict +++ b/tutorials/IO/dictionary/fatal-primitive-ending3.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-empty2.dict b/tutorials/IO/dictionary/good-empty2.dict index 7beac3de23e9cab8c0515363cfca6c7c477796c1..6bff5a381133c877f4979ed398d5517672837991 100644 --- a/tutorials/IO/dictionary/good-empty2.dict +++ b/tutorials/IO/dictionary/good-empty2.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-ending1.dict b/tutorials/IO/dictionary/good-ending1.dict index 93ff694d1118d2ab3b59a3ea18a83a57b4501898..c5c41ccc9907e5c5f1a062beaa27cb97f2ae6456 100644 --- a/tutorials/IO/dictionary/good-ending1.dict +++ b/tutorials/IO/dictionary/good-ending1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-if1.dict b/tutorials/IO/dictionary/good-if1.dict index 8a87d9e1b9586e193549ed014543c3161f86bf83..3d84fcbdeb59a898fbde475eb3f4b82f72f19811 100644 --- a/tutorials/IO/dictionary/good-if1.dict +++ b/tutorials/IO/dictionary/good-if1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-if2.dict b/tutorials/IO/dictionary/good-if2.dict index 5436afa38e02fd90c35b525ccc35cb9a0d96b55c..e2302fc46e40823d4467425407512de50f6a2c60 100644 --- a/tutorials/IO/dictionary/good-if2.dict +++ b/tutorials/IO/dictionary/good-if2.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-if3.dict b/tutorials/IO/dictionary/good-if3.dict index 62fcdf50c1887463e3aa6d0e04ff0ecee4fc92d7..390aafb3fdcf8cc6f9fefde9a36aa33593eee020 100644 --- a/tutorials/IO/dictionary/good-if3.dict +++ b/tutorials/IO/dictionary/good-if3.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-primitive-ending1.dict b/tutorials/IO/dictionary/good-primitive-ending1.dict index 0c495e0db0fe5ebed0c85928875d24bb3dd99977..a4b04ebfa092cb02c11aebee010f5f7df196fafd 100644 --- a/tutorials/IO/dictionary/good-primitive-ending1.dict +++ b/tutorials/IO/dictionary/good-primitive-ending1.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/good-word-expand.dict b/tutorials/IO/dictionary/good-word-expand.dict index 64b5cf2e8f76326111fd5d9200c212d6fda9cac5..974fbd9ed5e9f10ac223f3fe3c5a651a7e0b5bf7 100644 --- a/tutorials/IO/dictionary/good-word-expand.dict +++ b/tutorials/IO/dictionary/good-word-expand.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/dictionary/missed-ending3.dict b/tutorials/IO/dictionary/missed-ending3.dict index 5dcabfdeb437d37f79425c40269da0dab1c86f05..e66081050425f7657a66f47d80cd62b802c117ff 100644 --- a/tutorials/IO/dictionary/missed-ending3.dict +++ b/tutorials/IO/dictionary/missed-ending3.dict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/0.orig/U b/tutorials/IO/fileHandler/0.orig/U index 84460e838fe29973d1180390e57436fbc3e5ef09..fd0d516e3b3f673b4de4978897fd37e4c3af8e14 100644 --- a/tutorials/IO/fileHandler/0.orig/U +++ b/tutorials/IO/fileHandler/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/constant/g b/tutorials/IO/fileHandler/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/IO/fileHandler/constant/g +++ b/tutorials/IO/fileHandler/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/constant/kinematicCloudPositions b/tutorials/IO/fileHandler/constant/kinematicCloudPositions index 9a8ab579be259362634265d3b2deb38a5d5a762f..918bfa6dc15a719c7f8d5c5b4119cbda182b90a2 100644 --- a/tutorials/IO/fileHandler/constant/kinematicCloudPositions +++ b/tutorials/IO/fileHandler/constant/kinematicCloudPositions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/constant/kinematicCloudProperties b/tutorials/IO/fileHandler/constant/kinematicCloudProperties index 31d0804df4b951238203350f4ba39d6ab8ad5401..91fc6654b9ed82cb019da34c37ae074297d0ce16 100644 --- a/tutorials/IO/fileHandler/constant/kinematicCloudProperties +++ b/tutorials/IO/fileHandler/constant/kinematicCloudProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/constant/transportProperties b/tutorials/IO/fileHandler/constant/transportProperties index edf29087369bcce562f95ea8e402d340c4c3a573..eb26b6d0f4a8135079170376806e1906f28e09ad 100644 --- a/tutorials/IO/fileHandler/constant/transportProperties +++ b/tutorials/IO/fileHandler/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/constant/turbulenceProperties b/tutorials/IO/fileHandler/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/IO/fileHandler/constant/turbulenceProperties +++ b/tutorials/IO/fileHandler/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/system/blockMeshDict b/tutorials/IO/fileHandler/system/blockMeshDict index 4c34570cce1ecf3938a0efd4f44b533aa36e0441..ca6fe397e5cfbc1a32420e4ecb2e52e45b67caa4 100644 --- a/tutorials/IO/fileHandler/system/blockMeshDict +++ b/tutorials/IO/fileHandler/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/system/controlDict b/tutorials/IO/fileHandler/system/controlDict index c6fbc454905701359e111eca80c3e2cf4ce4e7c2..4cafe3f06e60d9c087c30174352cbfe81460721c 100644 --- a/tutorials/IO/fileHandler/system/controlDict +++ b/tutorials/IO/fileHandler/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/system/decomposeParDict b/tutorials/IO/fileHandler/system/decomposeParDict index ce967705b8b5076aed0dd0a22d249468df6643cd..82f934f6452d665e05510d521c458c6e7d3b2842 100644 --- a/tutorials/IO/fileHandler/system/decomposeParDict +++ b/tutorials/IO/fileHandler/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/system/fvSchemes b/tutorials/IO/fileHandler/system/fvSchemes index 9124d3caed72b975954d6eaaddbe5b32b23cd6fc..51423a94bfac8d033f345b9424a0a6b7ac7fb099 100644 --- a/tutorials/IO/fileHandler/system/fvSchemes +++ b/tutorials/IO/fileHandler/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler/system/fvSolution b/tutorials/IO/fileHandler/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/IO/fileHandler/system/fvSolution +++ b/tutorials/IO/fileHandler/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/0/U b/tutorials/IO/fileHandler_dynamicCode/0/U index f525dbc89f290b0921ef115029fd91f4dc1ff770..e9ce88a98387ad09ba8f383acbbce03ce5f7d6a6 100644 --- a/tutorials/IO/fileHandler_dynamicCode/0/U +++ b/tutorials/IO/fileHandler_dynamicCode/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/0/p b/tutorials/IO/fileHandler_dynamicCode/0/p index b2996b1aea83b43276449b06911b71dd6c7be984..1160434c0147040beee61fe88aac3e1862acfb98 100644 --- a/tutorials/IO/fileHandler_dynamicCode/0/p +++ b/tutorials/IO/fileHandler_dynamicCode/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/constant/transportProperties b/tutorials/IO/fileHandler_dynamicCode/constant/transportProperties index a3caf605201bf867914b3d0bd1d5735d06191822..80ab6e271d387f5dd52ad4510b6511b10d11b3f0 100644 --- a/tutorials/IO/fileHandler_dynamicCode/constant/transportProperties +++ b/tutorials/IO/fileHandler_dynamicCode/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/blockMeshDict b/tutorials/IO/fileHandler_dynamicCode/system/blockMeshDict index c2da56f47412aae82261c7e396761ae4cee33987..ea546147f9adfc0ec3cd23bdaa1b0edc736ad6a9 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/blockMeshDict +++ b/tutorials/IO/fileHandler_dynamicCode/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/controlDict b/tutorials/IO/fileHandler_dynamicCode/system/controlDict index 4e3afc109a427e66fbea66fc6c242cb5415e0447..499cbbb85f16ec559923d933d9c190c7d4ffdd38 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/controlDict +++ b/tutorials/IO/fileHandler_dynamicCode/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/decomposeParDict b/tutorials/IO/fileHandler_dynamicCode/system/decomposeParDict index deb7d98a7fe91d6c3508bcd3708971b66419c5ca..a6a6703b63a7cdf309e132c6d9197b7d0c7fd528 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/decomposeParDict +++ b/tutorials/IO/fileHandler_dynamicCode/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/fvSchemes b/tutorials/IO/fileHandler_dynamicCode/system/fvSchemes index 2a4d2c9557f012400a22504b9e570d404863cebb..51808e9ee6d8127afb334d4da45540edfc913135 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/fvSchemes +++ b/tutorials/IO/fileHandler_dynamicCode/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution index ddbf2bf3f9171e48c51c30ae74ce8c4d3511cc7a..b1df8765cbc55719d507565d7d73a8c135273670 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution +++ b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.0 b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.0 index 059a9f375ca456bc727762ee9e5f58a397297c70..92417b46fdf134b38c441c55f9686cd8eb3dbd6d 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.0 +++ b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.5 b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.5 index ddbf2bf3f9171e48c51c30ae74ce8c4d3511cc7a..b1df8765cbc55719d507565d7d73a8c135273670 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.5 +++ b/tutorials/IO/fileHandler_dynamicCode/system/fvSolution.5 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/solverControls b/tutorials/IO/fileHandler_dynamicCode/system/solverControls index cd39033a9aa0bee498dda3d9dbbd484fa4297deb..abae222460221be76a60b94c98258645e96046f6 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/solverControls +++ b/tutorials/IO/fileHandler_dynamicCode/system/solverControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/solverControls.0 b/tutorials/IO/fileHandler_dynamicCode/system/solverControls.0 index 418c6b27d69b978c42e29a67e24efb9721f3db89..4b1b570f3f645fc57971c0e70be6c0372b217f79 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/solverControls.0 +++ b/tutorials/IO/fileHandler_dynamicCode/system/solverControls.0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/fileHandler_dynamicCode/system/solverControls.5 b/tutorials/IO/fileHandler_dynamicCode/system/solverControls.5 index cd39033a9aa0bee498dda3d9dbbd484fa4297deb..abae222460221be76a60b94c98258645e96046f6 100644 --- a/tutorials/IO/fileHandler_dynamicCode/system/solverControls.5 +++ b/tutorials/IO/fileHandler_dynamicCode/system/solverControls.5 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/U b/tutorials/IO/systemCall/0.orig/U index 187232313d660426c8547b46f1bdd069f94473b9..75f7136e70d1e074c39e4a1ab6529b4d926787e0 100644 --- a/tutorials/IO/systemCall/0.orig/U +++ b/tutorials/IO/systemCall/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/include/fixedInlet b/tutorials/IO/systemCall/0.orig/include/fixedInlet index 4c91f75fc285d6f660b5646694b1b944c337f2ed..125fbb7bc20e6e06b7203d3c70e0bc77b6db089c 100644 --- a/tutorials/IO/systemCall/0.orig/include/fixedInlet +++ b/tutorials/IO/systemCall/0.orig/include/fixedInlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/include/frontBackUpperPatches b/tutorials/IO/systemCall/0.orig/include/frontBackUpperPatches index 19b3e2353d70716c4e9020bb3c03448d58a4ae17..f17a37762cf61bf0ddd1eba9777f547f2d88f22a 100644 --- a/tutorials/IO/systemCall/0.orig/include/frontBackUpperPatches +++ b/tutorials/IO/systemCall/0.orig/include/frontBackUpperPatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/include/initialConditions b/tutorials/IO/systemCall/0.orig/include/initialConditions index 1688de8bbe9a8b4324532c7c7590cac80cf01c12..6b897d6d9d59ae18ca805ca6d1d1733edaf48165 100644 --- a/tutorials/IO/systemCall/0.orig/include/initialConditions +++ b/tutorials/IO/systemCall/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/k b/tutorials/IO/systemCall/0.orig/k index 214d6603dc98ce157ae54eed8e16dc8e1f5aef4b..9406e6c421c98219491002ec9de8f5433133d1f3 100644 --- a/tutorials/IO/systemCall/0.orig/k +++ b/tutorials/IO/systemCall/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/nut b/tutorials/IO/systemCall/0.orig/nut index e9516bd5fde70d292f065a14ace6016436317e7d..2d475ca9ce4a5c2b43aeb5b040fbfcb0afe1c9e7 100644 --- a/tutorials/IO/systemCall/0.orig/nut +++ b/tutorials/IO/systemCall/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/omega b/tutorials/IO/systemCall/0.orig/omega index 135a6bd2c49186db443be8cab03339f556d009c1..071b2f5497fef16e15beadcd53ad20d3e41fe071 100644 --- a/tutorials/IO/systemCall/0.orig/omega +++ b/tutorials/IO/systemCall/0.orig/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/0.orig/p b/tutorials/IO/systemCall/0.orig/p index fdf959107500a89433d20c0d077043ee18b6e878..29d63c931abe6de72ca82bcf83445f3140e94ba9 100644 --- a/tutorials/IO/systemCall/0.orig/p +++ b/tutorials/IO/systemCall/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/constant/transportProperties b/tutorials/IO/systemCall/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/IO/systemCall/constant/transportProperties +++ b/tutorials/IO/systemCall/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/constant/turbulenceProperties b/tutorials/IO/systemCall/constant/turbulenceProperties index e5d396e2b4ef050b52663b42ec4ec1dea873f527..c1d5ac10f3ff6401c6ced11b5eb7d12a818ee895 100644 --- a/tutorials/IO/systemCall/constant/turbulenceProperties +++ b/tutorials/IO/systemCall/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/system/blockMeshDict b/tutorials/IO/systemCall/system/blockMeshDict index f9ac7e9ec952d7971a7a5e644c162f0c5732f1b0..f4917ff1e296247958efac413496ab48e3335c5d 100644 --- a/tutorials/IO/systemCall/system/blockMeshDict +++ b/tutorials/IO/systemCall/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/system/controlDict b/tutorials/IO/systemCall/system/controlDict index 317bddbb825705b21423549635d78ec4597bcc2b..bd966938b89986d3f59813d3b448e23b12ed0e0a 100644 --- a/tutorials/IO/systemCall/system/controlDict +++ b/tutorials/IO/systemCall/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/system/decomposeParDict b/tutorials/IO/systemCall/system/decomposeParDict index dbee1d4f982580652e3e20ef0179fd6311cf4c75..3a884d08c8af7028e8626ea14667f5ff0ba796be 100644 --- a/tutorials/IO/systemCall/system/decomposeParDict +++ b/tutorials/IO/systemCall/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/system/fvSchemes b/tutorials/IO/systemCall/system/fvSchemes index 00ddba314195ebf98d4783123e7d8b31ad15081a..d7d6dead9b99d77a51de8ef9c2613395accd3944 100644 --- a/tutorials/IO/systemCall/system/fvSchemes +++ b/tutorials/IO/systemCall/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/IO/systemCall/system/fvSolution b/tutorials/IO/systemCall/system/fvSolution index 7b4f83588cae32e2526192cbb6b7ae0bac31b209..09395f6766758b6ba9134df261f03ef628a66526 100644 --- a/tutorials/IO/systemCall/system/fvSolution +++ b/tutorials/IO/systemCall/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/T b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/T index 8ba06dc958978ce06e3e6eebf4982e7d55f57441..608400e4bfb3f551b53547c277bd15d0fe17846f 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/T +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/U b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/U index cf2c049a844b40ae337fe2617195a6006b3eb041..6d23a972a19ae1a9ecae61fbe68286ad46a2b710 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/U +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/epsilon b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/epsilon index 97c129a27f76d7a02032e08d850079d7fd05adb4..2d921a6d3402a86b3ba4c8065cde9e709fc0c258 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/epsilon +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/include/emptyPatches b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/include/emptyPatches index 919dc2bf7d0d9696122efec7b4f17599020dd6f3..2fe70d8a550a592ef40a42dc23cc125c3218451c 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/include/emptyPatches +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/include/emptyPatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/k b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/k index 9dbb2c984dcd3d2ad22d9bf470771a74202021f3..ea103ad4e36804fde81e07580acf8a7105a0a3e4 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/k +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p index 5641d760c0208b66c61efe03074d2fad3b702dfb..e936d9661cf7b4f2cc661b9e4663ccd02b343499 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p_rgh b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p_rgh index b1db9bb7148f98716a3f1f85086a19849b739e3f..c6d8c726cae7c5aa0ec4725d3254d09837a70711 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p_rgh +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/g b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/g index 73165d17b42668873dec18b27f53d31713c36002..7f6eb4aeb7cf353d6fce881ce68be5456fdcf4f7 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/g +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/radiationProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/radiationProperties index 87414923dfc3fa7d6e5a13cfcb9252e6b20c372f..8321a595246d247c9ea34fc55ce4814d56354528 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/radiationProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/thermophysicalProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/thermophysicalProperties index 4fb310aa8302d6ce6c878e992a07d15f4098a0d4..8e114f43c93376c5d67d3741669e0a282b925ce7 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/thermophysicalProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/leftSolid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/regionProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/regionProperties index 6e6ee761b18665827939f68debea2f4488fd778e..245014e9edfe03e472ff05784f4c6b3b9bd2b04e 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/regionProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/radiationProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/radiationProperties index 470fe1d13be4308397294913c9a409befd0e3bbf..fc5e2c245c95917edb842059b2faa646fc9a2a98 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/radiationProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/thermophysicalProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/thermophysicalProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/turbulenceProperties b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/turbulenceProperties +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/constant/rightFluid/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/blockMeshDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/blockMeshDict index 69bb3fd336ed5a0b4aba65a689b268d4435e5db3..ed94b220c2c81a7fb4032b8a48d398c68aa5d035 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/blockMeshDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/controlDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/controlDict index 644042b67b7b268f3ed510d155137d50a77cccb0..8faffd62223ccc99158c540cba60c220f75c844a 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/controlDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSchemes b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSchemes +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSolution b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSolution index 856925603d57378fe161e63068ed5ff54186250a..e374fc9835703a694ec5c074784e951d3e49db35 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSolution +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/changeDictionaryDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/changeDictionaryDict index 01f883bc87e72c4228fd5f085f9c84823eeb5641..eb84a73d68a75b6ed1c468a0b0287ca5e649d44c 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/changeDictionaryDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSchemes b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSchemes index 10cba96afaa72706ce2b5a82f5f119f50f960221..eeb1bc9315b8ddbe44708c71792f78af626504cc 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSchemes +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSolution b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSolution index 742c0432e68e541f06c3a631fd241677daf182ae..843175e80e11328db868ae79f5f108527d15cf4d 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSolution +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/changeDictionaryDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/changeDictionaryDict index f02a8577bcdd9a385bd5061d3addbde4b836be9f..749db35b1f9fa7244ec6fe6bb41f2bb6c8275ea0 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/changeDictionaryDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/createBafflesDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/createBafflesDict index c1a5bf8f95317b5349ad1d6db35b4552985c7f8b..5e1cdc353d4b2925656a841bc6747890f0c10808 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/createBafflesDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSchemes b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSchemes index 4b5103e9f8f18794fb92744c7f1ba1ac6ac27660..d201c3c6120a4fd118183515cbe0a8542b56c439 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSchemes +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSolution b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSolution index f9414c96913c89b76046d47a1363120b6d24b7f8..5cc5be43613a991113241215c6c3d74c0202c415 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSolution +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/rightFluid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict index 8c39d7696db7a07a0d8390f6e6171c1b8e83e81b..0e28f37ffe4a18507f5af9efe15fc2c7d86bd53c 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict.f1 b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict.f1 index c5096488a773aeb29adf76cfab7fab0ca925569d..9250c1727d455ce5b6b276e4e31b2ae570a6af7d 100644 --- a/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict.f1 +++ b/tutorials/basic/chtMultiRegionFoam/2DImplicitCyclic/system/topoSetDict.f1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/0.orig/T b/tutorials/basic/laplacianFoam/flange/0.orig/T index fb313f3f97e9e96a339ce07d75ea69c22b4d2ddd..21f0eb5cf1094a177775c165aa506442799d0f56 100644 --- a/tutorials/basic/laplacianFoam/flange/0.orig/T +++ b/tutorials/basic/laplacianFoam/flange/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/constant/transportProperties b/tutorials/basic/laplacianFoam/flange/constant/transportProperties index 1c216f86034c6e2d082b75e9e6d6547305c19450..c82288a7ffbdf88bce3be56c8eb42ba3c29a06f3 100644 --- a/tutorials/basic/laplacianFoam/flange/constant/transportProperties +++ b/tutorials/basic/laplacianFoam/flange/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/system/controlDict b/tutorials/basic/laplacianFoam/flange/system/controlDict index 897d4016beecc35e6b7f36fa8f9967cbdce5ef95..78eb46e010078035e0b96160a45429a78ae958e4 100644 --- a/tutorials/basic/laplacianFoam/flange/system/controlDict +++ b/tutorials/basic/laplacianFoam/flange/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/system/decomposeParDict b/tutorials/basic/laplacianFoam/flange/system/decomposeParDict index 6c262b34d7c58d30cbdbf09d469ae0d6d845ec1b..a1a1da626bd1ed4145dee7bfce761b4d52d35c42 100644 --- a/tutorials/basic/laplacianFoam/flange/system/decomposeParDict +++ b/tutorials/basic/laplacianFoam/flange/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/system/fvSchemes b/tutorials/basic/laplacianFoam/flange/system/fvSchemes index d3a15ae4de883a52f8694d07ac8838494ecb9e44..523e7bc40c962a7844da293b11f67b9b7397598c 100644 --- a/tutorials/basic/laplacianFoam/flange/system/fvSchemes +++ b/tutorials/basic/laplacianFoam/flange/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/flange/system/fvSolution b/tutorials/basic/laplacianFoam/flange/system/fvSolution index caf20ad3767692557a525307dbfad79feeb474c4..cab386402ed1278e2c81b983038c9e8e60aa5cad 100644 --- a/tutorials/basic/laplacianFoam/flange/system/fvSolution +++ b/tutorials/basic/laplacianFoam/flange/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/0/T b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/0/T index d10f8c3da41df7cce77e974fe149d566516a6bb6..501d84da3d675dc6b259565db08c3ae651fed93e 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/0/T +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/Allrun b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/Allrun index db26364b0e5b32ec2427e261e571371b3c515ba0..5ca111a201a4b5ea3120777848620f805af8ec3e 100755 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/Allrun +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/Allrun @@ -11,4 +11,18 @@ runApplication decomposePar runParallel $(getApplication) -debug-switch GAMGAgglomeration + +# Try again with random decomposition. Needs a few more cells to create +# proper agglomeration - otherwise processorAgglomerator complains + +decompDict="-decomposeParDict system/decomposeParDict.random" + +runApplication -s random \ + decomposePar -force $decompDict + +runParallel -s random refineMesh -overwrite $decompDict + +runParallel -s random \ + $(getApplication) $decompDict -debug-switch GAMGAgglomeration + #------------------------------------------------------------------------------ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/constant/transportProperties b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/constant/transportProperties index 5d74f54db0765a340acb2bd1087a06665d32af55..39f9579daa9a80142e7865307d119d8f260ab7f2 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/constant/transportProperties +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/blockMeshDict b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/blockMeshDict index 64cbb04640e57344d10bde019b786351116e3c00..54a75419c9713066e442db62eb27476323ceb77b 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/controlDict b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/controlDict index 78a1986794eda6948aa858ffc22410a1bcaad07a..534c6b00a2e5ac06b23f799acab66ca3ed77e576 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/controlDict +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -17,7 +17,7 @@ FoamFile application laplacianFoam; -startFrom latestTime; +startFrom startTime; //latestTime; startTime 0; diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict index fa584aa1e05e2a61afd32996eacc3d8139aa8b5f..7f764347c446a2f317706e06edc1ec1d0edf410d 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict.random b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict.random new file mode 100644 index 0000000000000000000000000000000000000000..4d844ed6fd3a796b08fdc96ae29f4bb00967fb57 --- /dev/null +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/decomposeParDict.random @@ -0,0 +1,25 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: v2406 | +| \\ / A nd | Website: www.openfoam.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//- The total number of domains (mandatory) +numberOfSubdomains 4; + +//- The decomposition method (mandatory) +method random; + +// NOTE: no patch constraints! + +// ************************************************************************* // diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSchemes b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSchemes index 6ca6eae217e86b9679556cbe296ccabae8fff0d7..cc30cf8904ea10c653b0c145cdd74e79cef014bc 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSchemes +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSolution b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSolution index 3c0d0a65303ec5da658dba76487dbdc4876d4742..fe38bf5d707c654971811240e2214d3f096f8167 100644 --- a/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSolution +++ b/tutorials/basic/laplacianFoam/implicitAMI-nonblocking/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/common/constant/transportProperties b/tutorials/basic/laplacianFoam/multiWorld1/common/constant/transportProperties index 1c216f86034c6e2d082b75e9e6d6547305c19450..c82288a7ffbdf88bce3be56c8eb42ba3c29a06f3 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/common/constant/transportProperties +++ b/tutorials/basic/laplacianFoam/multiWorld1/common/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/common/system/controlDict b/tutorials/basic/laplacianFoam/multiWorld1/common/system/controlDict index ecdeb9e451de9e0b3eade478bc5d4347d24945ae..43c842abee0d8de5ef9071424b9f2a68ee6a8d49 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/common/system/controlDict +++ b/tutorials/basic/laplacianFoam/multiWorld1/common/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/common/system/decomposeParDict b/tutorials/basic/laplacianFoam/multiWorld1/common/system/decomposeParDict index 1349afd2e14ee7ce1cc7d807100619765a0ac485..2d2fbcaa1ef1e624ed1ab76f70a7bf10b640b7b1 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/common/system/decomposeParDict +++ b/tutorials/basic/laplacianFoam/multiWorld1/common/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSchemes b/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSchemes index b0c1565bff76da3b7c3c3369796df522ed518647..ef48d4d80c6fc3928cdb043615c9118b1e445da9 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSchemes +++ b/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSolution b/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSolution index caf20ad3767692557a525307dbfad79feeb474c4..cab386402ed1278e2c81b983038c9e8e60aa5cad 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSolution +++ b/tutorials/basic/laplacianFoam/multiWorld1/common/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/left/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld1/left/0.orig/T index 9d4ac838e27d367e05c8cf8e0d43732bdc4cd86c..e97b6eb235ae5fbc78a5e216703bbd02d448ac92 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/left/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld1/left/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/left/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld1/left/system/blockMeshDict index dc691f3be6a02dc2bff0ad604f11e56264f85a8c..ee6e329476fc13696b08e2e465cfdfce805aefde 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/left/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld1/left/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/right/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld1/right/0.orig/T index 61f1a8369b0450fc36a8e89b63039e517eb5b88c..f0a576eea94e994401b9ca6541eb55f027e4a895 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/right/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld1/right/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld1/right/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld1/right/system/blockMeshDict index 3dadc920d47d3e1cbc79b2ececd90ced7558d4eb..f7f2e070ee229c0b03569f7772d5472332c814b2 100644 --- a/tutorials/basic/laplacianFoam/multiWorld1/right/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld1/right/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/common/constant/transportProperties b/tutorials/basic/laplacianFoam/multiWorld2/common/constant/transportProperties index 5d74f54db0765a340acb2bd1087a06665d32af55..39f9579daa9a80142e7865307d119d8f260ab7f2 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/common/constant/transportProperties +++ b/tutorials/basic/laplacianFoam/multiWorld2/common/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/common/system/controlDict b/tutorials/basic/laplacianFoam/multiWorld2/common/system/controlDict index aba05411b8bccbdb3a22fb52c7e9af11fa3b257f..1683a40a03cb5a875d187c96e2e0e5124e3fafe6 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/common/system/controlDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/common/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/common/system/decomposeParDict b/tutorials/basic/laplacianFoam/multiWorld2/common/system/decomposeParDict index b36149ebef7dc5cc2f4c98d6a03cc4f3275b0aff..981ace6f29746e07702c7591d129986b56d3d30a 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/common/system/decomposeParDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/common/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSchemes b/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSchemes index 6ca6eae217e86b9679556cbe296ccabae8fff0d7..cc30cf8904ea10c653b0c145cdd74e79cef014bc 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSchemes +++ b/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSolution b/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSolution index 5f41211552671da70c72ed364f4d2b33850d8c67..a69474bba9ca108eaedcf17f93d1673106a96181 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSolution +++ b/tutorials/basic/laplacianFoam/multiWorld2/common/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab1/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld2/slab1/0.orig/T index bdb2ae362ed4f365414c36f8daca5e6fc6354429..66dfbcc9172952e110d5aa8f17607fdc6c473621 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab1/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab1/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab1/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld2/slab1/system/blockMeshDict index 1bd97f85b9694f484c0d02927fd40d8ccc6ea7db..a0bdeff456940359ec721960eed4c44939f8b34c 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab1/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab1/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab2/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld2/slab2/0.orig/T index e1b14ef332136de6bc36081f2ad6ae1f8ecaf407..9c10f7cf4bae05206471d76627da1962e70143cc 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab2/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab2/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab2/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld2/slab2/system/blockMeshDict index ee4ff0fcc814aa43071ed1543406b9dfe3470db0..5153abf0479882537e69d1675508da93de83356f 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab2/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab2/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab3/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld2/slab3/0.orig/T index 2d18153b7e936916fd53937ad88599b725186069..7538ed8c0781830774ad802bff875539fdd47931 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab3/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab3/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab3/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld2/slab3/system/blockMeshDict index c68e40b56ce630170a025aab34c959d8e71b3f74..e062cd309eab414ce0666554f67a47272fbff502 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab3/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab3/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab4/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld2/slab4/0.orig/T index 61208032dcfc501a35ffbcc1e9bff36bfc43603a..c74cd3e7a47ef6d38b031d460b2f48f01570d512 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab4/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab4/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/slab4/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld2/slab4/system/blockMeshDict index 77b0f0f90fbd5fab723005f198a22b7546b600b5..d90cfc986ec7730b1ffa6961a2847b6e6a7d9cf0 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/slab4/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/slab4/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/top/0.orig/T b/tutorials/basic/laplacianFoam/multiWorld2/top/0.orig/T index 03ff2d3dcf276e99c815485085e62b225aaae9ee..17ff58b2ad339e15a138606038e346bea80957f1 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/top/0.orig/T +++ b/tutorials/basic/laplacianFoam/multiWorld2/top/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/top/system/blockMeshDict b/tutorials/basic/laplacianFoam/multiWorld2/top/system/blockMeshDict index 4391583250a54ba2d6a3ce99fd0825209bb93512..16429d79d8d14fcd091d93cc1a4f1a776200bb0b 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/top/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/top/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/top/system/createPatchDict b/tutorials/basic/laplacianFoam/multiWorld2/top/system/createPatchDict index ad3e6f57178f5327cad6048149c30d31e283477f..acb1f39d229b958bfa5fdcffab06bc72f4af50ca 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/top/system/createPatchDict +++ b/tutorials/basic/laplacianFoam/multiWorld2/top/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/multiWorld2/top/system/topoSetDict.patches b/tutorials/basic/laplacianFoam/multiWorld2/top/system/topoSetDict.patches index e8aa9a6739915847584b6092b807e59ac3ac95c3..b05a8d139bc348140282f0a8c6f13985c25c19e4 100644 --- a/tutorials/basic/laplacianFoam/multiWorld2/top/system/topoSetDict.patches +++ b/tutorials/basic/laplacianFoam/multiWorld2/top/system/topoSetDict.patches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/0/T b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/0/T index 059152e1241cbffe1dd5d916ceac179d0de2a02f..455b693ab36684a9ac59a51ddba87f1761ab18f2 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/0/T +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/constant/transportProperties b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/constant/transportProperties index 5d74f54db0765a340acb2bd1087a06665d32af55..39f9579daa9a80142e7865307d119d8f260ab7f2 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/constant/transportProperties +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/blockMeshDict b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/blockMeshDict index 35999c5dafb41d82c33949ba1ada86314828ce6f..593d0fbd11662fc388a2b1d61eb2c25cce5b7d2c 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/blockMeshDict +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/controlDict b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/controlDict index 7f8e39e5becb1bb1fef25921f7c95423b5c834c8..4afcc874bb7986352d4604a9de5fac00de2e09a0 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/controlDict +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/decomposeParDict b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/decomposeParDict index fc6e964aed2c431d72ac4a79c9dc4c11bb8d3b36..5d06afcaa5b38a84eb3c9bcd21db36f29884acd5 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/decomposeParDict +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSchemes b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSchemes index 6ca6eae217e86b9679556cbe296ccabae8fff0d7..cc30cf8904ea10c653b0c145cdd74e79cef014bc 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSchemes +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSolution b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSolution index 5f41211552671da70c72ed364f4d2b33850d8c67..a69474bba9ca108eaedcf17f93d1673106a96181 100644 --- a/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSolution +++ b/tutorials/basic/laplacianFoam/twoBlocks-processorAgglom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/T b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/T index 6c8b4f1bc6c65a0ed819dcea61a27a858c887bf1..9ba6b0a17ef2fa6c00ff1bae3f754f167539e2ba 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/T +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/cellDisplacement b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/cellDisplacement index 90363e675e51ea709fa12f551edf2084744c52b9..95e62bac6b9e36ddc11ebfad69b769d88fd006bf 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/cellDisplacement +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/cellDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/pointDisplacement b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/pointDisplacement index 52cf782da3bd7a22866212f58e181ad43dbeabb1..65ec7d346ebb467f82b1a74fe435dd1f33644238 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/pointDisplacement +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/zoneID b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/zoneID index e1dcb667022d0bd58bd96beadaaa186612ed2159..e6a563b8866142064502530b9fa5c77e604a0613 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/zoneID +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/dynamicMeshDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/dynamicMeshDict index ce1537bfea06aa6729e9d0f46b1578ac81e125d2..3df3c047053655371853155937913b63875e05da 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/dynamicMeshDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/transportProperties b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/transportProperties index 75816436a30d2fb4bfe10dfe2f98860f9b6ea16d..f2791d85abf6907c7e66339cabcb06beeaa30c7a 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/transportProperties +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/blockMeshDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/blockMeshDict index c4ad38cb35a3c34d219f9d728ee77449cdb9cb44..2137c0d54d4d1066cc57a21b4fc091aa872726c1 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/blockMeshDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/controlDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/controlDict index 5f160e7b001ab2e4027e8c73a1ce1eee8953278d..9f7984229d989303611ad72ea76241047406d988 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/controlDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict index d8b64837bf44b45a3d37642532ae66ae11654ee9..b130e886b192974a445f7877a8081666f16b0c06 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSchemes b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSchemes index fa8a04d35935f8720a503218249f647d4dafe318..dd34241c8def16642da8884d0df91407b225ff64 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSchemes +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSolution b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSolution index ea8202358e8c2f8440e8bc989e683ba71b0eaf0d..759c7a6801849acac7d0704e2d5303e3c29e962a 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSolution +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/setFieldsDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/setFieldsDict index b16106caeff2eb807321f8db76e0bc5d8350b13d..99bee0020b6652fbf0f2f06f638aca8ff38253e5 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/setFieldsDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/topoSetDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/topoSetDict index 51446137af1f4c079821007974795aff8eaa5e16..adaa18551bd6b488d082e88feb5e1f4b0d615990 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/topoSetDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/T b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/T index ad9d66ed4c3dc3a3d496ef9b909d8ccac7c4ab90..cf3a13e8114e250188bc34f7e96f280141b877a8 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/T +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/cellDisplacement b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/cellDisplacement index 90363e675e51ea709fa12f551edf2084744c52b9..95e62bac6b9e36ddc11ebfad69b769d88fd006bf 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/cellDisplacement +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/cellDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/pointDisplacement b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/pointDisplacement index 52cf782da3bd7a22866212f58e181ad43dbeabb1..65ec7d346ebb467f82b1a74fe435dd1f33644238 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/pointDisplacement +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/zoneID b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/zoneID index e1dcb667022d0bd58bd96beadaaa186612ed2159..e6a563b8866142064502530b9fa5c77e604a0613 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/zoneID +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/dynamicMeshDict b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/dynamicMeshDict index 6d871df827295b798cdca6a7c1def27a55c26b59..0c2ab4877251b8129e31128ce75275e90b30ab2a 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/dynamicMeshDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/transportProperties b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/transportProperties index 1ac7b919f34ce15283695ba48fdcba6afda54564..610f7ad959f384dcb5e23217c257ac0b029d9964 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/transportProperties +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/blockMeshDict b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/blockMeshDict index 64cab9ea08268ebd7c44f700992f6228488360aa..04bb8fe9cd87d7e6205667250925881bb9e21e79 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/blockMeshDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/controlDict b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/controlDict index c16d3dfa4aa2c9b74f39f37ddfe44ea924666fad..75e50dab8c56a948500b2123979bef94aa15b9e6 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/controlDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSchemes b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSchemes index 676030b06f0b175c8e5ff517ae8118b43ea7db52..a8f0b6b34c43f1c002a15b68160040e06210235b 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSchemes +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSolution b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSolution index 32a5d996ae676b3b795f16aba3e18d79ec66e618..7fc8a4fa6436b665789c5b5e59796fe10cd6aa91 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSolution +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/setFieldsDict b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/setFieldsDict index 2324d0e18047c84e27eb33a291a0a996ad35aa66..671444e0f11fea4cc3930fb339e8bd1dffebc4ea 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/setFieldsDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/topoSetDict b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/topoSetDict index a890f2c8bc551bb8a7b3d65276966c607bce1bdc..33657fe372169bb3b0887d1da44ce6c60a32957d 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/topoSetDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransferFluxConservation1D/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/U b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/U index adfd7d8bdf1db885739075134be984a6638bed64..081cc87a38f33132d39e7ec3868c3c5ab2fa4e8d 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/U +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/include/initialConditions b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/include/initialConditions index 2ef25cd9dc4d7505237f4bbebb9ad5f0c0176be4..572741499ea2a8852609dcb1c46fd686c1ffb68d 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/include/initialConditions +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/p b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/p index 728cbd1c99f240eae7455ea49eb25bd097c4dd20..6c976ed19aa57839961b3e576c4a542f6d38224f 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/p +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/pointDisplacement b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/pointDisplacement index 2a2197c7488f1a73893d0588161bfa14aaafd4f1..06f4d41d9815270d2117eeed616e8ce65edf0173 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/pointDisplacement +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/zoneID b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/zoneID index 998dba0c5efb9b0ae6f78ecd32abe7c1a230fb8e..e9a37ab02757081951921dca4024e1f1a550ce5b 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/zoneID +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/constant/dynamicMeshDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/constant/dynamicMeshDict index ce1537bfea06aa6729e9d0f46b1578ac81e125d2..3df3c047053655371853155937913b63875e05da 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/constant/dynamicMeshDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/blockMeshDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/blockMeshDict index f869bdf1d4548f2f6b7388dfaa3c35e4042e7eb7..5d02a59a4b47f872c1df7acfb11c476a3206b772 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/blockMeshDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/controlDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/controlDict index 0572a972ec0e3da17ab29db929c7f9fa318e2112..37fb91c22bf34ca7f37875865bb0ae1cff5c47d6 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/controlDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSchemes b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSchemes index d36e657ac99cc8ee21b308cf3f8a317fe5a1bdcc..80864b88d33205bd16d01ab802acef6e271bad1c 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSchemes +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSolution b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSolution index 00ea0e72a7799a489879dca0a0e00cb63fe03fa1..198415da0c411b950e6cc25d63c68a8f0e736421 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSolution +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/setFieldsDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/setFieldsDict index b16106caeff2eb807321f8db76e0bc5d8350b13d..99bee0020b6652fbf0f2f06f638aca8ff38253e5 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/setFieldsDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/topoSetDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/topoSetDict index 566cfb2eb971b2cde07de5008906bd8f9efcb480..e26852063403a74052ceb0ffba6c18da88b22f40 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/topoSetDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderAndBackground/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/controlDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/controlDict index 208caf7b73e540fe2c446533b164614bbd5ffc58..797c9b8151fc6f0b7c185fafee77efe10c4eecdb 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/controlDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/createPatchDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/createPatchDict index 37d8e5e2cac9763dea1f4e93f34880579b2da692..774c19a39634e4c2c8f68d3e94da6dde04d1eedf 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/createPatchDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/extrudeMeshDict b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/extrudeMeshDict index cb6c9e99bcf306ba29b567feffcd9e0ef843f521..0fe6dc40eaca0bb22f2aa420760fd20ed1d7c83b 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/extrudeMeshDict +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSchemes b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSchemes +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSolution b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSolution +++ b/tutorials/basic/overPotentialFoam/cylinder/cylinderMesh/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/0.orig/U b/tutorials/basic/potentialFoam/cylinder/0.orig/U index 75de5d83a24a03696a60ea0ac89801648aaad956..20862d0a19c40134a5ef039603f00266c6757258 100644 --- a/tutorials/basic/potentialFoam/cylinder/0.orig/U +++ b/tutorials/basic/potentialFoam/cylinder/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/0.orig/p b/tutorials/basic/potentialFoam/cylinder/0.orig/p index c75ef8a8d86af7997ccc7a7eca9cab305f89623b..e2209c53b89e487ef7c214386fd551dec7ae1df2 100644 --- a/tutorials/basic/potentialFoam/cylinder/0.orig/p +++ b/tutorials/basic/potentialFoam/cylinder/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict b/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict index 2bffe5b631cb55021f217313be715e5f9b83d41f..f2e2831eb407deb45c635864e5c9140b0caf70a6 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict +++ b/tutorials/basic/potentialFoam/cylinder/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/system/controlDict b/tutorials/basic/potentialFoam/cylinder/system/controlDict index a518ca623ee11b1e0c2b3fcc3133c0f739e3b7d9..6cf6567dbe11b53da5b660306a21765148cd0d73 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/controlDict +++ b/tutorials/basic/potentialFoam/cylinder/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict b/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict index bc4a47e304671a6b18199f7aa30d993870adc78e..e69ee975cf4f9e3a89f377daf9c38b56ce2651a8 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict +++ b/tutorials/basic/potentialFoam/cylinder/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/system/fvSchemes b/tutorials/basic/potentialFoam/cylinder/system/fvSchemes index 0090104d821ae6f5d2336197f1da423b4fd6ac1a..1296151c2480bb52e7912796188bb5cde7ea17dd 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/fvSchemes +++ b/tutorials/basic/potentialFoam/cylinder/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/cylinder/system/fvSolution b/tutorials/basic/potentialFoam/cylinder/system/fvSolution index 7d49cb06323599c81c4ac3e28bab362475793b99..23d15a9809bd3dd139bcd8d6476747790d1c06ab 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/fvSolution +++ b/tutorials/basic/potentialFoam/cylinder/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/0.orig/U b/tutorials/basic/potentialFoam/pitzDaily/0.orig/U index 7b92c532cbf8bb52c63df64533f00efa21c7e8ef..1b79fa72751a9907b2c407467411ed1bc9f7e691 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/0.orig/U +++ b/tutorials/basic/potentialFoam/pitzDaily/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/0.orig/p b/tutorials/basic/potentialFoam/pitzDaily/0.orig/p index da1f59277ffb7e6ed13de0c92639da4553c2a0bd..eca7aa93a8f5ec660e9941f4dbcb7eab7d8de019 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/0.orig/p +++ b/tutorials/basic/potentialFoam/pitzDaily/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/system/blockMeshDict b/tutorials/basic/potentialFoam/pitzDaily/system/blockMeshDict index 8f26d3a8f3fa1cc148599c097919e86c10e52317..7709136f71bf3d75aabe2e4fe84e823e3769b6d2 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/system/blockMeshDict +++ b/tutorials/basic/potentialFoam/pitzDaily/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/system/controlDict b/tutorials/basic/potentialFoam/pitzDaily/system/controlDict index 433b18a33351cecbc87cb1bd1c689434366223bb..15928a0f7b649c1a4e243f9d8edc7ce60f7bf8de 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/system/controlDict +++ b/tutorials/basic/potentialFoam/pitzDaily/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/system/fvSchemes b/tutorials/basic/potentialFoam/pitzDaily/system/fvSchemes index 7788b495abc98e1adec6893cf183e45412ba216a..0ab22bc1b803e6008a56eceff94b043e35ae4ece 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/system/fvSchemes +++ b/tutorials/basic/potentialFoam/pitzDaily/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/potentialFoam/pitzDaily/system/fvSolution b/tutorials/basic/potentialFoam/pitzDaily/system/fvSolution index f1c14ebb2aba12a53f490d167a018611147554c2..88dd992835ee2ce9a8bacf564ad67d8f73c28026 100644 --- a/tutorials/basic/potentialFoam/pitzDaily/system/fvSolution +++ b/tutorials/basic/potentialFoam/pitzDaily/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/0/T b/tutorials/basic/scalarTransportFoam/pitzDaily/0/T index 8e83e4b65b1fbb213f19f68783e0934ff92fb936..84f93f697da94cd255956a42904dc19418fc57a8 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/0/T +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/0/U b/tutorials/basic/scalarTransportFoam/pitzDaily/0/U index 42188c2d67b7436d60d359afd54960b3974f19ba..5af3d2df4f95fa311b3047b23a89a7d9b5da1e15 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/0/U +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/constant/transportProperties b/tutorials/basic/scalarTransportFoam/pitzDaily/constant/transportProperties index f530df23f74859873bfeac4678ec67ea7764baf9..14ceeeb30f0254671c4e142f3a89f1c3beb9718e 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/constant/transportProperties +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/blockMeshDict b/tutorials/basic/scalarTransportFoam/pitzDaily/system/blockMeshDict index 8f26d3a8f3fa1cc148599c097919e86c10e52317..7709136f71bf3d75aabe2e4fe84e823e3769b6d2 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/blockMeshDict +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/changeDictionaryDict b/tutorials/basic/scalarTransportFoam/pitzDaily/system/changeDictionaryDict index 869cb37d2d32ea06f89b6b0f2980f4fdc55691dd..fa3c21c472f9107415e4585c0bdf2c8566ed0f7a 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/changeDictionaryDict +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/controlDict b/tutorials/basic/scalarTransportFoam/pitzDaily/system/controlDict index 3bab4de23ff95de1a5b5a7756afe23d231972278..7cd4944c859544d9e233dd94ae1be40fcdf0811d 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/controlDict +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSchemes b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSchemes index f3a636050c4babb14924e3de1aa5caf4a0ac1d44..d840c8f410bc26e48b8f904a4db5a64401a5019e 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSchemes +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution index b258c9b1b6d0affdc94b24c1243ae553c0a16708..d275791014560fac2d9fc9deeab75acf333895dd 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/0/U b/tutorials/basic/simpleFoam/implicitAMI/0/U index a4289a9ec96341ddfaa8e97484b105e5b688c79b..7a237278cdb948fbe8d69370dc3c68508298742b 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/0/U +++ b/tutorials/basic/simpleFoam/implicitAMI/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/0/p b/tutorials/basic/simpleFoam/implicitAMI/0/p index e7eedfa5d34a9a46d6a4e6d4568aacfa40f15a27..c08d2dfd5694454bd1b4e56b5667f0c44af4dc80 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/0/p +++ b/tutorials/basic/simpleFoam/implicitAMI/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/constant/transportProperties b/tutorials/basic/simpleFoam/implicitAMI/constant/transportProperties index 2d427b998b849c0dc46f5f80955599fbe0ba59c7..924eb5940cae260e16ac26ab8bc7faa22c15f525 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/constant/transportProperties +++ b/tutorials/basic/simpleFoam/implicitAMI/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/constant/turbulenceProperties b/tutorials/basic/simpleFoam/implicitAMI/constant/turbulenceProperties index b144be26871842347244da1550d46ec3f65f43b8..963249f2fcae15b58e1e6edf55b1cc2b18f700e8 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/constant/turbulenceProperties +++ b/tutorials/basic/simpleFoam/implicitAMI/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/system/blockMeshDict b/tutorials/basic/simpleFoam/implicitAMI/system/blockMeshDict index d129d6098676aeb57c2ff77f0cc587fcc6ac3b19..85d430c6d3ab37f471eff95df0cd19bd5d1ee044 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/system/blockMeshDict +++ b/tutorials/basic/simpleFoam/implicitAMI/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/system/controlDict b/tutorials/basic/simpleFoam/implicitAMI/system/controlDict index 063198a8c456261b0826e479d8eb74f4bf0b16b3..7a0228eac2f363465e44510543a166d18d1976ac 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/system/controlDict +++ b/tutorials/basic/simpleFoam/implicitAMI/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/system/decomposeParDict b/tutorials/basic/simpleFoam/implicitAMI/system/decomposeParDict index fec6e354290bde7f3a255548ba7a6ccf0024ea32..f011d82c2a93688a29bbf57efdbadc0daddb28b0 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/system/decomposeParDict +++ b/tutorials/basic/simpleFoam/implicitAMI/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/system/fvSchemes b/tutorials/basic/simpleFoam/implicitAMI/system/fvSchemes index 0118f511d7287e86a851d2875f3ea0e7f4fa9c54..5f00bea11777b00bef02450081a8324c5e726a0a 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/system/fvSchemes +++ b/tutorials/basic/simpleFoam/implicitAMI/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/basic/simpleFoam/implicitAMI/system/fvSolution b/tutorials/basic/simpleFoam/implicitAMI/system/fvSolution index 5e3623c8bfbe832aa0fad1e8d0c078b916473933..75ab7a267d056b57aa880daaf826ca27eb94afbe 100644 --- a/tutorials/basic/simpleFoam/implicitAMI/system/fvSolution +++ b/tutorials/basic/simpleFoam/implicitAMI/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties index 0516d8a0d0f4a6a9dd2407f91a11311df0be2e8b..0497a6ff6211c391fe1a8fe8cb9d664ee2441be6 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties index 2cf2e9d5e75712ef70e974685e8cf5a1b38b4412..c5efa4214d3455550d1fe4c50374d008ab8f94c9 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict index 58eaef309c35906cccb7735f5c3b22f83e2f2272..d3ed6c8d01ffb6de38ff108c38db068c73c017d3 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g index 1d8ddca689eb03eab9fb12dc1675842ac50676d3..f1ac736cb343c2c965b64565fd3352e6a35ab943 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties index 7c5448fc868884b78eea1fa7c48d11deccb4b05d..4ce4270940cd638375cabe62c08b95cae1f38c33 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties index ea891791c7a6b3da665f04ab9492b36ed0805d7a..255878cd74ae37f2059de663af090edb7fe87117 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict index a19bd04e6b8c080497b9379b32cdaa7292c2e40c..e643ec019a413bf4ee663cdf7e7fab6b99479797 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/blockMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/blockMeshDict index 6e6a3a0f17fdb42240c5c4aa597465a5df1883af..98fca85635e194355a0810d64ff5991f3400b6df 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/blockMeshDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict index 897d7c9b918973198908ef385cf273fcc36d7662..84c5092eba10171499ec8c3058183f94340f8ba6 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict index 8fe6a60f218ee189e51c0ac003687c5b3ee0ca4c..5a2a70d0fec51b9b255cebbcf7e654c97844b43b 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict index 3a2a815754119d7b7d057b14b29a0324d5b1a5dd..fa332cb29eab0ce50a710b2f5e53a8855d59674f 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes index d3a5bf428f5e54a20fb37239f5dae366f49bb482..efc5c0081f693921967fcc016acdbf7f4f8c516d 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution index d9eb24f5ae0250fee28e51f0c0d7a19cc2ebbecc..7614d4f1335c0e19665d900dd8aac5cb93c17ddd 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/topoSetDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/topoSetDict index ce94322e2d0da516398ef0665a63154c38cf1d16..1966755c0f488da4e542ee8f9619ee1a9a8be1e3 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/topoSetDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRep b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRep index b52afe5e1e7bece82fdc10099c1c1708168b0c52..285490f640a8d931345ed14261271bda00da3848 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRep +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRep @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRxp b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRxp index ca445ffa33b3b9046e57ee00ef248bb9e3cde478..5fc38aaace929571ee8b968f27f674270b78211b 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRxp +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/GRxp @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/RPers b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/RPers index 051dd5f22a1e237f779bcac54baf0ee0057aa5ba..eb331933cced0cc0a0488808768af3a491dd4c5e 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/RPers +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/RPers @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Su b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Su index 4adc85a228c6ae475928564fc7d9e639ebf6ddb5..cd24f1d7297ed928498c76e68eeacd4499450184 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Su +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Su @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/T b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/T index d2d660def6139609f9e4bcbb73a39efdc9201ab4..1069a3837f61a2ee2099c05511d234c22c3130b8 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/T +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Tu b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Tu index 503e610accdb8c26adb180185be1a9d4430ac670..97c907d86ac8df66224875c6705aa8eeb88d8c3f 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Tu +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Tu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/U b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/U index cc991a64dc19494303b9166571c3ca8a9953df7d..b1d15c15998b70f9684809dc7b7080ae7e4a0a5e 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/U +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xi b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xi index 547026eb09a50d257a6962839aa21ed7dcd2e4af..576f26f619cde3bb0afacce3b890d4b4820d8027 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xi +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xp b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xp index 26554a58e7f8a769817ec8bf3bedafe3cb28fbc3..34466945f1a70d6e022fdcf405c9ea6b03976648 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xp +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/Xp @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/b b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/b index 82cd30c1a20caa018745231f357d54c9d576b6a4..91337279384557792292a52f0c68c126fc27771f 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/b +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/b @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/epsilon b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/epsilon index 7a5aca8335936bfe5718bf3606d78354bc9b18bc..38c6886373999dfa2dddbae7520ad1c6cd6295ae 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/epsilon +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/ft b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/ft index 73624eac2afa8381244a29a227c61d570f586065..06c8df8552bbc97ae081a779b3fa45cf65f077af 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/ft +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/ft @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/k b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/k index 6ebf87f40d0c77e90ce06d4c2285cfb65d11404a..1e02334b2d250988f6eb5f29b478abe7a56adefa 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/k +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/nut b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/nut index 8ac201c29242f8fba84cd5b0e9fc608547016815..9d3bb5d6dc6e011efb7e0c3cf77acf76ef909a5a 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/nut +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/p b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/p index 5fe9a06e50afb4145252509ddb1f6eca947bc7ea..59db7e38d52cce9facf610532901888d8018855d 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/0.orig/p +++ b/tutorials/combustion/PDRFoam/pipeLattice/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/constant/PDRProperties b/tutorials/combustion/PDRFoam/pipeLattice/constant/PDRProperties index 5f3bbd34ecc9f419116c80cbf80610ad9f2e2264..0c22ed04ef6f3c580bcd891f00014e491758170f 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/constant/PDRProperties +++ b/tutorials/combustion/PDRFoam/pipeLattice/constant/PDRProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/constant/combustionProperties b/tutorials/combustion/PDRFoam/pipeLattice/constant/combustionProperties index 2085e598a1f62b23f760262aafa2e3d3aebd98f6..f337a5607d3a53f68b837dea466558aa9f3a278b 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/constant/combustionProperties +++ b/tutorials/combustion/PDRFoam/pipeLattice/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/constant/g b/tutorials/combustion/PDRFoam/pipeLattice/constant/g index 0e5693e69f2f45c0e10a085e69f1ce104c182683..928d2b1e466fc410131956ca18c8f91f9821433e 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/constant/g +++ b/tutorials/combustion/PDRFoam/pipeLattice/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/constant/thermophysicalProperties b/tutorials/combustion/PDRFoam/pipeLattice/constant/thermophysicalProperties index f120ed7f7645ccad229c608134e5bbd6695b3dbf..11f08045fda2d9b3fa9aa458e53d33278ee707fb 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/constant/thermophysicalProperties +++ b/tutorials/combustion/PDRFoam/pipeLattice/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/constant/turbulenceProperties b/tutorials/combustion/PDRFoam/pipeLattice/constant/turbulenceProperties index 8be366d4faa4b4bd191aed0341f623599daeb693..4b618bee5cf760c5c07d74272d92fbca3a70503d 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/constant/turbulenceProperties +++ b/tutorials/combustion/PDRFoam/pipeLattice/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/geometry/obstaclesDict b/tutorials/combustion/PDRFoam/pipeLattice/geometry/obstaclesDict index c3b9f3b1160d5cab5d6811fd5af9f770e8bbd41b..098fd0d58c47f8a1f379ff0e6d247d11510306f8 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/geometry/obstaclesDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/geometry/obstaclesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/geometry/pipeLattice b/tutorials/combustion/PDRFoam/pipeLattice/geometry/pipeLattice index 2ae22e9c49f6f3f0c8f29391ff90c3dfaec7ece7..ec5826c7546490f50e69269fa057d04e1b204520 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/geometry/pipeLattice +++ b/tutorials/combustion/PDRFoam/pipeLattice/geometry/pipeLattice @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/PDRblockMeshDict b/tutorials/combustion/PDRFoam/pipeLattice/system/PDRblockMeshDict index 5e9fce50b610a4d77467b22e993694d0d68134c1..f5b40bc7aef8112e88ee94f56faad7c9a000f2a0 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/PDRblockMeshDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/PDRblockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/PDRsetFieldsDict b/tutorials/combustion/PDRFoam/pipeLattice/system/PDRsetFieldsDict index acff99fb7bd632b7bbfe42242cc6d040ce06ce8c..448aca6b6336cef2eb1461fc9e7b44750e3827c3 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/PDRsetFieldsDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/PDRsetFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/controlDict b/tutorials/combustion/PDRFoam/pipeLattice/system/controlDict index ab78f367fb82eb68478a56f110212ca1a61b80ad..e6b76df34430c842c2db22f08cca2346b44b58bc 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/controlDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/fvSchemes b/tutorials/combustion/PDRFoam/pipeLattice/system/fvSchemes index c199f381080c92779b0f1b1d94db0e339d46f1ed..e0c02bfca54705300760013572067e23562cb7fc 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/fvSchemes +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/fvSolution b/tutorials/combustion/PDRFoam/pipeLattice/system/fvSolution index a12a013bbcb88c64079ce1f3d6c38c94c68b5e94..e07dcb5103ad1720edd7581b3e4eccf25ab01142 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/fvSolution +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/probes b/tutorials/combustion/PDRFoam/pipeLattice/system/probes index 237d361c0dda75112b2f490f6ffd7ebd590ea409..d2b51d67873dc1d25e769ddb1646fab8e716cf07 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/probes +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/probes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/setFieldsDict b/tutorials/combustion/PDRFoam/pipeLattice/system/setFieldsDict index be49a62a252b24d3a47036adaad424fbbd6423d8..569914844d4d7f9d0262a53b7de3eb7d4faaf122 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/setFieldsDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/PDRFoam/pipeLattice/system/topoSetDict b/tutorials/combustion/PDRFoam/pipeLattice/system/topoSetDict index d7fe28191cec58caa59b7c1e765624424610d47f..8c9558def6cbf06b61d76c488bd33e7236529174 100644 --- a/tutorials/combustion/PDRFoam/pipeLattice/system/topoSetDict +++ b/tutorials/combustion/PDRFoam/pipeLattice/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Su b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Su index 2ab2dba3109764043fe4bef1e15471b384fd4a97..e7ae69530fbaef0bb10cdb2b2412aef354024b19 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Su +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Su @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/T b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/T index cc55c69d33a158a6f313b02e74bc873cd20f5ffe..5a084b5401e4cc68a87e167c8d98a462bce6001e 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/T +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Tu b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Tu index 68e2627efc9b0df2fc0c7b28a50a1b33cc60d4a7..0d9a1dda53e10ca4c98b3650ed1215ed17beb895 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Tu +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Tu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/U b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/U index 6db2f93b06e170d3641d356e2e27ee6bb465fc76..d338ecd1f384934eb348f9b3af15382b067e6884 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/U +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Xi b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Xi index 1ab8d6f91fd57862aa557036bfa50c2f12863b5a..f00a0b9f1ea7f6d94f06bab41525f8bda0f38746 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Xi +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/Xi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/alphat b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/alphat index 6d27483491f119d50d8612d2f5d985f1b557faae..a6ababb4ccf1a4a39152e8c8d3d504a84d79752a 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/alphat +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/b b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/b index 3baf85cba6b168ece7a9bbb4b1ab8fdbdbdea0f9..bd176a12642580e4e450b0a2c748736f16d54149 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/b +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/b @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/ft b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/ft index 58afc874486d5331a225420d7898b470e25eba3d..398804226a158ac2bdbeb7e2e716e1566670b3d1 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/ft +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/ft @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/k b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/k index 7fd531829cfc19e54ffe9d45d7c2d86d984080e0..ab2ef13189aeacfd40a93616dc1ab5eb24a8a159 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/k +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/nut b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/nut index 3ada8efc40626612d1b4acd5be66571401b35c2f..1afbc967f3fbc98f3a8e012f9dfd7bac31037f5a 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/nut +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/p b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/p index 4079bce379980be84f894b70663b25e572ad9b91..4f437b5442497c0c1cb7eab4f8928aa0d8524b5b 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/p +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/pPotential b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/pPotential index a1e2f0dfa8616754f7eca652b82f8cc304130833..ab805fe28a31e116b81df9cc4f27a16c2b1fc271 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/pPotential +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/0.orig/pPotential @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/combustionProperties b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/combustionProperties index cc0d69190359e91ae594eae24125b6d2b1e13005..2fa7fffe73174b4c131556d582dcaafb68c75e2a 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/combustionProperties +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/dynamicMeshDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/dynamicMeshDict index 8fd7ff1041610a74fde8a6dec7ff30b8190b7753..3e3aaf4eeff2f908eb66a06a267c47096060428f 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/dynamicMeshDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/g b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/g index 0e5693e69f2f45c0e10a085e69f1ce104c182683..928d2b1e466fc410131956ca18c8f91f9821433e 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/g +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/thermophysicalProperties b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/thermophysicalProperties index a6cd2b746acc61a34a508b5d539712758851d611..e812ac97705a62e0d8e90d2121b497c196b016e9 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/thermophysicalProperties +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/turbulenceProperties b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/turbulenceProperties index df7a832be3657d0acd2cab10a38a07f2622fcb62..dd7bb103f5f820c253f3dc05fac72ea29558af3c 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/turbulenceProperties +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/FOXiReactionRate b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/FOXiReactionRate index 1b9ae858afb79f4c9d266d2e809ce63302a7a250..c2dfeda31aa875da1ddfa2b8c6e303a8bad117ec 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/FOXiReactionRate +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/FOXiReactionRate @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/blockMeshDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/blockMeshDict index 41770e54f5fc0529995a821bd1dd83346a029bca..750ab314fded0c022a306f1622e2bad2eeb3ca9b 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/blockMeshDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/controlDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/controlDict index 65dd7377b8789f39e3ee55bad3869e39f4d53cba..57c59550ed3905fd6862844563ec9c7f1e3dfcd9 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/controlDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.ami b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.ami index b2958c17bcf6c5bc2cfa4f16ca995fc46328e8b5..1127c38ce63606c37c92f8cf34f7806c91ea137f 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.ami +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.ami @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.cyclic b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.cyclic index 3d0b4579ec1b3a2f15d1178c0b0b8ab2469ed75e..7ee55cbd39205a54ce37116f606b728280a57c66 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.cyclic +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/createPatchDict.cyclic @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict index 3835f996a6b4680c1cc6a5b749c2f1a782710673..ac1918925fcb567afa95d678bd405bda771f5084 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSchemes b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSchemes index 39c94d0c2e28f1f20b450d8eb2a4e4ecdc5c5baa..be5783c31291050b530cdedada5bfcdc9c52d46a 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSchemes +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSolution b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSolution index 25c616b8a4593f69b789726d4a8ef08a02715f49..7a5c43bdfdb7c5fc30340fb6357ef42aba78438b 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSolution +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/meshQualityDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/meshQualityDict index aad4405729165ce33e5bbd8b1577d59a4cf69586..c2eac80361e36d829e361f1f04bdc37e60bebac9 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/meshQualityDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/snappyHexMeshDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/snappyHexMeshDict index d7272c44441b516154b7b3c2ebef468a5916bc12..a19fcfc2d3f411b6dc950c5f15a078e3a0957b9e 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/snappyHexMeshDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Su b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Su index 557a9f0c987e13fc2d0e9e369810b266cd08f6b0..597c467a88e2200c81b388eac10aa09c3756fa3d 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Su +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Su @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/T b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/T index 3905a5aa9b565c2f349d44e001db2dd34b796fcf..d9fd7bec1531e5aa48e66c728f4abf9f69463b7f 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/T +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/T @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Tu b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Tu index 12ad6035d96b951b6cd65e4a0c76709310587376..483302ce5372130ab92556faca5887ef4e2c2249 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Tu +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Tu @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/U b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/U index d882f5fdcff195e64d151f45dfcd439c622cd1e1..bdfe9487adb5e60238c453f2273fe7aed3126bd7 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/U +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/U @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Xi b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Xi index 0ef2bbe7aa2fd81aad87a36bb82ddc69f0260d69..4507d541b429e29393bb8af3fa016a0e85ebd012 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Xi +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/Xi @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/alphat b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/alphat index 0bc39f3103890abc1ff3ff52ebd213b30975aa18..0dafa0c92e578372147c1c032ef5c173cf5134c1 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/alphat +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/b b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/b index 42a59b0e1f85fc1aed08e514d910c2a7a2979ffe..2dea632d215b2c56ae13f0302fa07ebbe048f64b 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/b +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/b @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/epsilon b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/epsilon index 2920875fec4fa77b2ae2379b00696d0994758f16..b7b81519255ef8739bddefe2f717c2a8ab4e4d55 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/epsilon +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/ft b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/ft index 0c881f12594f77ba883dff3bbc71dbc883053aef..71c254f6a954956e9bd1158773cca7fb819ca2a6 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/ft +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/ft @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/k b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/k index 55cbcda1f54158f3e6f1a2660da1a48487d131b5..29fc78c009b7c422e25e7d5ad515874ccb851945 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/k +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/nut b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/nut index 7df36166c213e9395aa9afa11707fefab67fb625..920a9e533629b67d5c58b035a5f465f987b7b498 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/nut +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/p b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/p index f1c0505418bd923e30efde8005d875af40f30b8e..cef520f6c8a64cc1dc8280efefe1d321a4294d20 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/p +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/p @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/pointDisplacementy b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/pointDisplacementy index 00f8cfc556d3edd644d4d8e65da01511816bfd8d..23fd0e54cd90d4a594fd306771dc59e84aec4480 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/pointDisplacementy +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/0.orig/pointDisplacementy @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/combustionProperties b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/combustionProperties index 1a48406fe6705677f96ef95b37890b7a7f3ee7f8..d1a36fb365b133a87309520bf04f4fc4080ae4e8 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/combustionProperties +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/dynamicMeshDict b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/dynamicMeshDict index 761b5724ad561cf9bd3e0de2b465205c6338eaff..f849005c680c697b2c3aff4fd291c1d3314973ba 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/dynamicMeshDict +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/g b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/g index 0e5693e69f2f45c0e10a085e69f1ce104c182683..928d2b1e466fc410131956ca18c8f91f9821433e 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/g +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/thermophysicalProperties b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/thermophysicalProperties index 75ecc992b7fa4422a3ba85ba2ca12b5a15a52b3f..50db76c3caaed6e790ee1a48f6612b9aeea0d0bf 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/thermophysicalProperties +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/turbulenceProperties b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/turbulenceProperties +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/blockMeshDict b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/blockMeshDict index de69564208721ca39f5a7f8828f0dd07a44fbc48..73b59ec801b797c71c715a5637f3d137971e66f7 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/blockMeshDict +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/controlDict b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/controlDict index ccdae149a6fb749d1a989baff74d7caa0082c67b..f5ab1ec2bd8fb884668bf72c3b798d5eef79bbc1 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/controlDict +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSchemes b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSchemes index a9c861960179ae775276a8e7a6084a686783ca60..8a17595032d7f1642b2f06f750e2650a5e9440ea 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSchemes +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSolution b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSolution index d8cfd2877ebb221e049ee766676decdb83fbaaa6..2b4a378296be83427935f949ca86bc749a46c4b7 100644 --- a/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSolution +++ b/tutorials/combustion/XiDyMFoam/oscillatingCylinder/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Su b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Su index bbd9d7841ae50bf95e4bd83cf9121879a6009e5d..b2cd35a9f6e1022dc38a8eeb5f877bcccc0f64c4 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Su +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Su @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/T b/tutorials/combustion/XiEngineFoam/kivaTest/-180/T index 256c26eff9148afb89863936287cb9d69ba4b8de..c23e15059a0518a7a8e593794b36667ee8765f50 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/T +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Tu b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Tu index 695995f6f65028657324ec3cdcb0364298b7ba15..034046e124e5417797dcd13c8490bbb3a2a31c7d 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Tu +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Tu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/U b/tutorials/combustion/XiEngineFoam/kivaTest/-180/U index 9d243c9a3adbf4718aaabbe5617bbe176f0827a8..9e58fe6b116fd0d9b55fe46ccc7783a7e602618a 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/U +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Xi b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Xi index 43d22ca6e6bd03ca3cc57d88e989046bb643df7d..f07fd0d875836596b0983b744079285e69330e6d 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/Xi +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/Xi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/alphat b/tutorials/combustion/XiEngineFoam/kivaTest/-180/alphat index 9bd1bb48a99bfe7d156e3491b662e472b3c0322d..b52c3609da89827126ff718147e4464e8a75698f 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/alphat +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/b b/tutorials/combustion/XiEngineFoam/kivaTest/-180/b index ba6ca494457f1ff1f1a9b877f256ed80dd49cbda..0f8d9c02637a3fc39dd733c682dae70d7298c732 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/b +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/b @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/epsilon b/tutorials/combustion/XiEngineFoam/kivaTest/-180/epsilon index 9489867f2c65f65c00ba487ac9c71cc62a424085..ada7f2bafaee4594df72d8dfa10e7dfd3ec0a9b1 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/epsilon +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/ft b/tutorials/combustion/XiEngineFoam/kivaTest/-180/ft index 93f68113644b5da840aa65436c84d276cdaf7585..c962f9a9d9e18e6823b25bbe9943af6b3813093f 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/ft +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/ft @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/fu b/tutorials/combustion/XiEngineFoam/kivaTest/-180/fu index 889013b466385799b9a7a562d7abf2496c223dfb..eb3777b5bd7f64db8f9f0a7b38c5205c56b250aa 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/fu +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/fu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/k b/tutorials/combustion/XiEngineFoam/kivaTest/-180/k index d1cc3b1c165746b5fa878f51ebe4c33ec609066b..3a3e9a5277ff19663a207f0225bbb4ab92059bed 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/k +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/nut b/tutorials/combustion/XiEngineFoam/kivaTest/-180/nut index 741dd5b0cd0253fce3baa6a27cfaedb8e94a3258..1ab59b8403e77ed49427be609952529a89d4ff2a 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/nut +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/-180/p b/tutorials/combustion/XiEngineFoam/kivaTest/-180/p index 88c866f4b739b75d49a5c615fc7732b3261a2dd1..55dc5bae72a99f0bbb3770d28fae6a70fe78f374 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/-180/p +++ b/tutorials/combustion/XiEngineFoam/kivaTest/-180/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/constant/combustionProperties b/tutorials/combustion/XiEngineFoam/kivaTest/constant/combustionProperties index 9ebd599bcccb0256122c5a4fa127f6a6745b1907..8df21d63dde56637954b5b0194e6cef29dd7099c 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/constant/combustionProperties +++ b/tutorials/combustion/XiEngineFoam/kivaTest/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/constant/engineGeometry b/tutorials/combustion/XiEngineFoam/kivaTest/constant/engineGeometry index fca7a8ed30b86987e6798c78bb0cd2833d0cad25..4021d2221e77eff68ead6e644aad34f70783e351 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/constant/engineGeometry +++ b/tutorials/combustion/XiEngineFoam/kivaTest/constant/engineGeometry @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/constant/thermophysicalProperties b/tutorials/combustion/XiEngineFoam/kivaTest/constant/thermophysicalProperties index 2f6ee3416f44b283c9885cc0306289328199f3ee..7d7e6f54f0b16f63054c75451c7f6d9a4ef3adad 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/constant/thermophysicalProperties +++ b/tutorials/combustion/XiEngineFoam/kivaTest/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/constant/turbulenceProperties b/tutorials/combustion/XiEngineFoam/kivaTest/constant/turbulenceProperties index f31b75b805cd77a945f46d28291b04704960cf33..1e35b3f25133c37a473e97ee3050253ed9de0e92 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/constant/turbulenceProperties +++ b/tutorials/combustion/XiEngineFoam/kivaTest/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/system/controlDict b/tutorials/combustion/XiEngineFoam/kivaTest/system/controlDict index 9a4f0c56608b7dd83e6c192530814fbdff7380ca..395385d1ae11a5e51c63c1d8a7a42cb76f31d45d 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/system/controlDict +++ b/tutorials/combustion/XiEngineFoam/kivaTest/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/system/decomposeParDict b/tutorials/combustion/XiEngineFoam/kivaTest/system/decomposeParDict index aa91ec3736ef5a4af98319f6205bb271d944cce5..1807d1e19437e40d36f43e7edc98f62509034888 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/system/decomposeParDict +++ b/tutorials/combustion/XiEngineFoam/kivaTest/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSchemes b/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSchemes index e638cd89b7f4e258d9afcf5072e4ff951c546397..37a83c13ed55cbf799636324ea443cd3c0603c8d 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSchemes +++ b/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSolution b/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSolution index ef8dffaeca3a8e7291fc86851db5ad7fe144b8f9..6533f9d931af5a77395b959b1e8489ba233dcc30 100644 --- a/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSolution +++ b/tutorials/combustion/XiEngineFoam/kivaTest/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Su b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Su index 4d8f5dc5887bb5f966523d60b0555e8bde9a49f1..85a74528d991a1f1123d7e4669ec4c3346496f6b 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Su +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Su @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/T b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/T index 2c541c296d8b93c877bd54d296452ff0dec1f832..2b6d2a6a567fea3cae532ee0af07d5520985b9b8 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/T +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Tu b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Tu index 29b9f8091bc906954d6f35cf78225b322ed0208a..13e38e548b52b986cd15fcf8412950278537653a 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Tu +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Tu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/U b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/U index ae4135b5591492e07f514f7a41ea13d0866283f6..6bb50f87ee2e6ecd5d46a2fad6833dc785bb0fbe 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/U +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Xi b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Xi index 00484b76b0aa8538ef6f89e961133148ca11af9f..0cf21fab44f750359ba375ee471a6e94bd57bddc 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Xi +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/Xi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/alphat b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/alphat index b2bdfa8db201d8ff1fc8d200c1c43f7358777490..53eb944664238b515356b80a92777a2482475ad6 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/alphat +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/b b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/b index 945bebf1de1a6e951e1dbee7292ad93746f9c462..f9e2f182ed0a7c8a243f591f20f5bed29669afe1 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/b +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/b @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/epsilon b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/epsilon index 84dc6d85f7b75512e37129fa4c8bf50635a54093..c3631957eac829c76c7542bd71082d3e7e479698 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/epsilon +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/ft b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/ft index dcaacba0188dd0f512fb9dafc65127454895be88..4e6963d815e52d9fa94670c9c6fb371f9b5346e9 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/ft +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/ft @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/fu b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/fu index 307030fa20c89fa29ad12737adef09b281d12062..dede70894074696caba3ea4d132260fca96576cb 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/fu +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/fu @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/k b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/k index 8004edd25365561e73caab3e9d8abdafa362c518..7f4c0389518fbff0d4ac31a668c85441e00887be 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/k +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/nut b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/nut index e21fcfa33cdb69ecbbfe09c0c51e83e98a87cd23..04ce9f28116baeca3e402d8aa7f515377cdfaefc 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/nut +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/p b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/p index 8f241b05bdd2acb09dea4c1440ea26d0d89c4f08..16a1e178fa2dc82fc26751b0c413c7255582e844 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/p +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/combustionProperties b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/combustionProperties index 9c7fad36b6f64d2cbec24f5ad81b99b41302c0fa..0c101003b49b0a9430ca71282cba10a594963cd0 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/combustionProperties +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties index b5b0fcaf754fb27fa73d251ded780029357a89c3..3b88b59c39f00084802d14eb0397751e4c326e74 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties.hydrogen b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties.hydrogen index bce6fb9ff192797f4d5c5de79b445f2a3e15119d..b1367f388d0405ccddb3b196aae292db81fb341f 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties.hydrogen +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/thermophysicalProperties.hydrogen @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/turbulenceProperties b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/turbulenceProperties index 5a3b29249f2546f2d74e069a0536e2fab19e3d95..43f16675b4a46f10504d32f1041ea4c3f22fd529 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/turbulenceProperties +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/blockMeshDict b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/blockMeshDict index 828d79e37e27c5644da9de18a47915ba64a8563a..83b3080ed1cd8ea93c2de1ad0e9527bfd7da9189 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/blockMeshDict +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/controlDict b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/controlDict index 3942fe5fbce2875c73d256c44483ac5ae787631b..833cf3d1f06ec04c6d3de1984d48f2ef371009db 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/controlDict +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSchemes b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSchemes index 8834987057092f99bb1c4bcf23f0d1a6b246a468..a8bd5621b67f08d1348ea1691e939ada9aa7eb8c 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSchemes +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSolution b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSolution index b2b77e9efd81aac01263b4b1cc95444c2abab379..e85229a7975a93003eb9d0e3dab4901265387057 100644 --- a/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSolution +++ b/tutorials/combustion/XiFoam/RAS/moriyoshiHomogeneous/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/chemkin/transportProperties b/tutorials/combustion/chemFoam/gri/chemkin/transportProperties index 14133f43d141fc20e865d8c2d571fbfc9b92788b..0c87da4eb99c311d457104766b37e086a2af4709 100644 --- a/tutorials/combustion/chemFoam/gri/chemkin/transportProperties +++ b/tutorials/combustion/chemFoam/gri/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/constant/chemistryProperties b/tutorials/combustion/chemFoam/gri/constant/chemistryProperties index d0285b4d0413cb265e1c6dffa9706be37083ba48..9e3689a670f4e2dc98d45c2acd4280e6b6ec3474 100644 --- a/tutorials/combustion/chemFoam/gri/constant/chemistryProperties +++ b/tutorials/combustion/chemFoam/gri/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/constant/initialConditions b/tutorials/combustion/chemFoam/gri/constant/initialConditions index 834c7d483a9db0bbe61434c3112e1ef4a76ca7ec..9e7c79b92b43cfd89f49800e7e605eb2de1174f4 100644 --- a/tutorials/combustion/chemFoam/gri/constant/initialConditions +++ b/tutorials/combustion/chemFoam/gri/constant/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/constant/thermophysicalProperties b/tutorials/combustion/chemFoam/gri/constant/thermophysicalProperties index 285525263a6340f6ba1e7609ba730921eb22067c..c5a2b5ae07f716dca1969fa734014de1c11baca4 100644 --- a/tutorials/combustion/chemFoam/gri/constant/thermophysicalProperties +++ b/tutorials/combustion/chemFoam/gri/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/system/controlDict b/tutorials/combustion/chemFoam/gri/system/controlDict index 32a2fc60dd1f516a184998b103fba2e706ce2444..719bfc46ebf54ac893c38b7a5d0e97d1a748b109 100644 --- a/tutorials/combustion/chemFoam/gri/system/controlDict +++ b/tutorials/combustion/chemFoam/gri/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/system/fvSchemes b/tutorials/combustion/chemFoam/gri/system/fvSchemes index 653bb2a295667c651b5a470bf8480ecd132f9a7d..f7510980e9472f021d24bee6d73644baf72f44ff 100644 --- a/tutorials/combustion/chemFoam/gri/system/fvSchemes +++ b/tutorials/combustion/chemFoam/gri/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/gri/system/fvSolution b/tutorials/combustion/chemFoam/gri/system/fvSolution index db4be99d68cb59e6688f432639df0f73d51e61fc..315c1dd0cfa4611f69945abf390c9d61572b63cc 100644 --- a/tutorials/combustion/chemFoam/gri/system/fvSolution +++ b/tutorials/combustion/chemFoam/gri/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/chemkin/transportProperties b/tutorials/combustion/chemFoam/h2/chemkin/transportProperties index 14133f43d141fc20e865d8c2d571fbfc9b92788b..0c87da4eb99c311d457104766b37e086a2af4709 100644 --- a/tutorials/combustion/chemFoam/h2/chemkin/transportProperties +++ b/tutorials/combustion/chemFoam/h2/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/constant/chemistryProperties b/tutorials/combustion/chemFoam/h2/constant/chemistryProperties index d0285b4d0413cb265e1c6dffa9706be37083ba48..9e3689a670f4e2dc98d45c2acd4280e6b6ec3474 100644 --- a/tutorials/combustion/chemFoam/h2/constant/chemistryProperties +++ b/tutorials/combustion/chemFoam/h2/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/constant/initialConditions b/tutorials/combustion/chemFoam/h2/constant/initialConditions index f919f4198045b240b08aca4b1fc3789d30055ded..de5482f16d5d64041a837bf875c30ba5a670ee01 100644 --- a/tutorials/combustion/chemFoam/h2/constant/initialConditions +++ b/tutorials/combustion/chemFoam/h2/constant/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/constant/thermophysicalProperties b/tutorials/combustion/chemFoam/h2/constant/thermophysicalProperties index 835c4a266787d5f8215555e089ccc59a766a5913..bfce150f7fd40ad92427f7e1f3ea16567b1125f8 100644 --- a/tutorials/combustion/chemFoam/h2/constant/thermophysicalProperties +++ b/tutorials/combustion/chemFoam/h2/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/system/controlDict b/tutorials/combustion/chemFoam/h2/system/controlDict index 0d1cf5a11ade0a01f26f22060890864fefc4108e..b4d027e42f1275d759c6eed4a0034f687e5740c2 100644 --- a/tutorials/combustion/chemFoam/h2/system/controlDict +++ b/tutorials/combustion/chemFoam/h2/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/system/fvSchemes b/tutorials/combustion/chemFoam/h2/system/fvSchemes index 5b9751852b46cf2e64798d3633fdc6f0f6dee35f..18082f4ced16debeef6b872082c4098f93c78b39 100644 --- a/tutorials/combustion/chemFoam/h2/system/fvSchemes +++ b/tutorials/combustion/chemFoam/h2/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/h2/system/fvSolution b/tutorials/combustion/chemFoam/h2/system/fvSolution index db4be99d68cb59e6688f432639df0f73d51e61fc..315c1dd0cfa4611f69945abf390c9d61572b63cc 100644 --- a/tutorials/combustion/chemFoam/h2/system/fvSolution +++ b/tutorials/combustion/chemFoam/h2/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/chemkin/transportProperties b/tutorials/combustion/chemFoam/ic8h18/chemkin/transportProperties index 14133f43d141fc20e865d8c2d571fbfc9b92788b..0c87da4eb99c311d457104766b37e086a2af4709 100644 --- a/tutorials/combustion/chemFoam/ic8h18/chemkin/transportProperties +++ b/tutorials/combustion/chemFoam/ic8h18/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/constant/chemistryProperties b/tutorials/combustion/chemFoam/ic8h18/constant/chemistryProperties index d0285b4d0413cb265e1c6dffa9706be37083ba48..9e3689a670f4e2dc98d45c2acd4280e6b6ec3474 100644 --- a/tutorials/combustion/chemFoam/ic8h18/constant/chemistryProperties +++ b/tutorials/combustion/chemFoam/ic8h18/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/constant/initialConditions b/tutorials/combustion/chemFoam/ic8h18/constant/initialConditions index 743c9f96dc87b4d8e3d639181ed2776737fa9e80..32c0362a630dae85c025b62e7d1e501d4370c838 100644 --- a/tutorials/combustion/chemFoam/ic8h18/constant/initialConditions +++ b/tutorials/combustion/chemFoam/ic8h18/constant/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/constant/thermophysicalProperties b/tutorials/combustion/chemFoam/ic8h18/constant/thermophysicalProperties index 835c4a266787d5f8215555e089ccc59a766a5913..bfce150f7fd40ad92427f7e1f3ea16567b1125f8 100644 --- a/tutorials/combustion/chemFoam/ic8h18/constant/thermophysicalProperties +++ b/tutorials/combustion/chemFoam/ic8h18/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/system/controlDict b/tutorials/combustion/chemFoam/ic8h18/system/controlDict index ef624cd7b56efab233d2dc5263149f2493f01b7d..24d1e116710e63c4290d05e2ab0e750a66bdcddb 100644 --- a/tutorials/combustion/chemFoam/ic8h18/system/controlDict +++ b/tutorials/combustion/chemFoam/ic8h18/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/system/fvSchemes b/tutorials/combustion/chemFoam/ic8h18/system/fvSchemes index 653bb2a295667c651b5a470bf8480ecd132f9a7d..f7510980e9472f021d24bee6d73644baf72f44ff 100644 --- a/tutorials/combustion/chemFoam/ic8h18/system/fvSchemes +++ b/tutorials/combustion/chemFoam/ic8h18/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18/system/fvSolution b/tutorials/combustion/chemFoam/ic8h18/system/fvSolution index db4be99d68cb59e6688f432639df0f73d51e61fc..315c1dd0cfa4611f69945abf390c9d61572b63cc 100644 --- a/tutorials/combustion/chemFoam/ic8h18/system/fvSolution +++ b/tutorials/combustion/chemFoam/ic8h18/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/chemkin/transportProperties b/tutorials/combustion/chemFoam/ic8h18_TDAC/chemkin/transportProperties index b166f37c278caee8a24452e723424560db806d03..29d3d050b7b205aa17f4fda9d6aebb0d4e1bcef6 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/chemkin/transportProperties +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/chemistryProperties b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/chemistryProperties index 776bed6ccfd133207f62b566d0982c28ddc17e8e..4fc1ec38e5a7b7b5d7c6d4c7068385b17c35e43e 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/chemistryProperties +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/initialConditions b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/initialConditions index 743c9f96dc87b4d8e3d639181ed2776737fa9e80..32c0362a630dae85c025b62e7d1e501d4370c838 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/initialConditions +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/thermophysicalProperties b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/thermophysicalProperties index 835c4a266787d5f8215555e089ccc59a766a5913..bfce150f7fd40ad92427f7e1f3ea16567b1125f8 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/thermophysicalProperties +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/controlDict b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/controlDict index ef624cd7b56efab233d2dc5263149f2493f01b7d..24d1e116710e63c4290d05e2ab0e750a66bdcddb 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/controlDict +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSchemes b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSchemes index 653bb2a295667c651b5a470bf8480ecd132f9a7d..f7510980e9472f021d24bee6d73644baf72f44ff 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSchemes +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution index db4be99d68cb59e6688f432639df0f73d51e61fc..315c1dd0cfa4611f69945abf390c9d61572b63cc 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/chemkin/transportProperties b/tutorials/combustion/chemFoam/nc7h16/chemkin/transportProperties index 14133f43d141fc20e865d8c2d571fbfc9b92788b..0c87da4eb99c311d457104766b37e086a2af4709 100644 --- a/tutorials/combustion/chemFoam/nc7h16/chemkin/transportProperties +++ b/tutorials/combustion/chemFoam/nc7h16/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/constant/chemistryProperties b/tutorials/combustion/chemFoam/nc7h16/constant/chemistryProperties index 5b4f205ffda662c2024f0fc185c4905ba0805f6f..b005a105f0a12f173414f43d44490a36b4b44402 100644 --- a/tutorials/combustion/chemFoam/nc7h16/constant/chemistryProperties +++ b/tutorials/combustion/chemFoam/nc7h16/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/constant/initialConditions b/tutorials/combustion/chemFoam/nc7h16/constant/initialConditions index cf792704a718bbbadf618d34933ff303d89a7ee9..1c688651481b4275eac2bb9ad93bcb8a67cb9c52 100644 --- a/tutorials/combustion/chemFoam/nc7h16/constant/initialConditions +++ b/tutorials/combustion/chemFoam/nc7h16/constant/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/constant/thermophysicalProperties b/tutorials/combustion/chemFoam/nc7h16/constant/thermophysicalProperties index 835c4a266787d5f8215555e089ccc59a766a5913..bfce150f7fd40ad92427f7e1f3ea16567b1125f8 100644 --- a/tutorials/combustion/chemFoam/nc7h16/constant/thermophysicalProperties +++ b/tutorials/combustion/chemFoam/nc7h16/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/system/controlDict b/tutorials/combustion/chemFoam/nc7h16/system/controlDict index a0d39662e1206fe1da4f0a00bb946685f06af583..1078317c48a2b9831519eb1bdd1fed5136848bf9 100644 --- a/tutorials/combustion/chemFoam/nc7h16/system/controlDict +++ b/tutorials/combustion/chemFoam/nc7h16/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/system/fvSchemes b/tutorials/combustion/chemFoam/nc7h16/system/fvSchemes index 99bc94991be00c5cb21844dcbd659bba8c092308..7ccfabbff8c194b3fabcdfaa4c936129f5879b16 100644 --- a/tutorials/combustion/chemFoam/nc7h16/system/fvSchemes +++ b/tutorials/combustion/chemFoam/nc7h16/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/chemFoam/nc7h16/system/fvSolution b/tutorials/combustion/chemFoam/nc7h16/system/fvSolution index db4be99d68cb59e6688f432639df0f73d51e61fc..315c1dd0cfa4611f69945abf390c9d61572b63cc 100644 --- a/tutorials/combustion/chemFoam/nc7h16/system/fvSolution +++ b/tutorials/combustion/chemFoam/nc7h16/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/T b/tutorials/combustion/coldEngineFoam/freePiston/0/T index 8bfdf3ec375efb1bc761ef3e2f5ebbf611a579d6..c17827d1a19216ab4f7d3fb827a7816a18781637 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/T +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/U b/tutorials/combustion/coldEngineFoam/freePiston/0/U index d2919eec033dd9efb96f57ce99f7307d21bafb50..5d1f7643160f05fa648d95198ac81345909679b5 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/U +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM:.Uhe Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/air b/tutorials/combustion/coldEngineFoam/freePiston/0/air index 617fa94e18e7b5cd1562973a383e2666118cef29..87b0c3f2a6bf103429ef6615cd37f19db4190e16 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/air +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/air @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/alphat b/tutorials/combustion/coldEngineFoam/freePiston/0/alphat index 3ee329d6b557ad02f77bbcfe8c7a3c121598e9b1..e6e21d2240ae4adde3917b76de9c168c8e3f2696 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/alphat +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/epsilon b/tutorials/combustion/coldEngineFoam/freePiston/0/epsilon index 01084c61b13291dc79a8fcd82b6303f91de150f4..d1aa741f074594adcb80337c434dcd2d0c71430f 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/epsilon +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/include/boundaryConditions b/tutorials/combustion/coldEngineFoam/freePiston/0/include/boundaryConditions index 4e60a877197876d9c00274ae082ab4051c912574..80b2929b6f1b905291f95d39511fe2fc0ccc8817 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/include/boundaryConditions +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/include/boundaryConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/include/caseSettings b/tutorials/combustion/coldEngineFoam/freePiston/0/include/caseSettings index 3ec7016a0a4a199d7bdc250d5f1753ee97c21112..92176eacc8087309c2c2b12a0203e9d8908e571d 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/include/caseSettings +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/include/caseSettings @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/k b/tutorials/combustion/coldEngineFoam/freePiston/0/k index 86849b4e7deec6b8f83c960238698db000b2da67..b19a5d928592ec792850f1dd55f287409a639c37 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/k +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM:.khe Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/nut b/tutorials/combustion/coldEngineFoam/freePiston/0/nut index 7ab0b431383849fe3c12381e5823c8089d76b7ef..c3bbebadea51a452c27232a0b5eb4b2f6ee6bf0f 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/nut +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/0/p b/tutorials/combustion/coldEngineFoam/freePiston/0/p index 398f6d980ed870456834315994fb5a6ebc543796..a56101e0e6636198bdc3784b2aa083db84c7aa5b 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/0/p +++ b/tutorials/combustion/coldEngineFoam/freePiston/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM:.phe Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/constant/engineGeometry b/tutorials/combustion/coldEngineFoam/freePiston/constant/engineGeometry index e1dbe452d26908623e8a017fd95e522fb775e112..ae09a7da9704e4599dab133a16cfe5c0fe4269fe 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/constant/engineGeometry +++ b/tutorials/combustion/coldEngineFoam/freePiston/constant/engineGeometry @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/constant/g b/tutorials/combustion/coldEngineFoam/freePiston/constant/g index 4ff87621666899f1abece6b9ecb945c9abd63952..e9dfc3f353d2990103bc9b9b9ce6a0dd8943fe0f 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/constant/g +++ b/tutorials/combustion/coldEngineFoam/freePiston/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/constant/thermophysicalProperties b/tutorials/combustion/coldEngineFoam/freePiston/constant/thermophysicalProperties index 6ef8dd7e5874911623212b560c7ded05beda266f..9c83e140ce63e8c87276c9f08cdbe6b4bee088f5 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/constant/thermophysicalProperties +++ b/tutorials/combustion/coldEngineFoam/freePiston/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/constant/turbulenceProperties b/tutorials/combustion/coldEngineFoam/freePiston/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/constant/turbulenceProperties +++ b/tutorials/combustion/coldEngineFoam/freePiston/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/system/blockMeshDict b/tutorials/combustion/coldEngineFoam/freePiston/system/blockMeshDict index 2da4716209b1597a8ee7537e67622ebfb34d6c6c..dea25111eb16ad6ee738e88fffeb8050a5d5a806 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/system/blockMeshDict +++ b/tutorials/combustion/coldEngineFoam/freePiston/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/system/controlDict b/tutorials/combustion/coldEngineFoam/freePiston/system/controlDict index b2aea3e452eb93ad98961365080e55050b2bfa8d..21a776458661ecdb728604a49a518a9e90c52541 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/system/controlDict +++ b/tutorials/combustion/coldEngineFoam/freePiston/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/system/fvSchemes b/tutorials/combustion/coldEngineFoam/freePiston/system/fvSchemes index dde370a1a408b627abd7cdbfbc89626d9fd536a0..53cbbd1a59947f8e4109a223be7d9281050f9d62 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/system/fvSchemes +++ b/tutorials/combustion/coldEngineFoam/freePiston/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/coldEngineFoam/freePiston/system/fvSolution b/tutorials/combustion/coldEngineFoam/freePiston/system/fvSolution index 86356be7419b1a18dcf7b20d99c1845e98113eee..842addaf8f72c2009cb2f63334dffc66e5442aa5 100644 --- a/tutorials/combustion/coldEngineFoam/freePiston/system/fvSolution +++ b/tutorials/combustion/coldEngineFoam/freePiston/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/C7H16 b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/C7H16 index 171465a85f1bd422eb379196130eadc3b561a7bd..4005250b5a3259a3d10dc7bb5fccd41dd60f2d6b 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/C7H16 +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/C7H16 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/IDefault b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/IDefault index 6051cd61c857497a26be6366cfdeebc80d738a92..44fb4ca67039a2297b9b5a2024acd5217a403ec1 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/IDefault +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/N2 b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/N2 index 402eb92f3684a68a29674323c975a9f80296cc54..312fa34a1fc0640b6b52871799adda978c55fb23 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/O2 b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/O2 index 3d7db3791181b4516aefd98dd3eabb447c373771..773b3256d1af0fa364ae0be1c51cfb34de0f70c9 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/T b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/T index a610a782ab5ec57615a9128ff98e39c0a9833d92..32187cba7042945cc3ce5a424ed3a2220fb5eda8 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/U b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/U index f923cadf899feef39c698072f1440b33cb843a58..0caefd8e8c30ee4c34ac828894a5ba49ceaf57a2 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/Ydefault index 986bfe3284e20e6ef5d84cb40653fa93abe192c7..53966e7264941b3f8c3be885dd9a8339ff3fe5a3 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/alphat b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/alphat index ad38a264c9dd291f9d41bbb6f1b615f0ca38c737..7d2426818d5fe18bc40473f1d4518d586d8e6d93 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/k b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/k index ccfa8427a6dc1d9123160010719a4ec2a379ad01..1ee6e38119a0a23173bcd0c59dac31c949cb244d 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/nut b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/nut index dbf56f44986487e8860d1f72aea71cab9d804559..145750c006cd1ae9ab092f138a6e97f2a3c3b890 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p index ccd29da2e395d6b4cf47022353e65ed8b2b17078..59a8c2eb6ebee23aa4289d62b9c81752432a212e 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p_rgh index 865c7507570d3a01b39356d29ce940607050317b..f5225fe7366898ffedecabf97fff8bf8ae8196eb 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/T b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/T index 375ae21e7d79d2813bc46394d5e1e5aac5020495..4a92f8b02d4775eedae172e314e8be9c2c66333f 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/T +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/p b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/p index 5a41ed90e04052b38d1b9e54b22958cb6057023c..fe7a0b42042a5b6c2d087e9778a835a3b0767d34 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/p +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/0.orig/panelRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/additionalControls b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/additionalControls index 3a493fae60309ced290cfe613aa40d9e35361c29..dbdb42de6864eb1deba5d556d1fd4d16e0e33da0 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/boundaryRadiationProperties index 5b4f1ad4ff29b19e85b17a82de6e7712515d7a24..0fa81bfb1e92043dcb30a9a9d72c401a76505ceb 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/combustionProperties index 9d9f4c4f3a75da92b0ac4c8076d51866ddcbda08..1c54d43dadbcb8254281478d4f2a6816ac15b8ed 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/g b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/g +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/hRef b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/hRef index 1245e8e70f170f1043628b1f0602362421053116..597845f9c65724442803ddc39606ace0400f06a2 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/hRef +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/hRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/radiationProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/radiationProperties index 559cc7d23c206fbf3ef20539f85853fce7892f20..5514858e765c2920f9c5a95b522be6a614234224 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/thermophysicalProperties index 18c0b67cf43d5107e4085c7ba97b4de36bdddf79..0931c1dcf9a306ab3f8f6c7aa43d406200ca48f5 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/panelRegion/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/pyrolysisZones index 5d129c0bc95cab01ced9183fa2470adc649b03c4..1759eccdee01564ad31ed4c52f674644e62a4374 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/radiationProperties index aca9a2b5ff54287787f735246033d3c33b4a61a9..f41c5566f36334978c015c087ee3fbb70db2040c 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/reactingCloud1Properties index 97c15e75983cb599d48df67869cae3fc5bb32970..5a2b88cd94348576df31ee1e556318b99d387681 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/surfaceFilmProperties index 3d58f9079205bd20fd1217759ede4a1cb125a6c1..71786456657721262326874a6fa29fc5ce207519 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermo.compressibleGas index 3901453708b759158f91b3a2df7f6c748ff05c2a..51ffe9f721f2691f62a1582706e42994ee4a0bb3 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermophysicalProperties index 627d937368a2d2cb2efc234092ff7b5c81d7ba13..033f61565f4f4d418b9507c9ab34747b5a2d8901 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/turbulenceProperties index b5080b0a360d96bbbcc42272497a89030f6bdb33..92238af3b8ae10f15dfcb4175eb36ae987017395 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/blockMeshDict.m4 b/tutorials/combustion/fireFoam/LES/compartmentFire/system/blockMeshDict.m4 index 22c98c8d2f35816f3f0c078375e2fdcd3e06f5d1..92e56b211be0cd8bf54bc258c203a9cf71070809 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/blockMeshDict.m4 +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/blockMeshDict.m4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/controlDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/controlDict index 119a2a0df0ec5cc73d1eda0854851c3ff4ee7b56..c59beb1fde7ff870dd74a32489fea0b131b765ff 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/createPatchDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/createPatchDict index ac640df952f4582cf4efa1e9417a27677f7eef7d..7cb98a92cb53860d2b6ba9c7a85e20036280c85d 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict index ebfc054367011636a83f47f3b8d29f24a3ab9b4d..3220b6607ae74014818bd25513a16e00d3ec7241 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/extrudeToRegionMeshDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/extrudeToRegionMeshDict index c4c4d171e91eeb0972396939dc51cf747bbdf507..7e6376d76107322d1e7caaa9f317e393dc70756e 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/extrudeToRegionMeshDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSchemes b/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSchemes index 3a77367fa8b9679d953845287ac2f2f6ff4f98ed..22b37bfd57a32203b8987b9ec2be7080da945593 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSolution b/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSolution index 574c7e4c4334c5355b02ec97315167ce6d8a71b8..5eeb88a06e06ba539549edc8674c7a7ca92fa27b 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict index 7f78d99ff4a71fbcc2575a56fe66d31727bda2a0..b3bab9434e3ea04c214bd09744ab8eaffcb68889 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSchemes b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSchemes index 9720dc60739fc3a7f38c25bebfe346c61957f4a4..ff67a1695647dae1860769f9e65917cfdae83060 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSolution b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSolution index 0bf0071f3dc8ae36d510fa7d72d449c690680381..8f9401f3b78428c5c9f0249b34f1a4e75efdb7d8 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSolution +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/snappyHexMeshDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/snappyHexMeshDict index ce03dd9cf3f87d26713e750cedda58ed12a6f088..adda5a55818ff00834d680f800ad3e292e3f22e9 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/snappyHexMeshDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict index 09b9f0c64ae0c626bdcca1f9918cc3a178bd112e..84a800c096b8d62eecb385dac9aebfcc5e3ee44b 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/C3H8 b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/C3H8 index 046eafa1bf06404c5abfa2d1a52d7a64c777acfa..5c0552c64f25dc170f3b8550b46262a71dcc4704 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/C3H8 +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/C3H8 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/IDefault b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/IDefault index 81d9e54344cb4f3cdf220ab150f6c57af917aa56..69b9a351f7e38cd5e9a4043fe5de71d6d9e18952 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/IDefault +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/N2 b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/N2 index 5bb7c69a5d622764a97d05f34422bfca0e07d787..4dd833f6f5fdd40275d0a1fae73c8159b8089eac 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/O2 b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/O2 index dc4cf270e12dbca4c9b8f927676baeb8db638a22..9c03f0cf4b77078c5bb076aafc56e39ea449ccf0 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/T b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/T index 23bb939329dde11bd9085c40483ff60f0b5c55cd..f57a6f8553eba4ee4e62d2f5a0bfcd0cdcafd72b 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/U b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/U index 860af17ed75e90ddabec89572155a109460a56eb..1a817edd7e8e5c1117a5f1be014b9985d1c161bc 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/Ydefault index 3073595e2de18bc94b7f248c426c8b0c32de0e85..ec3c8d56bc2b4514d60e666b0959aeb93542d508 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/alphat b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/alphat index 3f526d45735017fa001194b4b39fab8ee378c0af..82133805a1f8394a8ceba6a48370d137998f5040 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Tf b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Tf index ec8149339d231a2decd1f3786662854d62a7472f..bd669aa2d2c402243f137268d9c18c2f2a69f099 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Tf +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Tf @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Uf b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Uf index d6f97f2c3e87b9d6a00cde9bbeb1f5a2b9e68106..ec54d0c751ef9014793ebefdf571ddcaccc02c51 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Uf +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/Uf @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/deltaf b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/deltaf index 9aad864703a8f5fa959e349a3fc26aa6746e8c65..f3c5af1235d72247eb4bc5e6708018fe6b8032ef 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/deltaf +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/filmRegion/deltaf @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/k b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/k index bdd9bc5dbb09674a3b68ca4d6926f6c895c857d9..c7e540d8263898f4f4f786b2d09a4fdd461ae85a 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/nut b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/nut index dfd313eab3a73cd4d67d3fce9554aa8b1c84aca4..27fedbbbc54bd57fe7e813ebc5bdc9dea96c4f70 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p index dd1a69978321e770ae863aacc8ac11685eb7d729..4352a1c0346f72ce913b95e1d27df4b8cbcd1458 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p_rgh index 656a42743ecfd7f391cc9a55acfc73b7a8987739..0c075fb65c454944d1984184a0701bcb12b97da2 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/ph_rgh b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/ph_rgh index c58e03187cd0eaae9e3e1b365cd36d63a200ee72..7e14ceda9ad01e729e9dd350ce065ea0cfc94e12 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/ph_rgh +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/ph_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/T b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/T index d12b95e99d233f05c1b4f8d27089310cad310aa4..79ebf68d9bca5990ad029466e1d48233f11f2aee 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/T +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/Y0Default b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/Y0Default index 3a2227f504c560685188e0e00860c986636cfc73..2efac21b80cc5cc8761fca9a2e10ad687095e0e4 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/Y0Default +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/Y0Default @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/char b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/char index 5c3ec784896aa96ae947318c3eef61f158f9ac9c..b07850622607e657a00a78e49435d0b7533f874d 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/char +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/char @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/p b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/p index 5001355c5d2b67b87175b469c8c12f09458e1b23..59a73a3ee810219c235cf6947b6c729eef0e5945 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/p +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/qr b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/qr index ae85b445635c7116bb77fdb74ad2a312ffb2b27c..0f19c8ed8fa373a4c88063c21ce3ba784d9f13b4 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/qr +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/wood b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/wood index 2a1c1e2f000b7dacc878f01c85b3589378e152f5..4780e8d2634387333daa0a8cf15a7aee63108339 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/wood +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/0.orig/pyrolysisRegion/wood @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/additionalControls b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/additionalControls index 3a493fae60309ced290cfe613aa40d9e35361c29..dbdb42de6864eb1deba5d556d1fd4d16e0e33da0 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/boundaryRadiationProperties index c6a3edbc4df7855d2ab57e35343fd73de8b206a3..d118bbad469d880eba066dc36e2c911577ebd088 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/combustionProperties index d3d007ceb116b0bc3dc4e9ac8291d4b280d0df2b..ea2831aead4c471461f1be31e0c0300d2c8c2b12 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/g b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/g index 1d8ddca689eb03eab9fb12dc1675842ac50676d3..f1ac736cb343c2c965b64565fd3352e6a35ab943 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/g +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pRef b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pRef index 0bf0c3817dd8f8b86e9b56300788a463c9dab176..3878db14779d512200bf83d642551fe5555b7a36 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pRef +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/chemistryProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/chemistryProperties index f827c575db32c2f0ad14c01a402a08fdb10f83d4..b6eb84ac2d07f2bea755a706408a08984069d692 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/chemistryProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/radiationProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/radiationProperties index b97dd5e6aa65cfe4e6996d4f1d0e4ee25ed69c7b..8b9bced8ffd6446996aa8a4cba643ae72eb00e1f 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermo.solid b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermo.solid index d568212fd0da98f980bd950a301245ee494f2f5c..77ba19d03276b6be183be9e7687940ee57041202 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermo.solid +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermo.solid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermophysicalProperties index e84d1a96b1c632a434a908170e992e67ed1a20bb..53929b4898c59ccd92ef1756da6cdfa5212f7012 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisRegion/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisZones index 5384e1378f7c53f71b3abb81dbfb5a3d4869d229..ab531e7676338254401032e4678e47228ffc313a 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/radiationProperties index 8d6f91d8c02a2551d560161d17b8a6bd081a3dac..8f1c46e4dfba1a221fd6f46a7ea0a45dcbd11687 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Positions b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Positions index 9ebc730fac49aae1ae238da451de416df347a672..f518fcb81c1c7d98a58966e9cd14bf2921c85203 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Positions +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Positions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Properties index 97c15e75983cb599d48df67869cae3fc5bb32970..5a2b88cd94348576df31ee1e556318b99d387681 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/surfaceFilmProperties index e11bd455f3ec8d1878a9225c95a4352eb921d568..e86781d12a72fd76f57f3c5dcae246d36e500ef6 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermo.compressibleGas index 22282a880b51c168bbe63452403e0bd278077213..a451246db8ba32ac438695c4597336e6c366c73b 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermophysicalProperties index a86fd9557c0ebc3ba3deb1142b4605292f61f2fe..5caa989bfd8a7a16ae2ad60e23aaa7f183630bd8 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/turbulenceProperties index 4bcdc5244f09adcb8ea508d62ce443c2a821e1c6..77561c59caa25a009e0b8c07195008c7a20bc199 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/blockMeshDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/blockMeshDict index 0439fd97adb5c15b624f8fe4c0ec92ce0a16585c..a0c5b823b524b294fa46b234690bf8ec314081c9 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/blockMeshDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/blockMeshDict @@ -1,7 +1,7 @@ /*-----------------------------*-C++-*---------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/controlDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/controlDict index 22d728d76db9e53cb279c2a381bf85b4e61095f6..02cb270c835c0f44b0aa0691bb885d97b61b5e3f 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/createPatchDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/createPatchDict index 33570509b46b7b2d058462f2178cfa2754854152..7b4f4121f40aa43e3f1f1cc24e1f59ba29b4e5cf 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictFilm b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictFilm index 6667aab6e4bca5efb9259a643af3357b81553e66..6f264d07d7935c6adb53c3493899bb2711257c25 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictFilm +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictFilm @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictPyr b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictPyr index d23ad4722d5a632d5179b9545e4b1dac028b57e1..abf151cb6e59c609f966847a0d73a07f282d2b0c 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictPyr +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/extrudeToRegionMeshDictPyr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/changeDictionaryDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/changeDictionaryDict index 2ac04d046e06e24a0fb0aff160fc0de55a3b3ad0..82cbf8fdcecfb7a8b6370e89aa74ab974bb0ebba 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/changeDictionaryDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/createPatchDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/createPatchDict index 72dedd77a4cf2285794aef02e88c750525234327..c2c775d8b64a943d80fadec20dbf1efa56215db6 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSchemes b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSchemes index 09b632d24b8618d28faa93cb536cb347f8de2980..a1ed43564cce2d3ebb9100bb8074a0fb0cc04476 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution index cdc6f86ea1b57f4da3ca0463514c465284b28d7a..ad1f2a654bcada604c3172fa55fe955b119c8256 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/topoSetDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/topoSetDict index 7f8bc118db615549678614ac2c0ecf9972fa4832..b99567d5ea2642e4ba8c251dd068f5840e0c68b4 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/filmRegion/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSchemes b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSchemes index b7ef0a8c70884b551a8e0abd7028e1dc9344d3ff..382087353b662c19ded2c8fa1c2c77ebb4174d80 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSolution b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSolution index e403bcc7fe990259a331afb1440ee130dfb71c6d..7d1fa4be7a71e0a4871fb89e78de6b2fc3a2e381 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSchemes b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSchemes index 0b70058b927cebf52a6adde98b16fd3a9dcdb0d9..6349a1775d795ac247c8f94b0b1e4327962f79ef 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution index c696070d8983afbd92d5371b9caf04f2ba4a202d..cc0411d19bf0f7600accc8dbd9f0ef49cfb34196 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/topoSetDict b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/topoSetDict index 680ba43a193ef43e59e0aa42b3e95a67d2b7b433..2a15fc6998494a90cd5528017709ab2ee84b3ad6 100644 --- a/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/flameSpreadWaterSuppressionPanel/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/C3H8 b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/C3H8 index fb048016e6a6d85f1ebfb7863267d106cda260de..c69a22e4c447c4575cc56eee0293a2bed1f0496f 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/C3H8 +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/C3H8 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/G b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/G index 9bed163cbb6c54c443280eef08bf026125be45bf..5ca50962ba0aac6b074b48655873d775a1efe657 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/G +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/IDefault b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/IDefault index 2fd2256a76e587c2cf90a038c79a93a070947fd3..2e70b39c8781f1a0a5d717c1ec47b91d113e815d 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/IDefault +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/N2 b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/N2 index 30753b7490b1b423779e063ccbb31720a9ed4e71..02141bae8e306ae5d4c12909d636f321321a07c0 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/O2 b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/O2 index dd1533a58c4d7ddee0cda0b769608ee30b8ac5bf..9c53a809386cb81bd1603d641648c85ad2aec00a 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/T b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/T index fe66045eac42d58a9db28acbbb667696c57298a3..db903a98584789e0d90e02ea0c36f875d64658ae 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/U b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/U index c3d46c0c4fc16bb8301546d874feedb938901736..cc4e6e97cfa60cfc0f6be4e5b043a37661cc7672 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/Ydefault index 891356ce041703ffe10285ab91c12495ecc69064..e6643874565eede8bcafd6c51f463d7cc3194ca2 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/alphat b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/alphat index a84e69960bdd27159a80104cf3ad73a45c1c06ec..3ef33eef29aad91b1e3ddcb02af96b83d9fc7262 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/k b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/k index 236937579d17f1c6bab6377b08124fd33caeb22b..82717fd63c6ee199387b5e2f0ea0b4f19daf82b9 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/nut b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/nut index 7fe8fba70a5a35ffe42204c88e3d48470699145c..da7a68536bf3d4689925303e0b9549d48edeaf09 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p index b146c6e79b7197802296f36cf328365cf8e6d105..62c4c34c680a174395d1bbf9ae845176a04d5f0d 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p_rgh index 13b2b0d32ead9b61b6e4eef8ba65fcb441665df9..d3ed300fe07e366547ef5563955aa8eaad1ba3f8 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/T b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/T index b6cb47139ea13dcea425c9dff2e32f8b086b5ef7..f9f1bf45b03e1f23e72a31678073a21b33bbbe8b 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/T +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/Y0Default b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/Y0Default index 690e5ed5b0aa546885a5cf3443addc3982ef337f..7b3cce94567f0cc8d1a18d7f94d4616a3f04d339 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/Y0Default +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/Y0Default @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/char b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/char index 5ac74ef654924f4e9ea3b5308ea7fdb9d12de6f8..a3e29bb934c49f44c4930104e6516bd79cce3fca 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/char +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/char @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/p b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/p index 5001355c5d2b67b87175b469c8c12f09458e1b23..59a73a3ee810219c235cf6947b6c729eef0e5945 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/p +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/qr b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/qr index 472096b5657d664fcd1e1f789b583b759fb3e8bf..a1cc4adabbc9b2c2039fb6d2e629838e8404be96 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/qr +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/wood b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/wood index 767591240574273e3f2dbc91e86d4c5805ec8332..4526768b5c1bac0a1c9d5c9d31e3e37a5ff94f82 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/wood +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/panelRegion/wood @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/ph_rgh b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/ph_rgh index 0b2dff24770c09595740572a6117629c0a6da2ea..e28bc7207a65e644ee4f91ba929e52b8d20db3c8 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/ph_rgh +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/0.orig/ph_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/additionalControls b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/additionalControls index 3a493fae60309ced290cfe613aa40d9e35361c29..dbdb42de6864eb1deba5d556d1fd4d16e0e33da0 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/boundaryRadiationProperties index c628b21872f9377bf7b0bfd704ac16d161905dee..823b6f9573583521036526284d0ad2d59c005e9c 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/combustionProperties index fa44a5a81ee62c132b1656a8e5be4519839baa48..c9ebc7d486da72c3a3dd234338717da54e73b15f 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/g b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/g index c85835cc985cd8fa9b7522852af10cf146f15ea5..a3614d2515254834cc6af080d950afa4f88da782 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/g +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/hRef b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/hRef index ea5eb675958542c9c788e842f9aa47b50221a628..28b686b286e38f41db0cdb097cd8cd19d5ac5d47 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/hRef +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/hRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pRef b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pRef index 0bf0c3817dd8f8b86e9b56300788a463c9dab176..3878db14779d512200bf83d642551fe5555b7a36 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pRef +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/chemistryProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/chemistryProperties index 24827e57a3dd5495eb4c112869b8712e409c56a7..d7e247ab05f792ed54fccd434a1179b2f33ca12f 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/chemistryProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/radiationProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/radiationProperties index 58ce7eb6e1b587718edaafb52a1473267be0b931..b5ebd4e4ffe9feaedefe0cac8b80ae2175a29c80 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermo.solid b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermo.solid index d568212fd0da98f980bd950a301245ee494f2f5c..77ba19d03276b6be183be9e7687940ee57041202 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermo.solid +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermo.solid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermophysicalProperties index 306f986f92b78769ec11a11757899bf06713352d..cbdb59f1c89e3a66773cea60374a726f4e959267 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/panelRegion/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pyrolysisZones index 7f036069b7794df5d1320594360c7a9dd8818449..a12023f40a08457b97f48af42656f5d3f57836c3 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/radiationProperties index 1ba210d8d11a96e6a61158299f0a2402b1830089..4b77c087c972603aef7506767c8982d91fba889c 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/reactingCloud1Properties index 97c15e75983cb599d48df67869cae3fc5bb32970..5a2b88cd94348576df31ee1e556318b99d387681 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/surfaceFilmProperties index 3d58f9079205bd20fd1217759ede4a1cb125a6c1..71786456657721262326874a6fa29fc5ce207519 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermo.compressibleGas index 8c3dfc2b7d605f761ee96ef0d928447558606599..e15d7fa75b44f2762b2079bf8862146d8855068a 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermophysicalProperties index 9429a5130d9aa200f5e4425aae83fe04f2b13b31..5fbc441bf932dfb7829576a33f0ac2b39421f43c 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/turbulenceProperties index 4bcdc5244f09adcb8ea508d62ce443c2a821e1c6..77561c59caa25a009e0b8c07195008c7a20bc199 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/blockMeshDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/blockMeshDict index 4e3ce130fd301e2f06e06ae1b0d12e54f3ceb938..ba20251cabfa562ffaa1f3950a78d59665701240 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/blockMeshDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/cRefine.topoSetDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/cRefine.topoSetDict index 63040d19afdf050e8dbf2c2c19779406be2f4e24..72be0b70d8a1fb65180d4bbb18b93dfddb2fcd57 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/cRefine.topoSetDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/cRefine.topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/controlDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/controlDict index ecd06ff589bb938f07d8ca66ccb36dc9e9930d4c..828c94ff3874bf44d195e5aee2edfdd7db1f2ae9 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/createPatchDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/createPatchDict index d295b41013d6b7b549ff3feb433531c706c41426..8b6bc8b62d73ccac73d24b1a4a0f6798bffeb6c9 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict index e0de3682dd3447e5736f2c5c4ad51b9726632bef..e3c75c6ef8dbbcdba6a66f44331d933aa1b4dde0 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/extrudeToRegionMeshDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/extrudeToRegionMeshDict index 62049d15b14a2ea2519935c1cf65afdc33e00502..7b041aa254d3d03c28b47747c61381eb506e2571 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/extrudeToRegionMeshDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/f.topoSetDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/f.topoSetDict index 439a5727ae33ca6a6751d73cf4228e9178b7a700..ff6842a1beddcf672a7b868d3f89cfbb21ab5b34 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/f.topoSetDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/f.topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fBurner.topoSetDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fBurner.topoSetDict index 2e6e14f3ed9765f72f63f5359401a0daa47fa429..ed6533724a8cb4efe61901e544bf92a504597fd3 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fBurner.topoSetDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fBurner.topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSchemes b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSchemes index 2e92420f7f4b0a96773d720a080c85df20769c36..568bf3f78e77c178a955334ca147697e1b63e500 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSolution b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSolution index c84e193fa770775d38b10319a3cee70d432cd82b..a4c72652e751bdbbc6c965136445293fe67349b0 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict index ffe6c9e13af3f52f8a9a9bc6e2621102ee602a2e..d691193b1b4ff3d688ac766c50de0db059c57846 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSchemes b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSchemes index bff72554206d5268aa3f732d70ffc8757526d5e0..80b8754a9c3f8f23710cffc19e4d0771c2ebad9c 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSolution b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSolution index 199e2034ed4dbaef4bbd72d1b7df26fa6e8aa46d..04327a3556dd2343404517ab87906b95fa19a34d 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSolution +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/refineMeshDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/refineMeshDict index 47e911f5cc3e3e94d50a3cd9383363f8754f4e42..2b2310aadb9785eca94a2e7b99ea0337add5108a 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/refineMeshDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/refineMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/CH4 b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/CH4 index cd3123ef39b4df94b77ab74ca200a9cefbb89a9f..43404fd922821165e0b3594099a7c3962959d2e6 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/CH4 +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/G b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/G index 0e5b875b7dfc8e33fead32d3ca6a256a32f002c0..ceb8b682f9f09a265d69b3a938eb1a93575299b3 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/G +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/N2 b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/N2 index e47cb3a2f02f71dfc241260ba5d42d566cc867fe..ec4385c15868ed8a89aecfe261f7b7bc43d0be4b 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/O2 b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/O2 index c81e3a40d82495f0cd0c9d7f314c7d040f5e3151..9c8a979f23d1123a7e91540227d140059afcf362 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/T b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/T index 29e5861ccf9d22a2e324e2e5f1525974655d62ad..aef77648fdf22beb49dc2ecd5dcfb914bfb7325e 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/U b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/U index c05399471879dbcbf64138aaaa55b88489180ae7..f1035b27e7abefb8b72786f5f7edc055f6301989 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/Ydefault index 70be2711d9d488225d9e414a933673228b41ddaf..4b3489995784067e88dc6726d73ad875321e9fe8 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/alphat b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/alphat index d6cd3679a6f5a20aa60bc95f09e6ad072a92e201..a48d76be5ddc74f43bbf4aa1399c60048d9c96c0 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/k b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/k index 882be14f1f3c35ac66c8b7f4b0142d6c04fdaa46..9963d25765ad693fa8ed13989c3cf2c819541e5b 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/nut b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/nut index 0e28e79f01e42eb049ffaad138c70b832997a3dd..b0f5432dccc1557204780222cd4efd661cf51d5f 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p index 1db3b3882a17b25a20a0fe74bb1758e77a6de788..f96a8e271e3cb7255b9bd9d579d20a489450ae7b 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p_rgh index f89a5d8a7571e509ec720cff2fa6558bd1307b8c..bb7e6464f6270af61d55f10dbfcc38ac40a74ba1 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/PMMA b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/PMMA index 31a2d24ce32b1bd642f7bcfdbcd4d6482b106725..8db155e7f3aa4765c2e946d9c97017fee3745548 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/PMMA +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/PMMA @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/T b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/T index ed59cc7acc634b618710ff72b323d5667a99d873..5067636fed28316bea13b131a1d5fe721b4b8b2f 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/T +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/Y0Default b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/Y0Default index 7bea52ed0abd0cda6f60c027e747e045e3524729..0ea327bb507135e3c4978b085fc8555303243a2d 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/Y0Default +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/Y0Default @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/p b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/p index 5a41ed90e04052b38d1b9e54b22958cb6057023c..fe7a0b42042a5b6c2d087e9778a835a3b0767d34 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/p +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/qr b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/qr index 3c14acbe71979115feaf8b5b505175ca3c365631..f0732ff3e1030b825de922dc83b82642bc626b49 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/qr +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/0.orig/panelRegion/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/additionalControls b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/additionalControls index fce0b52920638df97bf40bde3771d0bf6aa1ed5a..14323d9e81ba7a8bb3e8a80e7ce49a5aec4b7539 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/boundaryRadiationProperties index fbf955adf8aca40aace5b9f7cd49e2a63550ce38..153935b30507a41510fbccb120ef865c64200198 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/combustionProperties index 8aef4dfb2583dde8bff4e17129898973619305fa..5fdc16d9427c94b4cb07be565e6eda74ee467690 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/g b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/g index fdb4d1cacf717c936983337f9e8f4ffd6db71dcf..447e539058ee560afe32dc6b00283595f0eca96e 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/g +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/chemistryProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/chemistryProperties index 11a8facee49bbd08305e0f94fb262c343a368d73..27c11443601280a7df043a9fee3acd6cfd17f7d0 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/chemistryProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/radiationProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/radiationProperties index fdf081b7110fdb9206a1fe586d271732f0b4767d..83f9c48fdac66621ba5a80b6489d814834224155 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermo.solid b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermo.solid index ecc6b45b9df738f4e1a3e568d1edf760aeb05881..615561584b462ea0693923008e50d66245bb1be6 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermo.solid +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermo.solid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermophysicalProperties index e980bb19d6b4f1b764129a86c19f7d71d345fc78..345a31f0d0fa2aa780ba75508c89e106415f1751 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/panelRegion/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/pyrolysisZones index 127c14b497153de495729719d74393f0768632cc..54099254bbc71c17ebb262b48680b01c05e02247 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/radiationProperties index e98870b9d4aa7fccdcb9b04bc3409efce644d9ec..b6c6c6551e402bc9adad017cddc4bdb9329060f3 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Positions b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Positions index 6b468745f545edc4ca6d457ce20d81eb17a823b4..41bce44bd5d157718bb780960d482652b3733e86 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Positions +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Positions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Properties index bd8b7b5d0d39784b415f4704ba6bba4d0df8640c..958dc01fd3b4a515a686769864da6bfb5cb8b0e0 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/surfaceFilmProperties index d12da8a07952029f4d0611674699f7292f79792d..f81271bc23d4dc5eb6dde92b1c4a4df95328a108 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermo.compressibleGas index 523bb4c7822c7ea305688f09dcd1870d8bae5b2f..4d10dc27df6a3b00a1b0850a7d6cd58fba31acd7 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermophysicalProperties index 2e390a620987827c2cd61d30835b5918435615ed..83a22097d2ee0fe86d014e9355f01b6b5d2b3578 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/turbulenceProperties index 4bcdc5244f09adcb8ea508d62ce443c2a821e1c6..77561c59caa25a009e0b8c07195008c7a20bc199 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/blockMeshDict b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/blockMeshDict index d056cba259d6f800a244c8c99502778af371f4f2..3ca1de7131b828030185bebf0404a20d79c5d75f 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/blockMeshDict +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/controlDict b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/controlDict index 41fb9f9c455463a082c19541e04651e66ac3d8b2..bd19455d4e3dbfcf1e8fd7ab8a9ae7b7b19f79e9 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/extrudeToRegionMeshDict b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/extrudeToRegionMeshDict index 60bc6388cf6863076eceebe49287d77c7960e802..027751851cfa8924948a683093df8da9f4631588 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/extrudeToRegionMeshDict +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSchemes b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSchemes index 5e4ea5f5318247a0b9f92a430b8a36757c3272de..79b8210ce9f4da5d3901a29569c36c3dda6d67c7 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSolution b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSolution index d1552998c97db7fec5382e5977e58ed37b65c568..5ab2aee048b4ae60158a48a16a2def069ccf105d 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSchemes b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSchemes index 27d6656048445e51759a2c628cd5ddb616c8c6dc..8e86df32932c9d382b0d56f800fd23d674153894 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSolution b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSolution index 67edfe3037bcc22381569afb0d19d8e560951810..a2404ac372fa77991ea38d586527f79ad0908c40 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSolution +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/panelRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/topoSetDict b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/topoSetDict index 74373e5e4510982117019e8e65e406a5a8dcb1f2..352ccf6c3d50262f6d04b76c751db947ee31603d 100644 --- a/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/simplePMMApanel/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/CH4 b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/CH4 index 545b3aa5c8a4832903084f1560f8eca009de77ed..af355051db380637c6becf57b1d47c5f1bf7a34e 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/CH4 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/FSDomega b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/FSDomega index d66d03389be13f0dfe854a9b9e54c7560ae5ccd5..1c482f5be67757e3e5fc44a95974b821e129f1d0 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/FSDomega +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/FSDomega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/G b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/G index 2d10ee57e03945c5085fba1594e9f015c842cc66..345c161c4587d3e9c816ed71d3f2de0f8df45072 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/G +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/IDefault b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/IDefault index d07c643e1b74582cb5a79d16c5e647def62f85b9..33d4d2babfadc94ff9ed70a30f507573569b278f 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/IDefault +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/N2 b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/N2 index d7d81a299a762c40e2f42209d6801cf90265eb31..7e4489eb32a0d0c9bad83c3e4176e4e1a2935218 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/O2 b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/O2 index 74d4e506e860fcf9288e96aaf68c291023f516d7..cebf0a7aaaf20f75c8a4fca63a5082366dd5bc76 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/T b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/T index dc91b08398360ce868248b5411130401df26966b..51710b86a8c6604a85512f2ef170991f56ebc855 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/U b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/U index 97cc802b27aec3cb555445e04fd807ef52f8b406..8509e67386f9248947be32ec4ee114e23b904fba 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/Ydefault index 61522efd1fad47736fd3aab4a2ed70f039b10db9..6c2d0805261c4832f8d08fa0f2395630fe601910 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/alphat b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/alphat index 29c3a7da8269d736403e306465642119642c28de..e86633b88c484353ea2b031e8231e6a5b656294d 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/k b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/k index 93ca288bf430906ee74052cb0ae5d4e559460c95..ee65d6cab059cc1a6696ed92ce8aa96987140b0d 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/nut b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/nut index 8df532d74b85224dc906f9ece3cc67b9d22dbd6e..ebbb93a9594604c060498b7ef7ed9fab2565a11a 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p index 14f5a9cd83361d84c2887c70f8254609f112353b..8c67c84ffe6afa7ade48c9fdb6c24522930ad3ed 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p_rgh index 73c2de8b7fd8abf2bfe29d14f200f97e7d720c6b..980ecebaeca6ca65ea987f114585e14f55ea9bf3 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/ph_rgh b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/ph_rgh index b7772b445f5d482796973166acf99232ca715ab0..8b01847f5cbc25b5cf352e70a0fc846ae7de1dfd 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/ph_rgh +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/ph_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/soot b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/soot index 35ce7bf2c412c5a2b2069c1a13ce84f156935f0a..c8d8618f865a6e754519506b369d9644691c4fbb 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/soot +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/0.orig/soot @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/additionalControls b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/additionalControls index 3a493fae60309ced290cfe613aa40d9e35361c29..dbdb42de6864eb1deba5d556d1fd4d16e0e33da0 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/boundaryRadiationProperties index bd66937e67254b391d03dd7107d2b1c762dc18a5..a17d403b3044560bda11873c710f8783b0d10b13 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/chemistryProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/chemistryProperties index 5284f13d9db70abb42ddec8ef1423324b649a53c..324585e4aa04219713d77f7b15dda966aec5f421 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/chemistryProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/combustionProperties index 05a13302ddbf2ffb3c15c835753bca7bafeb48e4..e6308814cd3d886e490e51803b851aee57789e02 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/g b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/g index 3af0679fb0bb0a5e8ca3e089de54608f493b33e0..0c5535932669e8f0342cba1ae577082d7345c3c4 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/g +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/hRef b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/hRef index 1245e8e70f170f1043628b1f0602362421053116..597845f9c65724442803ddc39606ace0400f06a2 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/hRef +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/hRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pRef b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pRef index 0bf0c3817dd8f8b86e9b56300788a463c9dab176..3878db14779d512200bf83d642551fe5555b7a36 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pRef +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pyrolysisZones index f9ca2592b944b65c83ec1e103af272c070794e03..464aaf70509766a5a7af9a62371ad3400fc7c581 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/radiationProperties index 4014e060cae6ab86508782f73022ab75d558c64b..c2372b0ff490fecd938ff0861f0b805a0f321c51 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/reactingCloud1Properties index 97c15e75983cb599d48df67869cae3fc5bb32970..5a2b88cd94348576df31ee1e556318b99d387681 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/surfaceFilmProperties index 3d58f9079205bd20fd1217759ede4a1cb125a6c1..71786456657721262326874a6fa29fc5ce207519 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermo.compressibleGas index dfe4b6ca0ed6e5f4a8f9694772cba50330f1a9e5..54f6decfa886451521dd839ef69a7620a8a4f7fe 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties index e91a95bfee12a286c79457e05fac373cdc047155..b094fd1c8f3eba34b8a9d3481fb71f0af2520bb7 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties.twoSteps b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties.twoSteps index 2e2ab85a0045717e07efd56b390b9c5a2bb45cdc..7cbd2af1cdd82e08a8730ca21494c579e98c1ce3 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties.twoSteps +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/thermophysicalProperties.twoSteps @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/turbulenceProperties index 0a14063bb426260086b9f6ff4c6c349d2c25bfe9..81d74323e148217e23cdc582ce424b10eeb1a7bd 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/blockMeshDict b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/blockMeshDict index 3bf16e37b3da1bf913d0a8b68059d010591524fb..fe74a76bd9e2ddd9bea0bff9a4bc1638eb31d5db 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/blockMeshDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/controlDict b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/controlDict index 5bc9900ce3a23d5fe2cebb1ee4c28e75101e7e0c..bfef111e5f2c425f14ff123bf4e57a8080265f72 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/createPatchDict b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/createPatchDict index 94ccb82756c95033ecfcf6d52d20232e8b3f0e23..e8d3d1557a1643d7d5a51251350f35e36606fdbc 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSchemes b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSchemes index 9b34579cce286a967f113a7dd84ba3f9757c1beb..5f5321c978b32760622679b5cb55528cf97077ee 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSolution b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSolution index d130d30e02e5e676047eee75b190a18a6474afaa..d29c540ce036847814a48274715a2cd6ab92888e 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/topoSetDict b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/topoSetDict index c9c368591a01d94cfb97f1a552a8be39ff17b1f2..39477d70f1ed588473e525dc1d3aa009d49c7cd2 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire2D/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/CH4 b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/CH4 index 5a729cfe940c3d9b2f83915629018d8e8f135be0..d45f133cc834db481995fdb355946fec62771443 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/CH4 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/G b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/G index 0acf9709606ec1d3b0e80ea9b6177ed7e121f313..09c78656e3779c37bcfdf5aebf431e6bb56f0b42 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/G +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/IDefault b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/IDefault index 70f3d521dfe97bacb3f668ba9f61f139923fd2be..188cc3423dfc3cb36472272f69a0af2e8b6079b4 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/IDefault +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/N2 b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/N2 index 16e6291ad7afa51a40675a723907a3125a04f314..b9eb8ef706a19de498ef141ca8a1a0ef0cd863bd 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/N2 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/O2 b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/O2 index 88ad3b9597d128cd2b514b96b85e858ffa9c9e2b..fa38155c0564c79720b884c8145f042c506699a1 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/O2 +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/T b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/T index 1627684b71efb9c765c85bc96c3019991d35b1ef..094b1ac8854b3ddda456b0024c3d595ab796639d 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/T +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/U b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/U index 42faa990ba88f2212493923ffd16dfc968008fe4..2b26714d3a675b027009157bb958c1b540a0addc 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/U +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/Ydefault b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/Ydefault index 15e7fd2e32472d4c1faa0cd4d5bb1b9fb2d96672..903c29d036a3d9d4317db2543a0c241d3012d0e7 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/Ydefault +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/alphat b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/alphat index 4ff3c7c72a32225cb5e5c97a53e7ab3d67397dfa..fb9171403bb612774cdedd970450d5a564f355c7 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/alphat +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/k b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/k index ae324dcce8cdaa39856f9778a5e5babd7e3585b2..bd7c60467838e2b33f0fdb3e01b7dbb97600658a 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/k +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/nut b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/nut index b5a43071e6e4403ac5f6a2ef1f436845e114d284..ea0f0a0209037f0b33677cd4b33b509d97f08666 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/nut +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p index 25eab1a6975f6e6cc408c9e9004c7e5cee66298b..538ad1d92e1cf290fba0f0a919b1c2d57ee427be 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p_rgh b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p_rgh index 7bbf7179708b7c4eb17953499dbe1b7fc0b6e2bf..16567ef6c3eeaff1ed1d2fbaccee4980ee039eb0 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p_rgh +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/ph_rgh b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/ph_rgh index 4cc775b63aa385581ff18475cc3d8ed9c8e99769..fca3bb72db36d8015cc9531e6517aa84fe714beb 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/ph_rgh +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/0.orig/ph_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/additionalControls b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/additionalControls index 3a493fae60309ced290cfe613aa40d9e35361c29..dbdb42de6864eb1deba5d556d1fd4d16e0e33da0 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/additionalControls +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/additionalControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/boundaryRadiationProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/boundaryRadiationProperties index b88c39c68d27abf72fc6a76ab008700eb6a62e5f..451bcf36ac5314e8c7d77641d693cb098e3812d4 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/boundaryRadiationProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/chemistryProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/chemistryProperties index 36961b168fcd18e0d4f2f084e2144fdd9b238ba3..dd7e1f6355216e5db552d7c8d0e5ada9a5e4d3b8 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/chemistryProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/combustionProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/combustionProperties index a7288e719ade07c2b4947dbc435e55990dbbda49..bcfd472c17b092f0657b9dc52dbdb4f4127486a7 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/combustionProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/g b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/g index 3af0679fb0bb0a5e8ca3e089de54608f493b33e0..0c5535932669e8f0342cba1ae577082d7345c3c4 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/g +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/hRef b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/hRef index 1245e8e70f170f1043628b1f0602362421053116..597845f9c65724442803ddc39606ace0400f06a2 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/hRef +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/hRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pRef b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pRef index 0bf0c3817dd8f8b86e9b56300788a463c9dab176..3878db14779d512200bf83d642551fe5555b7a36 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pRef +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pRef @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pyrolysisZones b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pyrolysisZones index f9ca2592b944b65c83ec1e103af272c070794e03..464aaf70509766a5a7af9a62371ad3400fc7c581 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pyrolysisZones +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/pyrolysisZones @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/radiationProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/radiationProperties index f245cd79d87632591010a59542bd3ff699b0ea58..f932b20a1d3a2a30c0904d74a3c357ffae7556e2 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/radiationProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/reactingCloud1Properties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/reactingCloud1Properties index 97c15e75983cb599d48df67869cae3fc5bb32970..5a2b88cd94348576df31ee1e556318b99d387681 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/reactingCloud1Properties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/reactingCloud1Properties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/surfaceFilmProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/surfaceFilmProperties index 6e91792da935a73c1c72692ad6b906c62eb63de6..d61fde3336ab15d89c68f318c2f7a0d78e28d2c2 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/surfaceFilmProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermo.compressibleGas b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermo.compressibleGas index aed9d9712e5d21d063f1e7a21258538012b6f71d..6137f5521f4290c8f69efd9787dc64ea289cb486 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermo.compressibleGas +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermophysicalProperties index e91a95bfee12a286c79457e05fac373cdc047155..b094fd1c8f3eba34b8a9d3481fb71f0af2520bb7 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermophysicalProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/turbulenceProperties b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/turbulenceProperties index 8b775590ae6bd7ff61105a358cd51c4e42e25013..dac198af0159a6d4cd544556e7b1d48dff07f860 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/turbulenceProperties +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/blockMeshDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/blockMeshDict index 9d419c95dc9deccca4be6232c58e3eca299660b4..71c596365e8070e6d2be53ba9ed0250ffb7279cd 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/blockMeshDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/controlDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/controlDict index 804e7e360131946c5c0a3ee20dc1da2247c59c31..8b54c371b3e70d3b832f7ed8ed9dcf47c102e4f0 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/controlDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/createPatchDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/createPatchDict index 94ccb82756c95033ecfcf6d52d20232e8b3f0e23..e8d3d1557a1643d7d5a51251350f35e36606fdbc 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/createPatchDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict index 46917a82b9612439f058e8a82929d3f3fff76428..b4d7c8e993e485521f41e2eb1c352e05baa1fd4d 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSchemes b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSchemes index 9e05b4d316ce625f8e7570798eec364197743758..037e85119ad1081f1c00919b6ad127063a184bcf 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSchemes +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSolution b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSolution index 04bc1d697363fd95fd54ee2318f83cd0d3c8fc8b..12ed8df041a3814b1a4a085e383ab9f3b778ccfd 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSolution +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/topoSetDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/topoSetDict index 4064cdd91b1340df3b2e280f16acae5566157813..511885b498a9aa9e1a5312fdabc22b2713b29457 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/topoSetDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/CH4 b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/CH4 index 38b8ff43a958a466297889539c1116499d5ec8d9..883de0d7a9ad5dc188cf8b0e36cbeaeca71cae9d 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/CH4 +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/G b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/G index 272899421f6f5376a1bc949d2b3e46f46509ddff..2a8cd8cdb92f72eb7ebdf92c87c7bec8be41eb9c 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/G +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2 b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2 index 48012f46d74c8a0f17d26ac1e87d031bbbb54129..5c3cb3a5606afacc6f80f436fe9b94a4059eb6a0 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2 +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2O b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2O index b620d9f5ad51533865a9fa4af2762b6604cd5014..9be3ee566663aadd9f84b73eebef97981d36478d 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2O +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/N2 b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/N2 index bd0b479532a79319ef1f2f92c1838e4a6ae55238..ed32dea167071a2208f04957eaaa6518515fa830 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/N2 +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/O2 b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/O2 index e973e86cbf15c98c24cc39ad5140a492ee969adf..faaf37d12698a096f29c9eaf69726ba7c365a291 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/O2 +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/T b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/T index fdeaff4832de9e57aa6e7933e2cc236f10bfc1af..ead85eedac89cb15b17e02f0e4b32d8812f1c282 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/T +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/U b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/U index c916a0e2b6f1af61d53703f5ebe9b5596c46571a..f49b3114dd09d57c8c27719dc023c7765958839a 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/U +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/Ydefault b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/Ydefault index 3d1d37f0fa8c557fcc1fac0c8aff9f3b0ca66357..e0c646153cb5e96bbe51aed88c95c3880edd7102 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/Ydefault +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/alphat b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/alphat index 06a231f90a0f70c3807ce280c34588ff220dc332..c3f0f27a24caa48037829e32e2148303db3d795c 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/alphat +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/epsilon b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/epsilon index eb8f30c616570d4c9e4af931be430dc5b49b3bc9..827644fbbba14f68ae82f3c444d91f274fac9043 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/epsilon +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/k b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/k index ae71501c7ef2cc0c5f2a768fbfb50908f862b3d8..22fe0c3b2d561f62e8da3c578a1f2dc094895a20 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/k +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/nut b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/nut index ce41fc6473b5b2a94dbbf59cff8c438ea4b87f17..110deb0d09411aa8494bca15e9ba475f6c627bc2 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/nut +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/p b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/p index a3a2f3a8011974be5b72319cd2e9cadaf394e3f6..e19673228d464efb4023e48e9d5015b4e070b9a8 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/p +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/chemkin/transportProperties b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/chemkin/transportProperties index 378f3b826008eb3a2b84221168c8daf87940f75b..78aaf3d72c91f60065ed9da2cabadab596879909 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/chemkin/transportProperties +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/chemistryProperties b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/chemistryProperties index 3c3938d319e8633967986ac6207d3851d63f3b7a..e082941e3edb6a0df96d2b22783f69f32f8654f4 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/combustionProperties b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/combustionProperties index 497c4f899e2e5b3b272e77be375b505192639809..091a37441e3f52507d7944eb20455a5851555d85 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/g b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/g +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/thermophysicalProperties index c532179e12ff4cd3b69efaf284ed14db3ef2e996..85b9a72ba9f3904a78446d75a4dcf9614e0b86bb 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/turbulenceProperties index 1b575a871c2228b9b4c305dc98b0ce77c777870a..a9ffdd8c4a5270f55d4a48c656b2883de379ce07 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/blockMeshDict b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/blockMeshDict index c0ca4e6a249e8af191e9e4f4c706307b70d2f8bc..a71ca32bbf557b270545f1377ad033bc89f8f981 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/controlDict b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/controlDict index 2bcb38ece9a1c54550ccf0541a1928cc56bd7eac..46dd4c893742f421ba583e140b63dd160936b226 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/controlDict +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict index 81c4f9cb48609c255c40c060feb41605234f0e8b..0ef47a6e7a897545709b0e39cbe821d5231bd3bc 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSchemes b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSchemes index 7f91c640cf2348ca0b57455fa05d4f8d42ff1ffd..849fdf0ce35195bece7a6c8067a00b8a5eb76177 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSolution b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSolution index 500ea0fb1bb08ebd774a5684d2f9d135b0724bbf..bdcab9994dd6ebc83543e2ae2973d20e4af177b4 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSolution +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/setFieldsDict b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/setFieldsDict index ed443a33d1aa3bcb1c2812710f4f7d60535fad73..67ad9124a1fff593cf68dd0300fcc056f4b71109 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/setFieldsDict +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CH4 b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CH4 index 4fbfecd345f4609f95b6f8d159ee922fe5211f6c..6b8ecc94c9e12a309c4541c4fcfe14d1ad82fb7c 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CH4 +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO index 17e272e5f6051c9cba0a4f465ba71db6b198404c..35e2e0006f9b82d08508beb92020b64bc4358d13 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO2 b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO2 index 2f8c76fca3e4a548f43daf636368ff2aeae74965..bbb94e9fa3075c5c3d680d22223bf313d7b203e6 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO2 +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/G b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/G index 2ad5f556c5dfae38e0054c2f8f1644493655cea0..ead1490067a35048670a11a518b209f175247c47 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/G +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H index 5a5acae09683b0da8b4f7c0544acea36cc41fe8a..17f4216c4b8e3e38ba7312a76c1bb22783145144 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2 b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2 index f45fc9de3482a57cf41945704da720b5396614b1..13d3389f630ea075528500edeadc07647948a666 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2 +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2O b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2O index c5fe7d8cbc54e537f7e8751baa2d63e701e4a36e..d19ba065df888a432680a6158270db95d78852c4 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2O +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/N2 b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/N2 index 0808a392081de563014ca47821e44c21969d4cb3..59af19aa80cdfa32e3dd1bdc5654253fea6567de 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/N2 +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O index f588b0b95c3cd05f1f65000c467a53e254ff4c8d..4373733944141ad2417366d3945c39225b76c6f5 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O2 b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O2 index 8b542f6bb3a0bd85f3e494f4b211eac0cc3cf051..2ad7c38b10be7e7bf37e9b803fcc0cb399cd41ca 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O2 +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/OH b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/OH index 67e49d2ed9f20589cb01b012d18cb9fddeb50f26..5f8418b8a869d3b3a1cc6ea8bebe902e957cf7e7 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/OH +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/OH @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/T b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/T index 5944884657db51879aabb465286f530ac7653cd2..6b7963b555129603b47dd8cd69d273f7ea1b3fe9 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/T +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/U b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/U index a67a1edc5d5fea38fbc299c34fd9cd01f1d01b73..6d95f6d41df3608a198b2f7a3050ef2ccac526cd 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/U +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/Ydefault b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/Ydefault index c26aed377e7338315ec9c661e21069b1de164236..00fcd11b75550a06b81536d09b30d827260fa64c 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/Ydefault +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/alphat b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/alphat index a5d30732f13c5c2f068f1da0cb33532cd5480672..51e0232b3fb96037209e380c3d14b26d4ad8818c 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/alphat +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/epsilon b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/epsilon index fc7a591f557fbf38ca3aa2b32c7687e52cadb912..a89dfa6f11558d183a22ed7a18529373925b852a 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/epsilon +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/k b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/k index 64ff06794022d788cfa227b2c8da372adb3baf45..82fbfe1836294fe16ce11a56c9c43bff232cdf5a 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/k +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/nut b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/nut index 567e38b76f94339da57079d6eca073ae4d096aeb..25520f5bd90602eb7c909ca2ebb4b9f80f42ef70 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/nut +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/p b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/p index 07f760b7ab7ad612c61167dcbdb01b802c3297e2..a0f29b0fe0bd4c1643d82c8c66074d0f3842c700 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/p +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/chemkin/transportProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/chemkin/transportProperties index 378f3b826008eb3a2b84221168c8daf87940f75b..78aaf3d72c91f60065ed9da2cabadab596879909 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/chemkin/transportProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/chemkin/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/boundaryRadiationProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/boundaryRadiationProperties index 9378e1e866f294df9845826fbc809220a2b9c41f..86ed83cd975b258f0abdeb507eb53aacf80fa626 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/boundaryRadiationProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/chemistryProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/chemistryProperties index 2dc214321031ced2716317bab4e7ffacaae12df3..ed2992cbfc1ec0b886349d6354b88164bdba5d15 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/combustionProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/combustionProperties index 497c4f899e2e5b3b272e77be375b505192639809..091a37441e3f52507d7944eb20455a5851555d85 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/fvOptions b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/fvOptions index 63d86a080f9ae73c1055632dc9b335b2e00d7f52..5e4a26d14b0f6bbf2b09e9689aea6ac554118dd3 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/fvOptions +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/g b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/g +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/radiationProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/radiationProperties index 128d418883f31880bf579f0dac4840c97f0fc408..29397f9e822b3dc212b7c65993c3a25924e8f6f8 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/radiationProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/thermophysicalProperties index c532179e12ff4cd3b69efaf284ed14db3ef2e996..85b9a72ba9f3904a78446d75a4dcf9614e0b86bb 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/blockMeshDict b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/blockMeshDict index d6f4634727be3f3ace49dbbb58e620a21bd773de..c620d65cbfc50b9242c98c8ad2b9ade3d0a7793a 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/controlDict b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/controlDict index c88a32dc40ee8532335d5082362fae5fceec46bb..e9650d0aba1795ca7cf19c3af3b638efeb5f53a0 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/controlDict +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSchemes b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSchemes index 7f91c640cf2348ca0b57455fa05d4f8d42ff1ffd..849fdf0ce35195bece7a6c8067a00b8a5eb76177 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSolution b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSolution index 393ecd46d67bfb052ee6099449f5c466388bc77d..4dd838b33950bd8260825a13c89c8448126e4eae 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSolution +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/sampleDict b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/sampleDict index fbc05bdb230c0792bedd8fdcdc78b6628c1ad250..41afb9b4eb5fbc4b2716f11bbc4f42d107771e5d 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/sampleDict +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/sampleDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -62,7 +62,7 @@ fields // midPoint one point per cell, inbetween two face intersections // midPointAndFace combination of face and midPoint // -// curve specified points, not nessecary on line, uses +// curve specified points, not necessary on line, uses // tracking // cloud specified points, uses findCell // diff --git a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/setFieldsDict b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/setFieldsDict index 49ea39e96f5a9cfdccc1a3f759956eadb0012a51..3a8b3ec39719d26d587c5066d318c680704a03ee 100644 --- a/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/setFieldsDict +++ b/tutorials/combustion/reactingFoam/RAS/SandiaD_LTS/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/CH4 b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/CH4 index d4c74607abd1d91a92f423d8f70421d8167e4542..df67eda50e9172469235b47b68afa0c3ed7de6bd 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/CH4 +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2 b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2 index 6ccf074dc730328c96d05576e94b62695dd8558c..783b1d1a0d1cc20ea8765dff533634b38d627cc8 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2 +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2O b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2O index b7d7ffb618c9a4edf3539305cb91da467a37b27e..78e39b5f7c2ad266dcfee6912da127a29a98f420 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2O +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/N2 b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/N2 index f3c2b440e41f9f3f11b3bd7a4c15335d245c6ff1..6c0ff574eb46fd0ccbb9b03c4891fc249305ada1 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/N2 +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/O2 b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/O2 index 5eccd18843db6471c5a5aedc1755f573f8c66cbb..3d03a4be36d0de41b8537a591ddf4673e3311d9c 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/O2 +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/T b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/T index 6216994e4d1dfca4710dd68a95b5a13c37088e22..ac7f95cbd0b25fce0b56bcbc074f5281aa36cb06 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/T +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/U b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/U index c9f84b73c34db6c6396322c9c45d34930900deca..00a627f361de43dde67aaf3c35b2dda9a3a387f8 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/U +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/Ydefault b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/Ydefault index 086abd0a45b207ff03e522641b5d690d12b26624..c97473d8a38495e9f758a3a87861fb50b8d092fd 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/Ydefault +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/alphat b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/alphat index cbc6ff9bf1fc9c3f61051bf2891000a4fe6f0a79..0aa2c4961e47a42c1c26ec849898b761ee52fa4e 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/alphat +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/epsilon b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/epsilon index b0a30954560518b1119098c0162123f4214d256b..e6c5ae52a2d422e79007df89433db6412fcddc27 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/epsilon +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/k b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/k index 04db7ec15b6d5f209c1d23028e407bc03ced416d..ac7769a4545a413bd07d33205535ebbab6791025 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/k +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/nut b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/nut index a70c087e8ad6a2f5f2dfdf7c952fa3283ca257ca..bf5e99dbda8e008fa3986b5c8e7197bc61a25cab 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/nut +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/p b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/p index ca9ef8cf4ee82add3034863cb36c7b69a03ec3f4..495aadf3652f9b355643a00d66592b73d7dcf1c8 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/p +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/chemistryProperties b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/chemistryProperties index e0816603a9f389cb849de5375916ee7415fb3094..d6f679054f225f1ec7c4ff5b384ae4004d9a2cfc 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/combustionProperties b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/combustionProperties index 13348c332f66c7d4ac26536de727c158b8e622cf..71479bc22e7b87ddff875c73b6487190555cdf9d 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/g b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/g +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/thermophysicalProperties index 859a656b478b90238d9d96e00cca45410ddbc675..d6bac740e044273d31ff89c4ed81bfc589067715 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/turbulenceProperties index 1b575a871c2228b9b4c305dc98b0ce77c777870a..a9ffdd8c4a5270f55d4a48c656b2883de379ce07 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/blockMeshDict b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/blockMeshDict index 4624ebec791c0fb491b12d34bbda3d79ecec6145..ac56018ea15b426cb56a0abe4352395523903949 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/controlDict b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/controlDict index e6a9cba1d208549edf8e7126f4417ad03721ed12..61b7ae285515cfe34ac687e3b56eb2971c56b692 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/controlDict +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/decomposeParDict b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/decomposeParDict index 2c0f61483ed1bf72e1527b477cc21e62f84072e1..cda353f365980437b1c179ef70a016a538ef84a6 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSchemes b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSchemes index 904ec49f9a03a75c75ac6ec148844ec5a429a784..dc1f734d8b395134701c1bf6f7836b58453fcd3e 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSolution b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSolution index c50c54827477ae068883e50cd13450b29613f80e..d752c61c0805cfb84be2ba85038b80a2748e3b99 100644 --- a/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSolution +++ b/tutorials/combustion/reactingFoam/RAS/chokedNozzle/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/CH4 b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/CH4 index 00e0f739ef8a516567e088147d122c2d1f548bdd..314ab43b496c094c318df8223a4d39bc5eb2e980 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/CH4 +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/N2 b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/N2 index 4b14980d1f854dd718e99eaa1370b6f3ff76d89e..c58ced7b4012f2b34fb0a968a8ed741e8ba657ea 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/N2 +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/O2 b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/O2 index 0a9a853b866b738156374c24dfafa05201188760..a0115baed10bba3af0875892fd7ba82d3d0385c8 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/O2 +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/T b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/T index aee90735df8cc746f584c4aab6cc9249d92e0bbd..6bbee3fdedacfe67dca232f706f52c4988a892e4 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/T +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/U b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/U index 9ad6268dd62cdf52a947ca76a2f9302644377efe..d53af1f72df085d59e04977036cea8a205a51e69 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/U +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/Ydefault b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/Ydefault index ffcab5e5c89b094f6e0c20aee92140b5a30831ae..3cdd6ab9d65ceba72508f09bac2209461f71e45f 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/Ydefault +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/alphat b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/alphat index 81841c893e9d3ffc01097a0448f9f1d111fe31f3..a68317429cb359b97c49677c5da8b2fd0366f9a4 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/alphat +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/epsilon b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/epsilon index 9622317c5b67cb2abb54392089ae6239990fb2ae..062123ed6b42ab39ca4aab55ff5479f5adae48dd 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/epsilon +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/include b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/include index 49723a86e474e38fa7824680500636fb86fa77cb..8364b8bee8f6cb6fc35343a90666a8a915aca509 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/include +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/include @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/k b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/k index 96db2746fe737d530f5c2fed1d9aa8e118e94309..2c428c0740d1944e34ba3b20270d8dad577d00da 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/k +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/nut b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/nut index 55a92ceb61d38d933e35ac12dea57333d791d8d7..63e2b408cb4b8f353fe267acae4c75c6c6572543 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/nut +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/p b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/p index ed14df255a38c1c52748555196a229413e2ba70f..aa2ee4343829e13b5f72bc5b9b46af5cb536a5e8 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/p +++ b/tutorials/combustion/reactingFoam/RAS/membrane/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/chemistryProperties b/tutorials/combustion/reactingFoam/RAS/membrane/constant/chemistryProperties index 356e3329de0f12d1563a182092b5ac1dd9b7793e..41301d605ad739703608bf042c49307343a38d6c 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/combustionProperties b/tutorials/combustion/reactingFoam/RAS/membrane/constant/combustionProperties index c894b19f0734061dec397dedf29227ce0e017cc5..1ceda32812c59962c15fc6778c83cdccfbbfa4ff 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/combustionProperties @@ -1,7 +1,7 @@ /*-----------------m---------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/reactions b/tutorials/combustion/reactingFoam/RAS/membrane/constant/reactions index 12d240e864d97be5d3337bf0543f564f465fe47b..6c1c5584300a500a72c25a0e407002734a166a37 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/reactions +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/reactions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermo.compressibleGas index c7cee992880ea87b6ab954d80a50de306201a092..035c536c4139d22ad86a55a61f83a19756189615 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermophysicalProperties index 584b247885cadf0b28a156050e9937806aaf0b2f..ab116f183dd8e3acc58cb384bb7296c2042a915c 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/RAS/membrane/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/RAS/membrane/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/blockMeshDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/blockMeshDict index 1ed17bbeba27bfaf2125480b15b3a39d428e538c..e9e749aa97c127662c7f511fa8893ebc065445f4 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/controlDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/controlDict index eff1b62c3dbfb06dc75c6c103c6a3a634e3678a5..5af13e96283566bd3cb22095681ff7c645d28cc0 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/controlDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/createBafflesDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/createBafflesDict index a79a68c5451805c7113cfa7a99fb439e8096dc62..77068fb0dadae2ab2711b4a945487c036c97103a 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/createBafflesDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSchemes b/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSchemes index 4a7b2c3bbcc85cb17ab3398ad9719084af4085b9..66830f33b9e153459fe64b6d0611b1c2fe2c56c9 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSolution b/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSolution index 8925f5d9bda7be918bff711d415ee5373b6b50ca..5df0d6de58da141fb73903ccf1e74a1677dfb5c4 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSolution +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/meshQualityDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/meshQualityDict index e7bf28da712cd8afa7cd0b535a297771de69f555..09783711f9aa9dceabcbebd17d0201ff4e950d12 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/meshQualityDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/setFieldsDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/setFieldsDict index a944a3f1c962899a0b6fb759f5b97741a0798b6a..e635e3bc161de164b3e4948d6ceca801ed504084 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/setFieldsDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/RAS/membrane/system/snappyHexMeshDict b/tutorials/combustion/reactingFoam/RAS/membrane/system/snappyHexMeshDict index b3e84c572fd36ffc528b7c1039d38ad5a03a55e7..3d269a1bda03183358c2f551da8807f29db8b957 100644 --- a/tutorials/combustion/reactingFoam/RAS/membrane/system/snappyHexMeshDict +++ b/tutorials/combustion/reactingFoam/RAS/membrane/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CH4 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CH4 index dbaf23179b8fa0a53200e8e292b945514e8e7f15..ab2f2edad0d143b41f4b5200d001e106bfb9913c 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CH4 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CO2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CO2 index 1aa6924971207ee6e52578ed58bb51b471d52839..08853e67b7d8de1a7516b67e4df748fb9698dc1b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CO2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/H2O b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/H2O index d4a1d452bfa95c2222d149b73a61affdb17a0234..6dc845dda319ead9c1960d2481133cb29a4062b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/H2O +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/N2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/N2 index a954b36418212538d5bdf8b18988d084b091cb77..fc44bf8383810dbbab4b18ca07aacae13b843c1a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/N2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/O2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/O2 index a6924116acb5c0ee0736cc8113a9f45230d85dfa..30c0ae61258811cb1be48932d025af0109ebe1b9 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/O2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/T b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/T index 9eccd92cfcaae792eb4f6e1bd5b5e4346ec2168b..6d76d9dd2c6876a56caba7033bbc972dcf920425 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/T +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/U b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/U index e2acd18a6ded115b7cfcc0feda0753920cd96297..17a0beea50a19ece6d7c640cf52d8cfcf9455e01 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/U +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/Ydefault b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/Ydefault index 94b1baeb78ba7828171069c7a9851e3d172e9175..455052b61f1ab9fc853c42d7a87c119e9ad2727d 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/Ydefault +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/alphat b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/alphat index a89a687cbdca87e871e94b611ad774aeb9e4870a..052bda749a0fd3f9a9386de7e349da799a934dcc 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/alphat +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p index fc0405b28a3b5dbb3e93ab26831a02441dedcd8b..cf8f7ad13be222641b36ac6ae58f9f9339d97252 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/chemistryProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/chemistryProperties index eae35fb52e91a867845fd01b674a572455be4e57..4870cd78853798bcb647b90cff85834dc4acd2c1 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/combustionProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/combustionProperties index 6973335464755421303c939634edf96996afd982..6f2c82f98d7f318e226281ee7a704dbe6c935c49 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermo.compressibleGas index 22be24520f33ac7bcdf8ff7ba396f72de6f7d2af..16edd584e3a5bc83de38f2a33ca816d24d43b105 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermophysicalProperties index 2ababf8275ca45d17af7bccd31eef0cdca219772..f421f085e68c43ab99bde7f5b9f8d0c03919e911 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/FOBilgerMixtureFraction b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/FOBilgerMixtureFraction index f338cb52b1665b10dafb19eea83763a57ae049ed..79715a59bbd6d13f488a7a9494d3ff0550191f3c 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/FOBilgerMixtureFraction +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/FOBilgerMixtureFraction @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/blockMeshDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/blockMeshDict index 56ec020de8242c2291115b783d67c0dd47f0dadc..6989af448b44da2238dda90f5838056d9b9e8461 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict index 37e69029c217a0b2020270812bc4e6e17f5685b9..be8e12b6d38232618760806232c540e6bcc6dc7f 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSchemes b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSchemes index 4a7b2c3bbcc85cb17ab3398ad9719084af4085b9..66830f33b9e153459fe64b6d0611b1c2fe2c56c9 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution index 95207555c17c68765a2a2a182a3a0a8a521f9d5c..af6c64e34ed091f11d3008bcc5e07b4493ba7659 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CH4 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CH4 index 51ed6a816600575ed5dd7523f0ec8ee4c8a8cedd..fe2009e6e37eafd35187181724a8ec7acd171f12 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CH4 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CO2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CO2 index 7ec66b0815a56ec9949026b8970de162dbc1ef38..18dd44fe701cb365e343f66e72ba6b81b623db06 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CO2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/H2O b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/H2O index d4a1d452bfa95c2222d149b73a61affdb17a0234..6dc845dda319ead9c1960d2481133cb29a4062b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/H2O +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/N2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/N2 index a66c5df7c7f778093b1fb3bd821e0dcc732e8040..380399fc10c5f869b0a87a385fb5d194ec8f3aaf 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/N2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/O2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/O2 index 21dae58a0f2cba99175d65cf0132c5eac360b885..d3f6dcd50997be8afc4ade223932a31931791289 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/O2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/T b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/T index 499e289a775120e0e2668d297f975e8df828b50e..c5e07dc1f825f34031a83616c5b5da150389d3b1 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/T +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/U b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/U index e2acd18a6ded115b7cfcc0feda0753920cd96297..17a0beea50a19ece6d7c640cf52d8cfcf9455e01 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/U +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/Ydefault b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/Ydefault index 1242dfaed598b6f1a054c8cc83042c1f6a56557f..9cd84f0619bd6810227da490752a3ae78f05bcf4 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/Ydefault +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/alphat b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/alphat index be207fe56f16d6d342e6f878c385b20aefbb183d..0065fc2538e9b243836594f7d405379047304c17 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/alphat +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p index 9575dafaa48f6bb0e4efe1d083672102fc006e6d..b7b1d5633e12be419586ea916be63925b2123d11 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/chemistryProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/chemistryProperties index 1426d3696f18d2ba3d24f10e8862f9a6f7adbc14..2a53e35418d181524d8720ae783b6e373afbaee0 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/combustionProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/combustionProperties index 1edbb0a3e1ecf452240b4bd4fc0bef46c4e5e7b2..e06e929324283340970a88defe16892b06225dd3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermo.compressibleGas index c7cee992880ea87b6ab954d80a50de306201a092..035c536c4139d22ad86a55a61f83a19756189615 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermophysicalProperties index 584b247885cadf0b28a156050e9937806aaf0b2f..ab116f183dd8e3acc58cb384bb7296c2042a915c 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/blockMeshDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/blockMeshDict index 56ec020de8242c2291115b783d67c0dd47f0dadc..6989af448b44da2238dda90f5838056d9b9e8461 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict index a95d2db7fa0762439f7842e606efc465c1c774a9..d0555d039c05522fdb87c5881c8913b299fa6651 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSchemes b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSchemes index 79c0d064dd28c90ed395130a6e308eb129c0c100..ba81fec0e786dfab93205151edd835a52f02017b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution index 710d52e5d2b37c2ac0232d771713ef89d1187fed..ad874a1a07fed713dc03db25883b965555ebb338 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CH4 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CH4 index 51ed6a816600575ed5dd7523f0ec8ee4c8a8cedd..fe2009e6e37eafd35187181724a8ec7acd171f12 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CH4 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CO2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CO2 index 7ec66b0815a56ec9949026b8970de162dbc1ef38..18dd44fe701cb365e343f66e72ba6b81b623db06 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CO2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/H2O b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/H2O index d4a1d452bfa95c2222d149b73a61affdb17a0234..6dc845dda319ead9c1960d2481133cb29a4062b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/H2O +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/N2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/N2 index 680e8d6ae0d301ea49838650cf3f3dc9fc9e35fe..812b62e8447df68a44f9744f9b6922ecc46d697d 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/N2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/O2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/O2 index 21dae58a0f2cba99175d65cf0132c5eac360b885..d3f6dcd50997be8afc4ade223932a31931791289 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/O2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/T b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/T index 499e289a775120e0e2668d297f975e8df828b50e..c5e07dc1f825f34031a83616c5b5da150389d3b1 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/T +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/U b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/U index e2acd18a6ded115b7cfcc0feda0753920cd96297..17a0beea50a19ece6d7c640cf52d8cfcf9455e01 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/U +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/Ydefault b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/Ydefault index 1242dfaed598b6f1a054c8cc83042c1f6a56557f..9cd84f0619bd6810227da490752a3ae78f05bcf4 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/Ydefault +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/alphat b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/alphat index be207fe56f16d6d342e6f878c385b20aefbb183d..0065fc2538e9b243836594f7d405379047304c17 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/alphat +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/p index 9575dafaa48f6bb0e4efe1d083672102fc006e6d..b7b1d5633e12be419586ea916be63925b2123d11 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/p +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/chemistryProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/chemistryProperties index 7eeaf736c202cbda5c6c0592dc768320f4b40918..1b2b63edcedf23fec5d7fdc40b68cc1ac1f03dd6 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/combustionProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/combustionProperties index 1edbb0a3e1ecf452240b4bd4fc0bef46c4e5e7b2..e06e929324283340970a88defe16892b06225dd3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermo.compressibleGas index 22be24520f33ac7bcdf8ff7ba396f72de6f7d2af..16edd584e3a5bc83de38f2a33ca816d24d43b105 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermophysicalProperties index c532179e12ff4cd3b69efaf284ed14db3ef2e996..85b9a72ba9f3904a78446d75a4dcf9614e0b86bb 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/blockMeshDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/blockMeshDict index 56ec020de8242c2291115b783d67c0dd47f0dadc..6989af448b44da2238dda90f5838056d9b9e8461 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict index a95d2db7fa0762439f7842e606efc465c1c774a9..d0555d039c05522fdb87c5881c8913b299fa6651 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict index c69effe603243203de30792960bc8ae88e4d7e40..a63bb992de12519c8682a8b273f146e5fb1ba88b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSchemes b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSchemes index 79c0d064dd28c90ed395130a6e308eb129c0c100..ba81fec0e786dfab93205151edd835a52f02017b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSolution index 10bf8bc46a019ae657d383098a5bedf4cc7fc089..10ccc6f8b7d7d33b8922bb025d5777e75e868288 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CH4 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CH4 index 51ed6a816600575ed5dd7523f0ec8ee4c8a8cedd..fe2009e6e37eafd35187181724a8ec7acd171f12 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CH4 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CO2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CO2 index 7ec66b0815a56ec9949026b8970de162dbc1ef38..18dd44fe701cb365e343f66e72ba6b81b623db06 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CO2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/H2O b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/H2O index d4a1d452bfa95c2222d149b73a61affdb17a0234..6dc845dda319ead9c1960d2481133cb29a4062b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/H2O +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/N2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/N2 index a66c5df7c7f778093b1fb3bd821e0dcc732e8040..380399fc10c5f869b0a87a385fb5d194ec8f3aaf 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/N2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/O2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/O2 index 21dae58a0f2cba99175d65cf0132c5eac360b885..d3f6dcd50997be8afc4ade223932a31931791289 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/O2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/T b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/T index 499e289a775120e0e2668d297f975e8df828b50e..c5e07dc1f825f34031a83616c5b5da150389d3b1 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/T +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/U b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/U index e2acd18a6ded115b7cfcc0feda0753920cd96297..17a0beea50a19ece6d7c640cf52d8cfcf9455e01 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/U +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/Ydefault b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/Ydefault index 1242dfaed598b6f1a054c8cc83042c1f6a56557f..9cd84f0619bd6810227da490752a3ae78f05bcf4 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/Ydefault +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/alphat b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/alphat index be207fe56f16d6d342e6f878c385b20aefbb183d..0065fc2538e9b243836594f7d405379047304c17 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/alphat +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/p index 9575dafaa48f6bb0e4efe1d083672102fc006e6d..b7b1d5633e12be419586ea916be63925b2123d11 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/p +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/chemistryProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/chemistryProperties index a44191918592c7021ceb436a3da7084bf9e19f16..1720cf9c73e29f911ca16520c9ae08fd575403b5 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/combustionProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/combustionProperties index 1edbb0a3e1ecf452240b4bd4fc0bef46c4e5e7b2..e06e929324283340970a88defe16892b06225dd3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermo.compressibleGas index 22be24520f33ac7bcdf8ff7ba396f72de6f7d2af..16edd584e3a5bc83de38f2a33ca816d24d43b105 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermophysicalProperties index c532179e12ff4cd3b69efaf284ed14db3ef2e996..85b9a72ba9f3904a78446d75a4dcf9614e0b86bb 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/blockMeshDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/blockMeshDict index 56ec020de8242c2291115b783d67c0dd47f0dadc..6989af448b44da2238dda90f5838056d9b9e8461 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict index 5f749e750308cec8e96ebba731ec7da51638976c..cdbc7737e1c53c17cff2da250ec8e906c95e0fa9 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict index c69effe603243203de30792960bc8ae88e4d7e40..a63bb992de12519c8682a8b273f146e5fb1ba88b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSchemes b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSchemes index 18b869c1760ae578a3346f27988eeed5e570c8c1..f7c53efbc6911574c660af5029f66af33943455a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution index 31b8c84ddc692640896d52d32327b3fb9a8e62ed..27dea6f10c3a2afe585d8599a36d4cba2244896f 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CH4 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CH4 index 51ed6a816600575ed5dd7523f0ec8ee4c8a8cedd..fe2009e6e37eafd35187181724a8ec7acd171f12 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CH4 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CO2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CO2 index 7ec66b0815a56ec9949026b8970de162dbc1ef38..18dd44fe701cb365e343f66e72ba6b81b623db06 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CO2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/CO2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/H2O b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/H2O index d4a1d452bfa95c2222d149b73a61affdb17a0234..6dc845dda319ead9c1960d2481133cb29a4062b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/H2O +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/N2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/N2 index 680e8d6ae0d301ea49838650cf3f3dc9fc9e35fe..812b62e8447df68a44f9744f9b6922ecc46d697d 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/N2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/O2 b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/O2 index 21dae58a0f2cba99175d65cf0132c5eac360b885..d3f6dcd50997be8afc4ade223932a31931791289 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/O2 +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/T b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/T index 499e289a775120e0e2668d297f975e8df828b50e..c5e07dc1f825f34031a83616c5b5da150389d3b1 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/T +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/U b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/U index e2acd18a6ded115b7cfcc0feda0753920cd96297..17a0beea50a19ece6d7c640cf52d8cfcf9455e01 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/U +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/Ydefault b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/Ydefault index 1242dfaed598b6f1a054c8cc83042c1f6a56557f..9cd84f0619bd6810227da490752a3ae78f05bcf4 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/Ydefault +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/alphat b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/alphat index be207fe56f16d6d342e6f878c385b20aefbb183d..0065fc2538e9b243836594f7d405379047304c17 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/alphat +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/p index 9575dafaa48f6bb0e4efe1d083672102fc006e6d..b7b1d5633e12be419586ea916be63925b2123d11 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/p +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/chemistryProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/chemistryProperties index 7f6ae70a622af32eb8d467a8cb2b0bd1f49559d5..09ff6480ec6b858671f8d578f6d8449be538c8ce 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/chemistryProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/combustionProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/combustionProperties index 1edbb0a3e1ecf452240b4bd4fc0bef46c4e5e7b2..e06e929324283340970a88defe16892b06225dd3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/combustionProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermo.compressibleGas b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermo.compressibleGas index 22be24520f33ac7bcdf8ff7ba396f72de6f7d2af..16edd584e3a5bc83de38f2a33ca816d24d43b105 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermo.compressibleGas +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermophysicalProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermophysicalProperties index c532179e12ff4cd3b69efaf284ed14db3ef2e996..85b9a72ba9f3904a78446d75a4dcf9614e0b86bb 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermophysicalProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/turbulenceProperties b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/turbulenceProperties +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/blockMeshDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/blockMeshDict index 56ec020de8242c2291115b783d67c0dd47f0dadc..6989af448b44da2238dda90f5838056d9b9e8461 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/blockMeshDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict index 5f749e750308cec8e96ebba731ec7da51638976c..cdbc7737e1c53c17cff2da250ec8e906c95e0fa9 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict index c69effe603243203de30792960bc8ae88e4d7e40..a63bb992de12519c8682a8b273f146e5fb1ba88b 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSchemes b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSchemes index 18b869c1760ae578a3346f27988eeed5e570c8c1..f7c53efbc6911574c660af5029f66af33943455a 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSchemes +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution index 31b8c84ddc692640896d52d32327b3fb9a8e62ed..27dea6f10c3a2afe585d8599a36d4cba2244896f 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/CH4 b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/CH4 index 6956122ff9dfafbd19edf3f1e0549ff2fe1cd08b..8bbd4654feecb0bca1c25ea4d95aa8afff34695e 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/CH4 +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/N2 b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/N2 index 16e6291ad7afa51a40675a723907a3125a04f314..b9eb8ef706a19de498ef141ca8a1a0ef0cd863bd 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/N2 +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/O2 b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/O2 index 88ad3b9597d128cd2b514b96b85e858ffa9c9e2b..fa38155c0564c79720b884c8145f042c506699a1 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/O2 +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/T b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/T index 13f8a978fe82a9d591a09c1f4e857205b59c1371..c22c961f82079223646ca460e3398eee09385aa9 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/T +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/U b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/U index a8f1cf9c2d9b8b79a64c9ba6090e80d7d52e0e00..d0d418d6afff5534311633cda6512333f7afaf7a 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/U +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/Ydefault b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/Ydefault index 15e7fd2e32472d4c1faa0cd4d5bb1b9fb2d96672..903c29d036a3d9d4317db2543a0c241d3012d0e7 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/Ydefault +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/alphat b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/alphat index 4ff3c7c72a32225cb5e5c97a53e7ab3d67397dfa..fb9171403bb612774cdedd970450d5a564f355c7 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/alphat +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/k b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/k index ae324dcce8cdaa39856f9778a5e5babd7e3585b2..bd7c60467838e2b33f0fdb3e01b7dbb97600658a 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/k +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/nut b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/nut index b5a43071e6e4403ac5f6a2ef1f436845e114d284..ea0f0a0209037f0b33677cd4b33b509d97f08666 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/nut +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p index cb0a4654b7c668c1a17957a5affc9759c9e0ebfc..ea4f3dee895d8efbd77ab092d97a40d4b2c069e1 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p_rgh b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p_rgh index 7bbf7179708b7c4eb17953499dbe1b7fc0b6e2bf..16567ef6c3eeaff1ed1d2fbaccee4980ee039eb0 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p_rgh +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/chemistryProperties b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/chemistryProperties index 36961b168fcd18e0d4f2f084e2144fdd9b238ba3..dd7e1f6355216e5db552d7c8d0e5ada9a5e4d3b8 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/chemistryProperties +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/combustionProperties b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/combustionProperties index fcaa56ec38108144374cf42b5ed9d8db560800f5..9055444de496de1c0c49f22a089256ad06e890bf 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/combustionProperties +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/fvOptions b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/fvOptions index d48bd21b54f4da8bf6821c865df621a9a082ee57..56a16e59d2bc5047c22de2996ba5d36fd76dbf67 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/fvOptions +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/g b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/g index 3af0679fb0bb0a5e8ca3e089de54608f493b33e0..0c5535932669e8f0342cba1ae577082d7345c3c4 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/g +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/surfaceFilmProperties b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/surfaceFilmProperties index 6e91792da935a73c1c72692ad6b906c62eb63de6..d61fde3336ab15d89c68f318c2f7a0d78e28d2c2 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/surfaceFilmProperties +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/surfaceFilmProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermo.compressibleGas b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermo.compressibleGas index aed9d9712e5d21d063f1e7a21258538012b6f71d..6137f5521f4290c8f69efd9787dc64ea289cb486 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermo.compressibleGas +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermophysicalProperties b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermophysicalProperties index 7743cc64179e00f828597ac72f5d600a7b26f9c9..196c00e4dd528634d56f137c32c7d82b4e17be45 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermophysicalProperties +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/turbulenceProperties b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/turbulenceProperties index 820fb0ce9f99dc990f2f9b1db8981647ba05706b..587dc3ffe138e687ffd223b5c982a519c254cbd2 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/turbulenceProperties +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/blockMeshDict b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/blockMeshDict index c099b41c58edeb1ec5089457404842238c90eb4b..a5e43bf9e0bb1e4248df77f3a1ea630bb75cbebc 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/blockMeshDict +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/controlDict b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/controlDict index be75d4908c5e0278af9bd5761035efd1354b6b37..7cb3ecea794a4039ff9556738ee19540223274fc 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/controlDict +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/createPatchDict b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/createPatchDict index 5456b80d73b669992a80ba4207f6b67bc8baa89a..ae088185049333a99a29a6fda52bbab35bf8ccc0 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/createPatchDict +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/decomposeParDict b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/decomposeParDict index 46917a82b9612439f058e8a82929d3f3fff76428..b4d7c8e993e485521f41e2eb1c352e05baa1fd4d 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/decomposeParDict +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSchemes b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSchemes index 9e05b4d316ce625f8e7570798eec364197743758..037e85119ad1081f1c00919b6ad127063a184bcf 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSchemes +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSolution b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSolution index 22772f48f53de91465b5707fef48b1d414ce806a..98606fccfabd703d31e2651b3c89d6ed79b4ec7e 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSolution +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/topoSetDict b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/topoSetDict index 4064cdd91b1340df3b2e280f16acae5566157813..511885b498a9aa9e1a5312fdabc22b2713b29457 100644 --- a/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/topoSetDict +++ b/tutorials/combustion/rhoReactingFoam/groundAbsorption/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/h_vibrationShell b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/h_vibrationShell similarity index 93% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/h_vibrationShell rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/h_vibrationShell index 9ce9786b00b559627fe0589caed73f41a33da35a..0a6bd7411d0a9e8cb4a0ce4bf659dc06a8fbd75f 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/h_vibrationShell +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/h_vibrationShell @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ps_vibrationShell b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ps_vibrationShell similarity index 93% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ps_vibrationShell rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ps_vibrationShell index ec07be0c2e661615f8337d0c1d391f5f645bfa0e..e2cfb1464a26d9a36e6c4215499b501cfc733aec 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ps_vibrationShell +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ps_vibrationShell @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ws_vibrationShell b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ws_vibrationShell similarity index 93% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ws_vibrationShell rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ws_vibrationShell index 68c69a9f01fc5bdbfe0ba849583d3521c5e5f385..6a852f30c6fd3a1536814d6dd2e458e43f923ce8 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/ws_vibrationShell +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/finite-area/ws_vibrationShell @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/pa b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/pa index 365d51330de727e7531a9c2c89ac560f31eb0cb4..4145a7b263b27f79e0031023f152f4caf3fcba03 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/pa +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/constant/transportProperties b/tutorials/compressible/acousticFoam/obliqueAirJet/main/constant/transportProperties index 414ff7d59ed5838835109cf58cb48ae88af76096..7bbfd279013b3ea95a9777643e62b7010c226a52 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/constant/transportProperties +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/blockMeshDict b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/blockMeshDict index 48c087fd301e1dde8ae9fbb1dd7437ea932a0bfd..f7d7db8bf53e11d68f0af193651cfe4a6c85ceeb 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/blockMeshDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/controlDict b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/controlDict index c0d1a16deb1157fdd54a1c3f9091c65b7bdbc8e2..036146cf8220470325ae04e243d188fe355806c2 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/controlDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/decomposeParDict b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/decomposeParDict index 3d2bef81ef5f1bc20c0a540ec54b44ec243658c5..66c6290dfb68a7cc41d565311b84201d2eae387b 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/decomposeParDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faOptions b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faOptions index f85562b1385d78ef61914d8a7972c28d9f83046f..04a4e92ea815276e1197c84d62f7a05c96855ae9 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faOptions +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faMeshDefinition b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faMeshDefinition similarity index 93% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faMeshDefinition rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faMeshDefinition index 4124888f65cf07fcb441f48bfcf593e75991c723..9e21c63f567cbca47659814c05454f969374143c 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faMeshDefinition +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faMeshDefinition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSchemes b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSchemes similarity index 94% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSchemes rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSchemes index d5408b8e99e04aca699bc65d2d3a583c887acbed..fe6f1037fd40431bbfa1849a5b675f8f699c8b6e 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSchemes +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSolution b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSolution similarity index 94% rename from tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSolution rename to tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSolution index 6b455139b37b52a6d04a4b497845607aa87e48fa..de0a3874a35f3abd608a1f38a1828c36f7a66add 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/faSolution +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSchemes b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSchemes index 4bfc6ab1fa413075e71db0c3a85a1e40992acb91..8e92878c159b849a8f9aecc3efb5313889222ca4 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSchemes +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSolution b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSolution index 14bc6f23f9712c67ad0b49af4f5f4a9bae464b34..0662a4a895aa976ac73d45d75391e7622216578c 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSolution +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/snappyHexMeshDict b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/snappyHexMeshDict index 16992f0921652717d7258fb76223d4078abfab21..8b707cd5440d897f7d1c5a593cd39ad49b0c0166 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/snappyHexMeshDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/main/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/T b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/T index c4a8d78911b1a3da39f3972131bb2508698e4eb4..3cf253bdcd290c3251d8a3fdd1d85a3e23a2a721 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/T +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/U b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/U index 5e00385d80bf72b7d71ba464418128e3974e814a..40aaffed313fd59d1ece7d15ae5a50c1604f0034 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/U +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/alphat b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/alphat index 0973afe3b90c79bee3dd60cd1bb7ec3475dbede5..11ab05c8bbb6d15bcaabfa9df1c7b94bdca14539 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/alphat +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nuTilda b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nuTilda index f14683dc51812d83cb47e0af789f8871b029554a..fd3f132d72e60eea8af8f6d0aae46e5fff8739c9 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nuTilda +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nut b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nut index 77ca4db69899c29bd25154db9f8f71e3e25af9ed..13af899623fa1507f6a4e4c68382bb08a11b1cc5 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nut +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/p b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/p index 6abf462156f0d6fdd268c025408a3a553575d59a..84299d7cc5629559d1e6d75c5f15fef5d0bf73cf 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/p +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/thermophysicalProperties b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/thermophysicalProperties index 1d556d6fbb6b5a3ff2f90530fa6e43cb27f8119c..bddc1826a4d324af1bbe5e85d0028f6265384400 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/thermophysicalProperties +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/turbulenceProperties b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/turbulenceProperties index 1bc650e59840abf1b570b5174558244ad738288d..d20ad387873605462dd9f5e2f9eaa1c0836d09bd 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/turbulenceProperties +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/blockMeshDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/blockMeshDict index a27b54c013d782075b7aded075ef58efc25111fb..eb1293a7f7fa82f78c7fc3ecdb00b80908f14ee3 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/blockMeshDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/changeDictionaryDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/changeDictionaryDict index 67c449d34e09265c51b53496db693c92140c6880..9cdc45feae4f0f98ed410e8ead202b1c51428d68 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/changeDictionaryDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/controlDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/controlDict index 82cd2dbca82eb23b9fdadb8d5c16df7b938ec726..4dd5219dc7abe6ad08faa5227cdb6b08ec5f1bee 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/controlDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/createPatchDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/createPatchDict index cafc36e7fd8d89eda239f8cbf7372ce04f5813cb..68738f8bf921809f428286649b628510b74e4cdd 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/createPatchDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/decomposeParDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/decomposeParDict index 3d2bef81ef5f1bc20c0a540ec54b44ec243658c5..66c6290dfb68a7cc41d565311b84201d2eae387b 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/decomposeParDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/extrudeMeshDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/extrudeMeshDict index c31c8f18bbeb0f0c9c38a0263965523bc8717971..183610d070836df510153511b84cfb0fb8fa8aee 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/extrudeMeshDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSchemes b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSchemes index e4d236a503247f1c6652b7eb5d2202ecf1215c24..6fd70181a1601d78ed2518cbc976a4ba952104b5 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSchemes +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSolution b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSolution index 06e5de937a2e235543ef68ff6cbdea61382a7e03..739b2ee3f777a646321e4adbd88afe69276004d0 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSolution +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/topoSetDict b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/topoSetDict index e8bee0d3f84587546a04c86ba4c6d200d564589e..70200fc57e1c88b9ba42b661a8021aaf9803633a 100644 --- a/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/topoSetDict +++ b/tutorials/compressible/acousticFoam/obliqueAirJet/precursor/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/T b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/T index d43c7cef451b397099d2702dbbaede610e9985b7..4786ff70ad171b8e1c79e2f3d1a056e7f3a1363a 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/T +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/U b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/U index f2c0aec99888f9cd978990d9f2eb312ce2d5306f..122189939b9d5a40bf0de296e0d81203f1b984c1 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/U +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/alphat b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/alphat index e709eb97ac892e661265ff452ef0a835b8882c66..973124ef2f52ac5253a998c4165b397b0e970d09 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/alphat +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/epsilon b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/epsilon index ce063fd1bbd63fce306929457318257709963c47..cbd8dc4bc35cce2293eabed58c735d347bc1f38f 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/epsilon +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/k b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/k index f9065d09cca1e6588b6dc2dae2996de8ce23f42f..8679000be34e42b163b61b7c0cff7f95df289328 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/k +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/nut b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/nut index 95f9c1a49e8792e4dc73d64e1258a5ddc1ea11e6..ed77416b8d308db8381988b560ac3c6d3914b4ca 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/nut +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/p b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/p index fb7e988aa7b6051b79f9b52be98e7569c2d8d12f..523662b5fca4d95ec40b6d62c14ec4245e25065d 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/p +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/zoneID b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/zoneID index ae5f06b0316ce9d3a2daa4cb394d6c8f2564a1c0..46da66820b1c8548afcf393f411647dc8108d0ab 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/zoneID +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/dynamicMeshDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/dynamicMeshDict index b9400eb7b4493f834ae421444572f3bab13fa02f..74977fd51222c86d2a8f1f9609e6b559d0173d1b 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/dynamicMeshDict +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/thermophysicalProperties b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/thermophysicalProperties index e0f6f5fcb7b65383b191787553d84b322ae398ba..eab888cd9dca5f94251e9bd2beac55be89b7e33d 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/thermophysicalProperties +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/turbulenceProperties b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/turbulenceProperties index 9536cb233cff5164434b7086d61ad6c5c7755292..e9c5d381003961f15ca04296035c4eac32ae35cf 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/turbulenceProperties +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/blockMeshDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/blockMeshDict index 2a33bc7d7658c5b15bf23c99748ced07d9dd0de0..7ce475a57a94f7d2a4de8fab92dd006df7d0a715 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/blockMeshDict +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/controlDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/controlDict index 85976f67fd00c46cab0f1dee5290ab8a64b1db03..d9ba61a492ffea02cf26e0e2d2d7d6f012be8be2 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/controlDict +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSchemes b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSchemes index d5b3b10cee08849e20ea0a8473293bcadf2decce..ec70282d3ee117ea8edff57e99df91706af755b4 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSchemes +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSolution b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSolution index af77fce14731ebe77f1b232d6f549a2659cba756..c4bd1fcf005d015b81a55d5711d0dc917a03ea45 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSolution +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/setFieldsDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/setFieldsDict index bad61d205f168c369bfdf8a5c8cba03a28b6e91c..81f42d7727008501b00ec48bde314b24055d5b95 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/setFieldsDict +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict index 335d1da210b6e80ada41cd920536b2b6d9aa6c7d..ff934bc92d6c4c2ed849e6ca5770b239e59c45cf 100644 --- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict +++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/T b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/T index 73985d0d4986f388dd3272d668193c09da41c3b9..74ea82d8b60d22372a87c40c3a573011bf53a765 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/T +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/U b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/U index 6a3567459b9f4e8856bd940315e3478f2a0da46b..dbf6a12c5c27f6546f4b629bde0f50d332e14c2d 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/U +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/alphat b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/alphat index 95102713aed417430821787f0cb20f4bda93a5eb..917637cc3ba49dbb8e24fe0088a908ef975340c4 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/alphat +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/epsilon b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/epsilon index a47980414fc8f1f9c93324a6834486d0d0d67327..db64350b91bb475b551e0cdcf02573fb31ae2b1d 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/epsilon +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/include/initialConditions b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/include/initialConditions index ac27ef8d864c6526657d02657ec3d3675471d0b7..a5cda3e5202ddf5a0a80267e92d8b04fe5a08e4e 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/include/initialConditions +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/k b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/k index 4bec3e4ce0065f947d42dbe6d6375bc17d4addf4..2c0d7c0c08a836ef2ef399eef202f022f8d25de7 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/k +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/nut b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/nut index efe28bf6129fa81d1b5d5461f8c921b3c4c8e8b1..5286b817b16cf8f61260492a73a9b19ede8e84ef 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/nut +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/p b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/p index 8a6a1ad147394742e4dbdc8471327b87379fcc2b..cb0b288808186529132f236a6ef458212da799e6 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/p +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/pointDisplacement b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/pointDisplacement index 2a2197c7488f1a73893d0588161bfa14aaafd4f1..06f4d41d9815270d2117eeed616e8ce65edf0173 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/pointDisplacement +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/zoneID b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/zoneID index 35d345fdfa6e95a24f126cceb450c86e74d3bd6d..56165102e6444bebdfe0852de2f86ce5e9226e5a 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/zoneID +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/dynamicMeshDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/dynamicMeshDict index c2ef7f98eaec4debc5b13e7fc5ba29d71955d49f..92d80b3ad547034b45fd7409bd91aafa8c24349d 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/dynamicMeshDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/thermophysicalProperties b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/thermophysicalProperties index 198085b87f7dc9027d0f25e1662689ae4caee8c8..b0cda5f1ed94b117a0ffe2236bf34cbd3f8b9be4 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/thermophysicalProperties +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/transportProperties b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/transportProperties index 1df4e00fbd7ce86b3827e6da74d12964faa1397a..21ae7f9f7115e17d49a34a44c61b22d9ebcf2729 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/transportProperties +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/turbulenceProperties b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/turbulenceProperties +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/blockMeshDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/blockMeshDict index 9f09209e7e16cb9f2ffcd8118c7fb40f43a912e4..363e4063b46909f91f3717b6493c7be744423bf2 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/blockMeshDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/controlDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/controlDict index ea0648fcc87bad40ff03dd467e038794884d4bd7..675e9dd55774ab08c5f881045d7d877c5f65e4ec 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/controlDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/decomposeParDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/decomposeParDict index c69effe603243203de30792960bc8ae88e4d7e40..a63bb992de12519c8682a8b273f146e5fb1ba88b 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/decomposeParDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSchemes b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSchemes index acd244c1c3979e2bea314a8cd7b18d9414ec4ff3..bfaad8fbbbd9d9c3f5d36fb9dbbfa8b1233153ee 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSchemes +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSolution b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSolution index da5e26cb49f419d624560d146df7a7dd47019f3d..a85a99c6f48633f56b13500ef7c7aa675b120ad2 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSolution +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/setFieldsDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/setFieldsDict index b16106caeff2eb807321f8db76e0bc5d8350b13d..99bee0020b6652fbf0f2f06f638aca8ff38253e5 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/setFieldsDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/topoSetDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/topoSetDict index 566cfb2eb971b2cde07de5008906bd8f9efcb480..e26852063403a74052ceb0ffba6c18da88b22f40 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/topoSetDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderAndBackground/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/controlDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/controlDict index 208caf7b73e540fe2c446533b164614bbd5ffc58..797c9b8151fc6f0b7c185fafee77efe10c4eecdb 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/controlDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/createPatchDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/createPatchDict index 37d8e5e2cac9763dea1f4e93f34880579b2da692..774c19a39634e4c2c8f68d3e94da6dde04d1eedf 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/createPatchDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/extrudeMeshDict b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/extrudeMeshDict index 561da1f2ab6b6fcc2dc917dc74106d98998a5cea..1e1b1f860b55065c07059e46dc92456dbf99590b 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/extrudeMeshDict +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSchemes b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSchemes +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSolution b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSolution +++ b/tutorials/compressible/overRhoSimpleFoam/hotCylinder/cylinderMesh/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/thermophysicalProperties index 5eca937f335768e05387ed85911144c839fc1083..efb5db75cbf05bac75dc54ee25cee9ed61292dcb 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/blockMeshDict index 53fd4339a99f1a80ee18bdb4d06853ce90e648d9..12ba9db5cc20d5a0c8992556a61c808a56ea07dd 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/controlDict b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/controlDict index 23ba3a7e8526ddd569bb1c7bf7ca7200db587615..ed491e9a445cabdeb7eb25c98517f36f86832f5b 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict index 795028831b51f74018f5383507acaa2a2356e28b..8ac30eb3a9002fa339a685e559391e0712dcdbce 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSchemes index d9f9f76158dc6490a92e428f5d6fca166826967e..16e41488f29a4ef684e0f7cca752fec2e13a9c14 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSolution b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSolution index 9d380b3977b4c2ce85609fa2736cfa56e492f19b..ebc5fd9d4b32a9942e061a4c67df572287c850c4 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/thermophysicalProperties index 10872254696fd346c508fd961925ad0e110cf137..5160f01f3bec4909c2f8d33463dedd52e54d830f 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/blockMeshDict index 62f122dd45ff727c15793487895da9b10714693c..4bd9ac2b965fd4290a2694c1a57bfa4f83882908 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/collapseDict b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/collapseDict index 323658f0d427b119ef5f86463fb6bd453e5c1700..8d86ef7a7056d7ac904c2f3fdaf9e14475b5cb6a 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/collapseDict +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/collapseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/controlDict b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/controlDict index c5d01272fbe91512752fb0fe3448c4609433364a..a189f25c5594d4612797ba870d9ba07f81c34c78 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSchemes index 70ad1438d61338769d9060c69ed34e47fdd6867d..725ad3a9dea988f05d10c390ce42ee927e5e8c11 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSolution b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSolution index 979f8db866361152e70308e15348377f3ddfff9d..8306591eff304f625d659e644d4929633f306442 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/sample b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/sample index 4e99d6f86f53629f191243e41d6c30e3216787ed..e57ba18549dc5173d5975d8662dd348fae15e615 100644 --- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/sample +++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/system/sample @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/T b/tutorials/compressible/rhoCentralFoam/forwardStep/0/T index cb0f07b20708d7bded633ea3adcd0df74b5dc75e..77c3bcd8bffa3dd505867da48a788c3a6d7363bb 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/T +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/U b/tutorials/compressible/rhoCentralFoam/forwardStep/0/U index d55325526b84c0c10d7ea0fd3c0ceff488b03e28..b6cfcc1f9cc80b2abc21d562402da4e63cf820c5 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/U +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/p b/tutorials/compressible/rhoCentralFoam/forwardStep/0/p index 2bb32e531484bcca6ffe89941525807fa38046c3..d1cfbc8ea9cc9bef24ec45b0b39823ee44e9f397 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/p +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/thermophysicalProperties index 982a7082543400ededcb43d4500bf1c3b258e05b..a7569f12395f961ea05ca46df2c61aa4607240f2 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/forwardStep/system/blockMeshDict index 69be936f6ab86365c1e57866ec7be52644795ae6..8c0835f8fc86ba999af67bd932970b593d22eebf 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/system/controlDict b/tutorials/compressible/rhoCentralFoam/forwardStep/system/controlDict index aea3f9598318de8e9b06992a503b6bead338544c..a34dad34f705dafcc8e88f72c6db73c1f8f08d9a 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSchemes index d9f9f76158dc6490a92e428f5d6fca166826967e..16e41488f29a4ef684e0f7cca752fec2e13a9c14 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSolution b/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSolution index 2a7f17a53ebb8294ebc8438a9a3119ee0015bff6..b61de99ec2cf6afda1567bdd01160469840aa5b8 100644 --- a/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/forwardStep/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/0/T b/tutorials/compressible/rhoCentralFoam/movingCone/0/T index 2da9bcf9088177774f80aed2442b2990bab522ce..b8636136f07cef16d60240485a011a68ceec096f 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/0/T +++ b/tutorials/compressible/rhoCentralFoam/movingCone/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/0/U b/tutorials/compressible/rhoCentralFoam/movingCone/0/U index 6924029c5f136d3a42c8c52d0cd96a4667138e3f..4b5baa6359a5aaf09217429663b41f05c1d9c0b6 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/0/U +++ b/tutorials/compressible/rhoCentralFoam/movingCone/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/0/p b/tutorials/compressible/rhoCentralFoam/movingCone/0/p index 25cbe041057db1791c495205ee809420d4949bfe..ea66f0048855fe507ff03569ad3e190fe9c0310b 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/0/p +++ b/tutorials/compressible/rhoCentralFoam/movingCone/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/0/pointMotionUx b/tutorials/compressible/rhoCentralFoam/movingCone/0/pointMotionUx index e554a94df2deefdcf99622d1a0820cd92839a2e7..cd9e76ad50760b4c030dd6915caa886b26bfa2a5 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/0/pointMotionUx +++ b/tutorials/compressible/rhoCentralFoam/movingCone/0/pointMotionUx @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/constant/dynamicMeshDict b/tutorials/compressible/rhoCentralFoam/movingCone/constant/dynamicMeshDict index 5812b7a7538f4aa18a1e33b53b487ae91bd2152d..a31c84ecfb1e22cb2643f0215850d24a68b41199 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/constant/dynamicMeshDict +++ b/tutorials/compressible/rhoCentralFoam/movingCone/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/movingCone/constant/thermophysicalProperties index f8df11a0b07b52c762e3d0b4482a095132c23dc4..3f036e87cacf28bbcd2b4b85be1bd11430041acb 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/movingCone/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/movingCone/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/movingCone/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/movingCone/system/blockMeshDict index b2019e2de583bb33d4e0b23d0d20abf355ed779c..c381a7e0b6bc8a67c944b1d9802da8900d609135 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/movingCone/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/system/controlDict b/tutorials/compressible/rhoCentralFoam/movingCone/system/controlDict index 26ae47684c49df33cbd9bf9ac60c9cf31425b2ad..8b1c741548b42a3beda40da3a273af1c6dafd377 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/movingCone/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/system/cuttingPlane b/tutorials/compressible/rhoCentralFoam/movingCone/system/cuttingPlane index c930d7e6165054062242215ede9d954e4d21fab5..282fbb8a1b73b34edab16d0484de266e3a6bf694 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/system/cuttingPlane +++ b/tutorials/compressible/rhoCentralFoam/movingCone/system/cuttingPlane @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSchemes index 9454245a0a4e610850ef1bc2f1757af76a0c2940..e7297d011b67ab999441acf9d7560dc3d4ca2b72 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSolution b/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSolution index 91803b1753c9ed4017239ab70816419add19912a..a4e4eed5e2a83b3bcd13d916706656e6c3933039 100644 --- a/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/movingCone/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T index 5a9905629263eab8b747ba9421915600d62df439..4af5c24cf869481f170ba80ed44e4bc9f0093158 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U index 12215d5df515943aac3a64ff968bc40c7ac53478..8d00d1ec7d0ec6b4624cc1d38c8026a6dd42af77 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p index caaed23150503d1f82b98254148d376d327f08c8..a00340d650b56246b4c857d15b54251696e294b4 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/thermophysicalProperties index e9805ef77bc20a3824d4fc8d750dfcb0cf2e09fb..9740f68fbd38fe3d633255d876e6413b8fc3dd8b 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/blockMeshDict index 78bd73d30dc8a0606bcfd812f6a54ad73b602930..14cb51b3c39ed6cc712bd34bd0e5ed6782510704 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/controlDict b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/controlDict index d08944e7051af9432a50b6304712e43d579fc4ca..a5f01560cd162d333fb0aba04bea066f7824db78 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSchemes index d9f9f76158dc6490a92e428f5d6fca166826967e..16e41488f29a4ef684e0f7cca752fec2e13a9c14 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSolution b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSolution index 2a7f17a53ebb8294ebc8438a9a3119ee0015bff6..b61de99ec2cf6afda1567bdd01160469840aa5b8 100644 --- a/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/T b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/T index 930117e67e051ed246bbd5ffea7d8b0d44d27037..8cd06ff6c4de8f7ed4397079dd201dcd11765555 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/T +++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/U b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/U index 5cec79ca9516b7d7d9fc21b0cd93385ca223d321..dd9b5ef845a095949c0b4acd3ebeabac41b903bf 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/U +++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/p b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/p index b6711a18b2dc5034a549070eaddcca533f4b1d4c..c10233d5118804a6fbc7b73637806741c2778e01 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/p +++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/shockTube/constant/thermophysicalProperties index 5ffa902c7c1b34c482a84e52cb4518799b7caeec..de911535062a58380e42cb25e1664c35f839320e 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/shockTube/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/shockTube/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/shockTube/system/blockMeshDict index d6927c04ee9c42bff7c2dc19a1a84c678d86638b..88157bba21d0bcfea90956f42e7e8248fb44cb54 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/shockTube/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/system/controlDict b/tutorials/compressible/rhoCentralFoam/shockTube/system/controlDict index 1a476c1b945911b99bfc4e03771371d93890fd9f..278005bb71da7c39e7e6c075b0353123b974ba1e 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/shockTube/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSchemes index d9f9f76158dc6490a92e428f5d6fca166826967e..16e41488f29a4ef684e0f7cca752fec2e13a9c14 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSolution b/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSolution index 2a7f17a53ebb8294ebc8438a9a3119ee0015bff6..b61de99ec2cf6afda1567bdd01160469840aa5b8 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/shockTube/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/system/setFieldsDict b/tutorials/compressible/rhoCentralFoam/shockTube/system/setFieldsDict index 0596746f1a5d9d9c8051bd135545fece5387720b..11d5bd692e2dbd11248b155cf99e476b431b8d45 100644 --- a/tutorials/compressible/rhoCentralFoam/shockTube/system/setFieldsDict +++ b/tutorials/compressible/rhoCentralFoam/shockTube/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T index d166414456b2035c46220dd53dc6320ddddcbc24..db68cef39b821c7aad84b39a31369308fe950a13 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U index 8aa984ffd343e6688fc96030562e2db1ce020ab7..d09713d85fddb2adec7c721fccbdda8a0d0f6e43 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p index 2bb32e531484bcca6ffe89941525807fa38046c3..d1cfbc8ea9cc9bef24ec45b0b39823ee44e9f397 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/thermophysicalProperties b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/thermophysicalProperties index e9805ef77bc20a3824d4fc8d750dfcb0cf2e09fb..9740f68fbd38fe3d633255d876e6413b8fc3dd8b 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/blockMeshDict b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/blockMeshDict index 0c0d054bce5966adff2cf4e3e09fd3e77ae6da32..b79308d29c6daafa21af05b2547f8ea2fbe330ab 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/blockMeshDict +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/controlDict b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/controlDict index 90c73425945b5a3723e2c7ec6b97e22170331bc3..d1e1ce158296ea0aaf60623388b9d146ffcd4a1a 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/controlDict +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSchemes b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSchemes index d9f9f76158dc6490a92e428f5d6fca166826967e..16e41488f29a4ef684e0f7cca752fec2e13a9c14 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSchemes +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSolution b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSolution index 2a7f17a53ebb8294ebc8438a9a3119ee0015bff6..b61de99ec2cf6afda1567bdd01160469840aa5b8 100644 --- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSolution +++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/T b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/T index 0fb4dfab3c827d505e200466fae85286060793e7..84b39db74227ffd21b9b21d721e214a00ac5fd86 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/T +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/U b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/U index 616e9ef8f98ca318053f76d4570a7cc29dd44459..7b20deeb28a0161a4db25ff86f7f2eeaf1de9b13 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/U +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/p b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/p index d3bd8e6123bb939f3180288a0f6576dae982699a..b5dcca76a54c3297966152e8ce043dcd81786f99 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/p +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/thermophysicalProperties index f6dc46d99a2726e727823e9a591a92d35a7146f6..5e9173357578ed60d3e7de7342db0debf9f669ef 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/blockMeshDict b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/blockMeshDict index b98bb41db1a0f0c4d5149abf2c507d8b6f7ea33b..9740ccbf43d3fe521e7659cf8c292465e1fbcdd5 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/controlDict b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/controlDict index 98b4faab1e63a205095d7ec0633d5f3adef84042..dd3e7befea2d910f712b3aee0c01fc0608aed82f 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/controlDict +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict index 90053f3d99c2b278af4f2df7e35f5501bb09a73b..f583aa28f0c18cb82bd1deb6828d53a5cfbbe994 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSchemes b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSchemes index 75061cb3d9c58bb250440b7e13384c6178dc6d9a..960955e6bd3d2470a1d661642a9cde4cf38c6771 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSolution b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSolution index 39674f7c0d762372fc0ebb84e2bdf2294fa7d930..02a17784a7348398f9bb21665883ca267bd8d453 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSolution +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/preProcess b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/preProcess index 66c5a39740d6f9fe62ead8e5e220dc25e755e352..619a25734ee1e7a575ec67bc5da369eeaac10828 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/preProcess +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/preProcess @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/T b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/T index b19a518a4e75044a58f61ed43c92dcf65c3ebe6a..166f40fd62c26f143625d14132d1633d3d4e1623 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/T +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/U b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/U index a777f7858a85c0611128d2fa2d03e6da2786975f..47792eac7e1c7feb74b36560635e90e3c1524016 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/U +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/alphat b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/alphat index b356a84f3314fbfd682fc989a1732bbd9b31ca5c..871dc090f6f7098df72adf0251f2c79d00406b54 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/alphat +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/k b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/k index 8930c6422b03bc5741e3210d21300880c6172f10..d41c0a568c94b341fd384363e53b0632f052bf1b 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/k +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nuTilda b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nuTilda index 3f718252466fe6609680bd9e2b2a71729d9789b1..2ca2bfe2a854c3e0808e02d93e3416b5eebe93a8 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nuTilda +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nut b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nut index acd4c92b24ee6b2e68567cd86adb286e5a3daec0..50a514341ec5384d1f78d4ef6e2abb125eef28a9 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nut +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/p b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/p index baa4703f45f1c4cf94989acd7b7fb084cec33ea3..cae8c30592332ac38bf0656adb527c5599caec52 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/p +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/thermophysicalProperties index 3f680583f10ccf4b96ee7ecfa219d5b9af547c86..955221cf9e33fa780e9b368832c890a2eff58f1c 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/turbulenceProperties index a104484e831bd22859fa1fd38f35dec6b39ba743..452fba7d6f01c9d2a5b5077f91e079cae339a30c 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/blockMeshDict index 8f26d3a8f3fa1cc148599c097919e86c10e52317..7709136f71bf3d75aabe2e4fe84e823e3769b6d2 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/controlDict b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/controlDict index 17e7fccc82f2e433a3ed66e66a1fee2a07c0e101..af62b3fde440fcc50163e67009a152860775af6c 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSchemes index 5cb5eb6fd7e024e4c6c35d97e88406b253eb3075..85605d52c5a6ded0eb8dcf596cd2aeef24b322db 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSolution index a5d9b0a64abbe3f39294d5ba2bc1807ac174fd52..b0ec8ec096c03ca32afdd24b667d7701f7a0c07d 100644 --- a/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/LES/pitzDaily/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T index ef651170fea08d3cfa939d5dbcb8d903fb834f31..1f7672dbb6d13d4b6d741cc966a40259ce9b274e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/U b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/U index 39046c2a7a61202c63a6f02a38a5e70ec0b1f0fd..69a5d8eccc0632ff46a658a2a8eb419da0964fd8 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/alphat index ce36fb2063438a616fc4914425ed3b513853a686..4b208bbb63881cc3b557a2dfe135348b840098bd 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/epsilon index ed8d35e6d645f3542e85b6d573eec2fdc470f9c5..70dc1ea0b8b7d197ef2a425b584be5fd55f194ce 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/k b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/k index a3499d6ec4149ab6ec3566c3d265fcb89b968e9b..675a49ed093b5553e7cd857b82e59239d6b72ec0 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nuTilda b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nuTilda index 1062112247017bec28967c4d1d72092301903bfa..76fde313eaf0d107efce9cfe7ba3493f416eb844 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nuTilda +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nut b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nut index 75c50da24cb75b05ad69520132e5a77c93474536..9e5e8ec36209c9ee9f3956993d3bab505f274754 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/p b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/p index c13e2ee56bb1ab1d1ccc8ea806a743fd4eb77740..4f21102a0545f5e20ee7a91869f3309f32cfcc12 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/fvOptions index 3a98af22689c90b07ac773af107a07a55921029f..9c57837f4ab0063f68ab988cd2df1e7d77cecfa6 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/thermophysicalProperties index 89084b6f16348336f1ca9466d3438c4e92b9765c..9a672cd29f012eec26d54b6bdcc8b34efad871ba 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/blockMeshDict index 100edad79857ce010695191d3946f82ec61add1c..c5efd775e5639dd75b3602df260e20d6f862530f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/controlDict index bfde7705bbbb5274990cfb870bf5008dbdebbfb0..dec0103c334a1c727b0cf6ae0e25e229cd0efee6 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSchemes index 41f5e9e3660edac80676f7cb5c93ddceb19acdc8..3b33aed742241a317e87ed7f57fefbe7f8adbc4d 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSolution index 20e6ddf677a466bc0113e7bded645b702d2d2b8f..11837b86a86dcd947c26654dbf1e8e3489a82e60 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/T b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/T index ef651170fea08d3cfa939d5dbcb8d903fb834f31..1f7672dbb6d13d4b6d741cc966a40259ce9b274e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/U b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/U index 2f027551e51a4366702c10d7260ced19962aefab..90a7e86447c233be88f0bcda933bf16347199f00 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/alphat index ce36fb2063438a616fc4914425ed3b513853a686..4b208bbb63881cc3b557a2dfe135348b840098bd 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/epsilon index ed8d35e6d645f3542e85b6d573eec2fdc470f9c5..70dc1ea0b8b7d197ef2a425b584be5fd55f194ce 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/k b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/k index a3499d6ec4149ab6ec3566c3d265fcb89b968e9b..675a49ed093b5553e7cd857b82e59239d6b72ec0 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nuTilda b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nuTilda index 1062112247017bec28967c4d1d72092301903bfa..76fde313eaf0d107efce9cfe7ba3493f416eb844 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nuTilda +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nut b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nut index 75c50da24cb75b05ad69520132e5a77c93474536..9e5e8ec36209c9ee9f3956993d3bab505f274754 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/p b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/p index a443d0a3eab57eed20bd4e576da4db32f03c1590..7575ac576f57c6cc7245157e56814c6afd97d2c5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/fvOptions index 3a98af22689c90b07ac773af107a07a55921029f..9c57837f4ab0063f68ab988cd2df1e7d77cecfa6 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/thermophysicalProperties index 89084b6f16348336f1ca9466d3438c4e92b9765c..9a672cd29f012eec26d54b6bdcc8b34efad871ba 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/blockMeshDict index 100edad79857ce010695191d3946f82ec61add1c..c5efd775e5639dd75b3602df260e20d6f862530f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/controlDict index bfde7705bbbb5274990cfb870bf5008dbdebbfb0..dec0103c334a1c727b0cf6ae0e25e229cd0efee6 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/decomposeParDict index 2f3218fc28abb2d5abfca4ffb92986e9ed6fa9f8..a5576233b12bff4f86f5a3fc8bcb6e0bc8889244 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSchemes index 41f5e9e3660edac80676f7cb5c93ddceb19acdc8..3b33aed742241a317e87ed7f57fefbe7f8adbc4d 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSolution index 20e6ddf677a466bc0113e7bded645b702d2d2b8f..11837b86a86dcd947c26654dbf1e8e3489a82e60 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprBoundaryFieldsDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprBoundaryFieldsDict index e6230b83994e832a79f61e173f903be9e6649b5d..df9c8abb51e7db0fa0fe108b1a6883d80deb9386 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprBoundaryFieldsDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprBoundaryFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprFieldsDict b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprFieldsDict index 0a65330e5e3ba145fd176c8d79d2f813721421be..5c6ac3b35aad92803139f44d3a6665d7e1a963ab 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprFieldsDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunctionAverage/system/setExprFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/T index bd32abbebe0796907c7c33045171c45524c4a97e..13f39b0847f3e8bcdcb417a0403a6c4feae19917 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/U index 3c8e6d2fbc870082e7228c090f37f6452f8d58d1..7868a7e6ea9fa384106ef01ee1b3abde4a0d02e7 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/alphat index 2650a13e7d28fea5773b5c362af8ffd95229523b..07c529c26f271bdfb7d96ce712b1d5760743e0b1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/k index 5bdf939dd8928c2fcab5b57debcaf4befff4bf63..df22298eed24fd637431ccc9b28376c8b1b981fb 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/nut index d72c90dee43b1a338f8ca5728b0763b319f9cfe8..a0e012939c3bd1dc58e224a8fce75c8638681504 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/omega b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/omega index 7352507a3310a0f18269be939b9bc801bf30a908..8871d67a9b1df0ef10871e11f3de6923ba5fbe0b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/omega +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/p index 9d9e805575b8761fe9a62bfed171e9827231d403..c4a472e15e084de8c9b64caefc128fc4c109d4aa 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/thermophysicalProperties index 5d1296136d6bc74fd9939c8175db565849b94c85..d8cc0b01b30eb79f5b38593cd9d26f3d4979c23b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/blockMeshDict index 21c1c9cede52dca86e69a3919e0b441a96b33869..078d2293133e75c7038fb9d407e118b7a9150d62 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/controlDict index fe9872bb59714e385a45576c4b74e9f631b0b69d..4c0e5f31af3af80d101b866f7237bffb26a71632 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/extrudeMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/extrudeMeshDict index 33bc3f24318eb77af16cb67a46f25514bcffdd32..54529a553d0be572a5a12dcecb6063cc2326b96f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/extrudeMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvOptions index cfa0b295b4fed7cbceb106ca4403205d86cf55ae..dd1898b1604823898cd7f1cf0bc7fd4bf5c6feab 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSchemes index 410c78c5b611c0e09770d12d8514159787d8095f..dac03266604ad2e2f6f5b781c628320eeb761dfd 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSolution index d216303cacb44c3be1bb14e0e570f0d0f38f37b3..d81a08a3e5d2b7d7be7d759090c5aa463e11b0c6 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/aerofoilNACA0012/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/T index 44e7cc49669f90850858719edaead7c0cd15dcb9..d7ad2480f874e56b64e712afdf3a2660f45d5a44 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/U index 1fe0a723b03108444f0e0ed3a772c70384fb7a25..9f3cd801e4f9cdd99627118c5f32c1e4b63aa67b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/alphat index 86ee81069704fca5400dbb3fa3cdcab64b94d623..4473f5ae9aa7f8f5c73bdd8f72b742383e76adfa 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/epsilon index ec43bec70749bb753c1c923c0281a0441ecf5bb8..2a95ea4c2da79db97b4865483ae3392d5169dbb3 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/k index 1ec6edf7ee6d88b44d4a064080b40136a9ea9bb2..02bf5e1bad007f82a0b8701f68663851cfe60d83 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/nut index 5403c4aaedad8f1a41e433c64f5f76c2932b1341..98bf395e220265175ceaba1f0b722e5ad1bf7329 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/p index a47eace2f17e68c711454c39c840f21e94861a8d..ad76339a6f4d65acefacd35895731485d99b5218 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/fvOptions index 534ce4724a12d9be9accc1739976aea107924582..8687a2c6c2fd3aeca6b4c5aa3b3a2fe91789268f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/thermophysicalProperties index 5ca4a156af58b451abb4625b153e71df83215033..6b25435d256c2f766d9909e8bc6112c9c538d180 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/blockMeshDict index ecb9ff7706112c098535fc90f6926bcf9e3c58a8..11d1a78c51b6d030732a35e6dcc2edad45b9d5a5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/controlDict index 35977e2c24ecb5707f23c1d50fd07cc688e3f465..e5ff499f4b363ca039f898efc1401cd14d375b97 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/decomposeParDict.example b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/decomposeParDict.example index e4ec8a03314524d6834e0265a8ed69c1d64eda33..49a900b227561fa4a6ad87de5b39c154a2297565 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/decomposeParDict.example +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/decomposeParDict.example @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSchemes index dbfe8f13f9aa21b5a773fe38cb6466798620c8a9..f9f6136aa6d339b06c87961e32507ac6e94ddc55 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSolution index 1afb1109d5301e310b858fe69ffe22dfd3d660cf..33b2608b7aad7111d50b2b9d1da7faf33ffee07e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuct/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/T index 3ebf98501bd4190d31153c795c9a621c91bc4411..8fb585fe16be1b2522a69f7c6ea4c7995b91d3ed 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/U index dce427b3e74847e54169fcb55e00f6e2c405c625..77079cf62fb0a47180dff63951e1be04a81cfcbb 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/alphat index a1b102eb2e1f8e30f172c68ef6b9dc50850f7214..e37036e72c6376c6313138a696c992c7ccadcd4a 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/epsilon index ec43bec70749bb753c1c923c0281a0441ecf5bb8..2a95ea4c2da79db97b4865483ae3392d5169dbb3 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/k index 1ec6edf7ee6d88b44d4a064080b40136a9ea9bb2..02bf5e1bad007f82a0b8701f68663851cfe60d83 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/nut index 5403c4aaedad8f1a41e433c64f5f76c2932b1341..98bf395e220265175ceaba1f0b722e5ad1bf7329 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/p index a47eace2f17e68c711454c39c840f21e94861a8d..ad76339a6f4d65acefacd35895731485d99b5218 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/fvOptions index eea4106a2dc35f155e57cc9eb97f4cb19f5369e5..1878763ef5e7f1fd9663ea6007e1d3a65d278644 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/thermophysicalProperties index 89084b6f16348336f1ca9466d3438c4e92b9765c..9a672cd29f012eec26d54b6bdcc8b34efad871ba 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/blockMeshDict index a45354d22e6fe63ac71fee71024523ea74185425..69f87013b7c4a920a00392cfd92c6092e8ab1d66 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/controlDict index d17b782f7b7a33fc932a9f08abba46de7ee5d348..784af30852b073fbc16cbd6098fb91073d119e44 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSchemes index 88ae66f639b42c5d995aa39b1815dfff79ee1b82..d81861b81f31f293c707e84e41ce31cf912da420 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSolution index 5159faf2956c8006bb24880197b607dc1cc4256a..ca39c6838c18c94c2a1b170a25f6c3df6a8568b5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/angledDuctLTS/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/T index 9d7fbf3d2b61b447df4585ca382c9a52dee245b0..49277f096cc4c7e86756816872d2027cfb50408e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/U index 1d863e1ef3f9de8fae237035342363e039e00158..018256552b4883879e741e8e331b8f156d40c9a5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/alphat index 2c44cd390fce5484118289e8133ca48f54229ccc..7a181f3f4c7b01d70e3ce59f32169a47bc7cb679 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/epsilon index 35974903033aab4a064e3d01ea20f1ecdaa07e99..a01802225bdff838e624a22252977ef1324c7291 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/k index 5597e164ff3d07fa97f6820032675ed931f2c32d..40df0ed2ae820c391be5f8ee67071d83f0862445 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/nut index 4f1bfe3671bacbf9c7025f8a215b1fb28735c519..368342851dd09f6a4c65924bbf8558313836a43e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/p index 9b27643a3d68b8d6793ab953c6bef8afebb1f64b..7933507ad4d6c06e2669df64f8388564d5932df9 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/boundaryConditions b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/boundaryConditions index 09b141394b694f14926e7c5a04760df3f8c23a45..64ed32ffb68344e5576b7a32727942de6c8598e1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/boundaryConditions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/boundaryConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/caseSettings b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/caseSettings index 563b439d26a03c10c95d4f1b4b4d43c12dfe7852..885083a28e3a17a7083317a5885ab2cd62f7ac4c 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/caseSettings +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/caseSettings @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/dynamicMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/dynamicMeshDict index d433b0ac4b716e89b54435f495c8e415cb9bed3b..711788116cd6943b466af07cf8a4a9ccbaa607bf 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/dynamicMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/thermophysicalProperties index 89084b6f16348336f1ca9466d3438c4e92b9765c..9a672cd29f012eec26d54b6bdcc8b34efad871ba 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/transportProperties b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/transportProperties index d77437631d7b4e1f2599afdf968259d4acad4997..9be5005298b5cf826286093a684368dc4e3395b0 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/transportProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/blockMeshDict index 5e08c31675c4603c9aaee8afdca1ee293d479ebd..b3c05ee978b5b4a2d4c66a97199b32cf48764227 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/controlDict index 4fd7dba1237027efddf6dea31eee762b6c3d5a09..66189ece9c74370701df4e26a1b867e4d3f6a236 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/createBafflesDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/createBafflesDict index 82433d57506911eb943fca6cc1a0e0d444e5bbf8..edfc9627e28c89a4b8b8d956fe64b0c7d7b79c46 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/createBafflesDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSchemes index c56bfe3252bcedb7c5186c1439d512ee4aa73dac..061222b6cbdc0b0a00871eb63f6d83e19e4b1572 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSolution index 5e8331fa6cdf112a8276946d294d939be6c52af8..f7668a4f32cf15057a62997eb15bea1b7b68f7e5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/snappyHexMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/snappyHexMeshDict index d87127b0e77e6775252813fa83b763f286ad53db..94228cc740e1a54b49feac5e3df27f3a671e83e1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/snappyHexMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDict b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDict index ce8dafc84e393265f0c9a7d685f7a3dd3b00d898..72701bbc2f17c26230d928a667210b36333fc9eb 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDictDefaults b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDictDefaults index 35a8eee0d4a141a8794cb07b5e15baca1f4d7604..90fd9c992305d5d2df55aed13c2325dbb760914c 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDictDefaults +++ b/tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer/system/surfaceFeatureExtractDictDefaults @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/T b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/T index 4567f6b2a866afb26c90e04104d58e0f7be28596..a5dc2ecbd13bf55853c380b794cd0e8ce94a1b2e 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/U b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/U index 0c7f28fab775316ce4c8041b9e5f9599167f6f6c..45de4e358322047556741f656e4cef4bd16c8538 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/alphat index ad5229acaf54cb4ed2b45537b52dd1a83bcdd151..bbdb5ad8f3723a8afb1e40953397a484403953ec 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/epsilon index ef42c81fbbb9cb1e9c1213809f5919963aece652..db1036a59c11318522f6f72c5e2441b8f1fa5124 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/k b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/k index 3447fac019c161ba0855230eb7ce97efb2425642..f70d28e65d6649242ecfe3412feb473f0c6970d7 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/nut b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/nut index d5bbaef5b802e05db0d017170f143d07577002e0..dd6d0f4372257cf1569c15738bc3153f29718336 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/omega b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/omega index b702eb03a45543415707e725c169f6b8bf8bb99e..ec6638e5704d8fdf9ee105e30db058949731c841 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/omega +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/p b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/p index 140251c26b76c299584337af40afd8d3e8dd015b..d1942b91c31b10324b33d0f8d19b9c93b42a9c9b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/thermophysicalProperties index 183d9aa848161de9fa3309a71d8a54a116673715..ce18b4879c56c6d63e3fe5d47cb653f2aa030e2b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/blockMeshDict index 4b291c3ca387d3a700a68ae159b6d46063a944a3..89ef70458c46f0482b9a2f0884bc56fbae77deb0 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/controlDict index 57d7f53fcc8e2a107707b02b9e776b0823bb12c1..2638d7db061d58fe035bb58d75e5b0627d8a6a13 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSchemes index 30a8c10669b738beb8c2f99912a058a6f246cf29..f3ff0ceb117ed20f82526e43a46d6112ba224835 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSolution index 5413d8d62a792e5c05da55e1f8a990bf8554a4fd..5969088c107a3013063344c2060a7ba942916fbb 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/cavity/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/T index fb16eafee03817da92bf67b898062f4e5c069d07..ca28eb05b756e0465830d303bbcdfd96fb6d8a84 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/U index 9be31c9367ae68ba6855e2ff5075ba756b8a09d4..dc2d0e0d071ddac7d300a5af7a40d9cebe19793c 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/alphat index 57e77f55abc78b615c27d4a8d89e67c501c385a7..28515c2b1605a5e2e4efb0243e25f98aea4c5f78 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/epsilon index 89e8b29a800ea47c03e732f101b6780b5cb5881e..dff185025467878cd073b75bf9621915614a4e3f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/k index 7e5c3739229dfbc0759da7fc58f8c932d5b2c518..51e876d2aab00911a2a34debb4ec77771d62bc34 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/nut index 1187135e29c004cac7a42a83cbbb09a3705da347..88176304830ae4dacdf9e9ba8a90454241bb32d1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/p index 4f2daa0f4f9b3738a03257844d534bf12bf09e0a..d4b0e3957c113fbf3f96aaa983cd2d67e5615674 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/thermophysicalProperties index c83dc3d7daf7a31cc8747a8424485e944356c15b..12beb91744a14100dc6dd1e92be9fa4b38148cee 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/controls b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/controls index 71def8c812c49ece237fc82babc55ffd3c3b0d92..1beeab8f61972fefbea6eaa8d20cd0a99d5ae9e4 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/controls +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/controls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/blockMeshDict index 7fcaf37a71b51dae619c378b5bf676367d34672b..4bf30e877362d8d16496aaf8acd060555ee96202 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/changeDictionaryDict b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/changeDictionaryDict index 0cd22e21cc4c10ec5e580117e9346dadb9a6fd86..3b8f2afd18efc33a401dd75346b13b2bf1c198de 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/changeDictionaryDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/controlDict index 69fc73aefc93c57be2435c2793da4ece15192647..f5cd64c25ec3259b6792888b6292401202a78411 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/decomposeParDict index f499db91a329024091e4370df1a4d1aa5324474f..52375e088da3cef49e15d6182866702d60b097da 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/externalCoupled b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/externalCoupled index 943c08b2a024a37ab01020376b0bf679d3d13c5a..cb3fad063f68208e24dc8860635f591ed9be17ae 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/externalCoupled +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/externalCoupled @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSchemes index 0a37a998bd8cfd3a6b9ce9bb3b19253a3e4e4d9e..5600ea79dbcdc1263306af6bab88cb54f0425047 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSolution index f23bd9c002ed14fe8f21232d4aab732da04e3850..4bc341f543a4678caa76e330fd0d85c627e92d15 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/externalCoupledSquareBendLiq/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/T index cc615846cec568d7395b4f5c9435c0c0e96c6d1a..d20d02209406d73725f7b25ee12549e10f65b717 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/U index 278e4ac0a840c09d7b44bc614c2344a334a51f7b..b243e1d5aa5348ae867441414152803db2eef4e5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/alphat index 0009399f7c8a1db1579b9dcc80bd6d9158fbb9c2..b959c1c4d391ea7c141f21e5b68338efc5ac953c 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/epsilon index ea7dc898f02696461a91003b06429aa9b77a4fff..0468e30594e3eabb95daedb3120197e6c5213fc3 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/k index 50bc234b3b3030355f66043110734c27d0e2a0ca..c2bb0caaa8e83b139a3d4cd0fc1fcff86adf8aa0 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/nut index a115d4f0ade72cf159219a4fc2efd8f5a3d32038..4c5fff8628e6daf06a8cba0e059ae4a4a0468b74 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/p index 63e8aa7c99ba02f356f098a1aaf17ad270ba8f8b..cd5e46ec68a8397dbdcf361abf744830a56f96ce 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/tracer0 b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/tracer0 index a6ae17c3d72c2a453a4b89f617a62173e03a8375..8f2962bd7f9fc2d9dd20b35b5b339e807ac5d548 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/tracer0 +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/0.orig/tracer0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/MRFProperties b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/MRFProperties index 223446cc308272479cef2b2047566255034e71e2..2c0cdf788aa20dba41cc6abf310478eaeda160d7 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/MRFProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/MRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/fvOptions b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/fvOptions index 400b54163b9e3ca4ca15340fd770a8e56fe765ea..d3d0112a8defe9c0921375dac4c353ffab74e7d7 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/thermophysicalProperties index 0aa0d38846ddb80c2f6a901dc42404518319e5e7..39cbde9f693fd0892d716a6057e3d66d5a884c23 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/transportProperties b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/transportProperties index 4908cd4b363d927964bfd18e8ab7a0696e126816..5818777c874d622f3010d6612ae5af09139a3ad1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/transportProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/blockMeshDict.m4 b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/blockMeshDict.m4 index 2575c409f36995771cdff538663d7dd48a50450e..5fdc92e9041f3550caf23e9e9c298e102f6c7324 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/blockMeshDict.m4 +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/blockMeshDict.m4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/controlDict index e922d442c114abc3b607aff8ac01b78bd9ef2e02..6b022bb033595a5ab6de7ccec0936ae3fbb6011b 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSchemes index 46e3ad541d9856ce2903ff1bea29ea2b75d07504..824a34fb06c82954f5412ba82473e487b80af7cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -29,6 +29,7 @@ divSchemes default none; div(phi,U) Gauss limitedLinearV 1; + div(phiMRF,p) Gauss limitedLinear 1; div(phi,h) Gauss limitedLinear 1; div(phi,K) Gauss linear; diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSolution index 9c9918e54deec5992a6723549b13e18ef9166ed1..c674a38f4ba963c283b118e674a75e5e6c3727c3 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/mixerVessel2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/T b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/T index 4fd7f973c14d88d54cc34fc22dbd3b24273bf323..35b2ac40256dba8392671a8746d96e24a15e3f82 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/U b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/U index 0011764b2417704f10b7da72b56ac2b287b6ebd9..c9561576bcdaa4e8849ab7059d2f2f8eb93da7a9 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/alphat b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/alphat index 57e77f55abc78b615c27d4a8d89e67c501c385a7..28515c2b1605a5e2e4efb0243e25f98aea4c5f78 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/alphat +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/epsilon b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/epsilon index 89e8b29a800ea47c03e732f101b6780b5cb5881e..dff185025467878cd073b75bf9621915614a4e3f 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/epsilon +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/k b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/k index 7e5c3739229dfbc0759da7fc58f8c932d5b2c518..51e876d2aab00911a2a34debb4ec77771d62bc34 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/k +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/nut b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/nut index 1187135e29c004cac7a42a83cbbb09a3705da347..88176304830ae4dacdf9e9ba8a90454241bb32d1 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/nut +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/p b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/p index 4f2daa0f4f9b3738a03257844d534bf12bf09e0a..d4b0e3957c113fbf3f96aaa983cd2d67e5615674 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/thermophysicalProperties index c83dc3d7daf7a31cc8747a8424485e944356c15b..12beb91744a14100dc6dd1e92be9fa4b38148cee 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict index 7af1a31091c98bc34747f72fd967d2eedfd419a9..5d4730017db24a0b7550c9f68e044ce4585d3c46 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/controlDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/controlDict index 51b6962dc6a39eaf06df2de604530da464bc95da..bd4d52c0f744474e33381552131e4bd6aac3e0d3 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict index f499db91a329024091e4370df1a4d1aa5324474f..52375e088da3cef49e15d6182866702d60b097da 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSchemes index 7521bcbc1254402c191766261ba1c16fa5ef4f1e..82c047367e5dfa2753e056c4aaa0ebe170b209c5 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSolution index f23bd9c002ed14fe8f21232d4aab732da04e3850..4bc341f543a4678caa76e330fd0d85c627e92d15 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/topoSetDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/topoSetDict index ee65ac0392f35cfbcc10f632f09c934ec72a9532..f31adaa73b6300b9b36f5035731390658d078a28 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/topoSetDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/T b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/T index b3a8144b97a66612dc5de7fd68121aa230d740ae..cc5efbdb70310c734b43c2ff070584987c61edd0 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/U b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/U index d31a1f79d68352023fbf694932d7ff57381a4409..d97b8c576df82defa7898f094d487afe1e7f6e13 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/p b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/p index ef98caf08653bda821589792858987081b04aa5f..f86bc385bcf144f500b2b2ef1f8159f8707de0c3 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/thermophysicalProperties index 3f680583f10ccf4b96ee7ecfa219d5b9af547c86..955221cf9e33fa780e9b368832c890a2eff58f1c 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/blockMeshDict index 6e7dfaa69933f8d7f0a65f07454b6c167ae39e26..b4de4036cb77a674363fb30edf5e69ebbe6ffe75 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/controlDict b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/controlDict index a2d34ad4af2e55f1c853b6d38f7a0cd7eaa5a966..12f32427b3821e1cd70425a246e07bc110a30e6f 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSchemes index 0a59a88f4c7846866d6b2a32ade318eeaebf7656..25e11f983bff39d76681b39d45624b01ee155f66 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSolution index a5d9b0a64abbe3f39294d5ba2bc1807ac174fd52..b0ec8ec096c03ca32afdd24b667d7701f7a0c07d 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/T b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/T index b07267557b39eca841cc16030a6a644dd0dd1d0c..6b4280314d7fd3ee2b8fff500fda5f75579daae3 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/T +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/U b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/U index 63ddab96cd27a7b24812d3f9647a510cfaa28523..97c074532f82021d67a54fd8e441c2bbb8efa501 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/U +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/p b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/p index e334bf6c2f30711109cf9a6e88f4753e483edd01..3a0706c978bd72a4c35736fd130ac60061e01958 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/p +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/thermophysicalProperties b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/thermophysicalProperties index 89084b6f16348336f1ca9466d3438c4e92b9765c..9a672cd29f012eec26d54b6bdcc8b34efad871ba 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/turbulenceProperties b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/blockMeshDict index 6f0996c24e67636e46c2f69987ea703a09e8d1d9..eff0994b7a15649fa754e86a102ae8a9fccf5774 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/blockMeshDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict index c02207f3972b6ffcf6ab40f419e344048c987e49..d7540c02e88ac53d63f30727184f5d95a88e7751 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvOptions b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvOptions index 7619d242c22be89815a548a2dfc7db3cef619053..9659fa19acb34c1219836b689457e3e9ced6d99f 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvOptions +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSchemes b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSchemes index 03e5aa11d35bd64757335b36576a34baf52b6d52..9095e4dcaed2e2bf435bb59cf4b58db0b89b3d20 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSchemes +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSolution b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSolution index 08e9d387d78d65fb0a864a23f5e63265a059371c..2a83fcb6b96ed464d881af77cd634d87c9dd9179 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSolution +++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/T b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/T index 5290cd6ea1187c10679d6921b5acaea959079856..66e7db4b4732ddd912c08ab13e1ec0775fc69b26 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/T +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/U b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/U index 948213b0fd54032cdcc44387cabc3ec3993e4c9a..569ed0ef1c33b137c2e66333c50d9e564eddf889 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/U +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/alphat b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/alphat index 8b106ff824f4e06929220c9d9e49ec386280ed67..ae81d2a87de9f84fb8c5af3b6a7e54b5c8ee90f5 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/alphat +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/epsilon b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/epsilon index d376e1598ba55fa6099076eb72cb0e4a082659c6..33fc07492240c255c9d9307be3441cb985a03652 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/epsilon +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/k b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/k index bb7a6530985cae8af5a408ae2fd58f7c8c9dd0f8..6ff7325c8fb4cf977bc6694e171ee89c5c86cec5 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/k +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/nut b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/nut index 7e983684a51430698fb3dcecc75b49437eadb04c..50fc6cc839312628433a393898881a443463817c 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/nut +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/p b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/p index a47eace2f17e68c711454c39c840f21e94861a8d..ad76339a6f4d65acefacd35895731485d99b5218 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/p +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/blockMeshDict b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/blockMeshDict index a45354d22e6fe63ac71fee71024523ea74185425..69f87013b7c4a920a00392cfd92c6092e8ab1d66 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/blockMeshDict +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/fvOptions b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/fvOptions index 16ed7d3f36b2289798ef3210dbd9455ce727c802..91152157012e474f23c245dd4a59735df99dd78f 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/fvOptions +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/porosityProperties b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/porosityProperties index 07193333a73c753288479dce2c4f5130fc1bdb9d..9c425b6d224bc74aaa63fd37c77b1fe1d90c0a4e 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/porosityProperties +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/porosityProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/thermophysicalProperties b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/thermophysicalProperties index aa010cb54843ac1b62df3d587e6882499ce75fc5..fead8126cb841ac8355c53dd901b9fe494654392 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/turbulenceProperties b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/turbulenceProperties +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/common/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/controlDict b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/controlDict index 21576dcd71a06a6e1af2c842c9227dc8990be12c..00357a6bb605f78a70ef5c3f575dc54d3d835001 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/controlDict +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSchemes b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSchemes index 0fc29289e7c4114961c2700bc124b504873d3411..3f9dbf5f54217e4bf3889183c1b7c8a0d0091e94 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSchemes +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSolution b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSolution index beeb1f0317723d6812deb63dee654f7b38da6f27..510cc2fe1d7b58c8d795290ccd91ff5df545ba07 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSolution +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/explicit/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/controlDict b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/controlDict index 281c6a2a0b5c1aa1ac146ad2aeb5600b8277d48c..bfafd65bf4bf1fd63be44adfa535c5a18b454161 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/controlDict +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fluxSummary b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fluxSummary index 28161bb0831d47c2c229f7db5f9c055e81b258a3..98d059ab4096e2ff162de7b2abe3952ac0961421 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fluxSummary +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fluxSummary @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSchemes b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSchemes index 0fc29289e7c4114961c2700bc124b504873d3411..3f9dbf5f54217e4bf3889183c1b7c8a0d0091e94 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSchemes +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSolution b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSolution index d45d459dda923a9a8a8dbc7f303a9fafaa5c82a9..27429ff81df16ccb162f5736dc3f3e735ebcefc5 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSolution +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/sampling b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/sampling index 625e7744452af8cba19e15fe41922d5e3f8c25c6..441a69a538cdeeb8ccac008bf438eb9fe8bb78d8 100644 --- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/sampling +++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuct/implicit/system/sampling @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/T b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/T index bd32abbebe0796907c7c33045171c45524c4a97e..13f39b0847f3e8bcdcb417a0403a6c4feae19917 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/U b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/U index 26d568ca08553d49d0cc704377c3bee4675b6b57..0f295be1f61a3b126be496d4fba6d2a641c857ba 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/alphat index 2650a13e7d28fea5773b5c362af8ffd95229523b..07c529c26f271bdfb7d96ce712b1d5760743e0b1 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/k b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/k index 5bdf939dd8928c2fcab5b57debcaf4befff4bf63..df22298eed24fd637431ccc9b28376c8b1b981fb 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/nut index ab359b92aba424209e7c85609ba06e1fe6addfe0..4bceae1f1cd03991045aa50001f3d53944569fa3 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/omega b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/omega index 7352507a3310a0f18269be939b9bc801bf30a908..8871d67a9b1df0ef10871e11f3de6923ba5fbe0b 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/omega +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/p b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/p index 977ad674cfa025a6cf38829adb49177a975e5c29..ffa8a3d2e40c65e53318f233b0d0c9e660467e6a 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/thermophysicalProperties index 5d1296136d6bc74fd9939c8175db565849b94c85..d8cc0b01b30eb79f5b38593cd9d26f3d4979c23b 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/blockMeshDict index b32f7a188b83aec5dae2a9d1041735907de53d13..bc888b4285f1e99edcd4b3d0ef6216102f4115ce 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/controlDict b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/controlDict index c42dac2a04c0dbac2064ef46a8e659cc1a55c063..d4a6fff8303788e8ebad3cc9e92ab0398fa854ef 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/decomposeParDict index bfd0aca906ef6c31509a4afee742d7f9d160e704..4325a4d4884c13a6dbfa4431e4c07277f92c4d06 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/extrudeMeshDict b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/extrudeMeshDict index 33bc3f24318eb77af16cb67a46f25514bcffdd32..54529a553d0be572a5a12dcecb6063cc2326b96f 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/extrudeMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/extrudeMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvOptions b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvOptions index cfa0b295b4fed7cbceb106ca4403205d86cf55ae..dd1898b1604823898cd7f1cf0bc7fd4bf5c6feab 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvOptions +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSchemes index 2f42aacb475041f8524f0249510533d6300b42ff..11a71f4a268f85fee92dcd359b6447d222d469c2 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSolution index 991b91df1f2ad285ec037e2398e0b424021ff4f5..0cb77ef996662bb74a7a9c5291d23bf03f36c4f6 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/topoSetDict b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/topoSetDict index d0729325f01408f7cb32d2012b3220b51621704b..ef3a7a75966ff26fd35ffd2a71a842f2cf5e5b57 100644 --- a/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/topoSetDict +++ b/tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/T b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/T index 3ebf98501bd4190d31153c795c9a621c91bc4411..8fb585fe16be1b2522a69f7c6ea4c7995b91d3ed 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/U b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/U index 0eb9b7330b5e76d714c815e9b69787520c7837f3..0d0af2ea16f60ee084367d21a8f59a492fab170a 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/alphat index a1b102eb2e1f8e30f172c68ef6b9dc50850f7214..e37036e72c6376c6313138a696c992c7ccadcd4a 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/epsilon b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/epsilon index ec43bec70749bb753c1c923c0281a0441ecf5bb8..2a95ea4c2da79db97b4865483ae3392d5169dbb3 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/epsilon +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/k b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/k index 1ec6edf7ee6d88b44d4a064080b40136a9ea9bb2..02bf5e1bad007f82a0b8701f68663851cfe60d83 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/nut index 5403c4aaedad8f1a41e433c64f5f76c2932b1341..98bf395e220265175ceaba1f0b722e5ad1bf7329 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/p b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/p index a47eace2f17e68c711454c39c840f21e94861a8d..ad76339a6f4d65acefacd35895731485d99b5218 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/fvOptions b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/fvOptions index c7c4efb428ddd6c4cc0772dc9952323f91e86e4d..3079092014b6dfa42598b18948508c6d8a6ceaef 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/fvOptions +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/thermophysicalProperties index aa010cb54843ac1b62df3d587e6882499ce75fc5..fead8126cb841ac8355c53dd901b9fe494654392 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/blockMeshDict index ecb9ff7706112c098535fc90f6926bcf9e3c58a8..11d1a78c51b6d030732a35e6dcc2edad45b9d5a5 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/controlDict b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/controlDict index 010b19f6d409a035d2d3a1a7420eb40f7275efc1..9952201c2b0128b915799d32cc1c806bb5d32025 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSchemes index 0fc29289e7c4114961c2700bc124b504873d3411..3f9dbf5f54217e4bf3889183c1b7c8a0d0091e94 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSolution index 22f7e78bb0ed4f7c370d0ad577d50832f5612ca8..e5fd7457a259c96e021ef4dadeaf29b6a95d6282 100644 --- a/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/angledDuctExplicitFixedCoeff/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/T b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/T index bb58dbdfc032cd4613029176c10323b1f3a3cd6f..fdf9a5e1a8db0e35e481b31c2d57ce02fdd1305f 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/U b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/U index 6dccb05b2d7bb24fdd6fadd255cc7525371d8bf3..4dbcfb71cbc990c7aecbdaa573b43a9e62c9222a 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/alphat index 6edb40dfd6759944d93f2c744a0ffdb01bee81ce..1eed31f75070df4f3354e2b3fe6956ef5b50e4ba 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/epsilon b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/epsilon index 449a7ed954fda377d11106d35820680df7c6c8bb..32ed071b871b528656730837a05fab45fd9bd5ee 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/epsilon +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/k b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/k index 29fff10bd580c0dbb758622f5d16fd220812d4b4..2309dee254fd8dc602169f6d3fb36ee1b9485491 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/nut index 7038b6eebd600b5e6fa2035cae173a8a0c2b281a..61e5c96ab53ff4f6a54eda22165e6f63b64e6df9 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/p b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/p index c64a1a31ad0384dab423cbc0d8970f67e22372d9..b70475d288c157a5c6bfef3b8e2847d503ccf86b 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/tracer0 b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/tracer0 index df2e1719c922f0d21ed204487f5115a07135dc24..4a01287dcf6f6928fcd64c895a6c81456a975660 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/tracer0 +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/0.orig/tracer0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/thermophysicalProperties index 96e3f865e43735fe069f48edad5d7d7ff43a1bd9..c703d1b343ae8f0b3da13fc60f78725507dfb879 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/blockMeshDict index 81f926950a9541cd3e1b54648ef8211626fcddd4..06bcf6a0bb424392acfc7bf0e452c5183284b1a8 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/controlDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/controlDict index 81e2abbbfc0f4da722407c38ba3140afd08bee72..443b17cca5ee6125794dc72adcbec9854255e7f0 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict index 4159d5b56468e6eb5116c407a18a915f6edfa22f..665c1af6ca65fbb795f4f6f6f15a8c5d3b8d0a81 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSchemes index cbeef65b4fbcd87c317eb34a69100513b3f7a4aa..131d9c0f45a52a5028aca8b1da0bf05fd061ede1 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSolution index cd8e037cf1d31c2c1a3f95c61032a23933f1a1af..2478ae2f84b971f18b10c9b6f4f4485f893aafae 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/meshQualityDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/meshQualityDict index aad4405729165ce33e5bbd8b1577d59a4cf69586..c2eac80361e36d829e361f1f04bdc37e60bebac9 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/meshQualityDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/snappyHexMeshDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/snappyHexMeshDict index f36876160ca97636a6acd39aac47ecfeb478335d..d17b0e56ff63a18f298b2d8405bd661a31ad36ce 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/snappyHexMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/surfaceFeatureExtractDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/surfaceFeatureExtractDict index 6affc5316bedc65e115394c2031bf68a2346e259..fe0501bea2482ba8d0395c475f799fc0fa960596 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/surfaceFeatureExtractDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/T b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/T index 18f971f067cf3728080023742193df03e93c7e6d..8317bbade39d5e71775d1481eb2bfc22fae74752 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/U b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/U index db1fceb5dd3a1c376ae20a59ae1381e9f5b56e28..7f0cfb11834f989a53235e51124d96aa5be31d70 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/alphat index 57e77f55abc78b615c27d4a8d89e67c501c385a7..28515c2b1605a5e2e4efb0243e25f98aea4c5f78 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/epsilon b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/epsilon index 034e14f040529533f6857f96d9649abfee1294a3..43e5fefbc08c1d3310213d452f670978c27e872e 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/epsilon +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/k b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/k index f8602a7454884c093cd1a41ccc8176ca0ceefc47..369b33c04257d4978477465823c5366997fd2c28 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/nut index 1187135e29c004cac7a42a83cbbb09a3705da347..88176304830ae4dacdf9e9ba8a90454241bb32d1 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/p b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/p index 4112f6118a8656f8ad4a95ff01b259c715b60ba6..1f27e25a6e5bbf4f65768cbf5d7faec8db445dde 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/squareBend/constant/thermophysicalProperties index 024da3fb852660a68036a33caab4f1e38ea776b1..73d02dee4c2ab9d5e5c8c0e043910a58704ce77c 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/squareBend/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/squareBend/system/blockMeshDict index 226175cbf8e59b6426c4f347d152a06e9a2398cc..b9ce8c5d18109559aa09259f27c23cfaad78680c 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/controlDict b/tutorials/compressible/rhoSimpleFoam/squareBend/system/controlDict index d88d8bf51eccf5767faf69987c043d446ebcf884..e7af1dd6e6a2fe3d266a951b070d4e0ef8d4e268 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict index f499db91a329024091e4370df1a4d1aa5324474f..52375e088da3cef49e15d6182866702d60b097da 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSchemes index 0a3eb49d216dd0f32764db80e156fbae0de6d50d..93d100ada0fec49933fcc9c75d5acceea586f34a 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSolution index 3388b47d95905a7a268d2e9a0cdc5d01e68ed546..74239c300e283cac1690b3a26879c00108fb9cd5 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/sampling b/tutorials/compressible/rhoSimpleFoam/squareBend/system/sampling index 478a9b221a5945f13994049aa0647a3597908bc5..5f5648c0f1d493d5341c6c691861906248fb7378 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/sampling +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/sampling @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/T b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/T index 58093b3330784e9e0387bc87ec55bc6f18ccb5c9..0a5cea9c5c8e6a61840be0b0b3e634466b5d5148 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/U b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/U index fb2759a73bb3c884515903863dd3afa0dc69b08c..a1a9a1261f9c2318d908948f15cd45dfe9376d35 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/alphat index 57e77f55abc78b615c27d4a8d89e67c501c385a7..28515c2b1605a5e2e4efb0243e25f98aea4c5f78 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/epsilon b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/epsilon index 89e8b29a800ea47c03e732f101b6780b5cb5881e..dff185025467878cd073b75bf9621915614a4e3f 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/epsilon +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/k b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/k index 7e5c3739229dfbc0759da7fc58f8c932d5b2c518..51e876d2aab00911a2a34debb4ec77771d62bc34 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/nut index 1187135e29c004cac7a42a83cbbb09a3705da347..88176304830ae4dacdf9e9ba8a90454241bb32d1 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/p b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/p index 4f2daa0f4f9b3738a03257844d534bf12bf09e0a..d4b0e3957c113fbf3f96aaa983cd2d67e5615674 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/thermophysicalProperties index c83dc3d7daf7a31cc8747a8424485e944356c15b..12beb91744a14100dc6dd1e92be9fa4b38148cee 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict index 7af1a31091c98bc34747f72fd967d2eedfd419a9..5d4730017db24a0b7550c9f68e044ce4585d3c46 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/controlDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/controlDict index f07f6651024d03fee38697075480bc644cece5b2..e8d52bed78b65e4c56157565abe1d7c0f2739f77 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict index f499db91a329024091e4370df1a4d1aa5324474f..52375e088da3cef49e15d6182866702d60b097da 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSchemes index 38d917d876fec6a401e3cb114a94c8a5cfc4bef8..88b1c18d5917db50fba57bda604abe4d75af62aa 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSolution index 69654f1a0062051b9c7ee3df147ec8c3da29ef77..f24bc509a50a2568668506a80f2c0b307e0ac733 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/topoSetDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/topoSetDict index ee65ac0392f35cfbcc10f632f09c934ec72a9532..f31adaa73b6300b9b36f5035731390658d078a28 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/topoSetDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/T b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/T index 4fd7f973c14d88d54cc34fc22dbd3b24273bf323..35b2ac40256dba8392671a8746d96e24a15e3f82 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/T +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/U b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/U index 168798edbe3bd9d1855e8e9a3c19c94544ac7b45..59da8409c5f756c316adb4887b9d630257738001 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/U +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/alphat b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/alphat index 57e77f55abc78b615c27d4a8d89e67c501c385a7..28515c2b1605a5e2e4efb0243e25f98aea4c5f78 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/alphat +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/epsilon b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/epsilon index 89e8b29a800ea47c03e732f101b6780b5cb5881e..dff185025467878cd073b75bf9621915614a4e3f 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/epsilon +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/k b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/k index 7e5c3739229dfbc0759da7fc58f8c932d5b2c518..51e876d2aab00911a2a34debb4ec77771d62bc34 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/k +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/nut b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/nut index 1187135e29c004cac7a42a83cbbb09a3705da347..88176304830ae4dacdf9e9ba8a90454241bb32d1 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/nut +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/p b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/p index 4f2daa0f4f9b3738a03257844d534bf12bf09e0a..d4b0e3957c113fbf3f96aaa983cd2d67e5615674 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/p +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/thermophysicalProperties b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/thermophysicalProperties index c83dc3d7daf7a31cc8747a8424485e944356c15b..12beb91744a14100dc6dd1e92be9fa4b38148cee 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/thermophysicalProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/turbulenceProperties b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/turbulenceProperties index d15a00026fb11ef63140bc9fce749961ba9b6f87..f7c4b04328d0e0797575a228bc1f79bd0b08b00e 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/turbulenceProperties +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict index 0ffcdb08fdc902f9b3a4057f82d04564f728a217..de82bf1434c7cef6416e8c065e44e5d802391474 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/controlDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/controlDict index 17aa71dc4ff56a28fa691cb9c8f0ff2e18d5d905..ef19023e7091380dbcb6ca65492906040dbb56be 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/controlDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/decomposeParDict index f499db91a329024091e4370df1a4d1aa5324474f..52375e088da3cef49e15d6182866702d60b097da 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSchemes b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSchemes index b88dda4980bd914edb2b9ed6fbe67691b4d8a06b..a58b751f9c2140ebd37a862bbd764776e05a8ea1 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSchemes +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSolution b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSolution index 69654f1a0062051b9c7ee3df147ec8c3da29ef77..f24bc509a50a2568668506a80f2c0b307e0ac733 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSolution +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/topoSetDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/topoSetDict index ee65ac0392f35cfbcc10f632f09c934ec72a9532..f31adaa73b6300b9b36f5035731390658d078a28 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/topoSetDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiqNoNewtonian/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/0/T b/tutorials/compressible/sonicDyMFoam/movingCone/0/T index 2da9bcf9088177774f80aed2442b2990bab522ce..b8636136f07cef16d60240485a011a68ceec096f 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/0/T +++ b/tutorials/compressible/sonicDyMFoam/movingCone/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/0/U b/tutorials/compressible/sonicDyMFoam/movingCone/0/U index 6924029c5f136d3a42c8c52d0cd96a4667138e3f..4b5baa6359a5aaf09217429663b41f05c1d9c0b6 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/0/U +++ b/tutorials/compressible/sonicDyMFoam/movingCone/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/0/p b/tutorials/compressible/sonicDyMFoam/movingCone/0/p index 25cbe041057db1791c495205ee809420d4949bfe..ea66f0048855fe507ff03569ad3e190fe9c0310b 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/0/p +++ b/tutorials/compressible/sonicDyMFoam/movingCone/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/0/pointMotionUx b/tutorials/compressible/sonicDyMFoam/movingCone/0/pointMotionUx index e554a94df2deefdcf99622d1a0820cd92839a2e7..cd9e76ad50760b4c030dd6915caa886b26bfa2a5 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/0/pointMotionUx +++ b/tutorials/compressible/sonicDyMFoam/movingCone/0/pointMotionUx @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/constant/dynamicMeshDict b/tutorials/compressible/sonicDyMFoam/movingCone/constant/dynamicMeshDict index 5812b7a7538f4aa18a1e33b53b487ae91bd2152d..a31c84ecfb1e22cb2643f0215850d24a68b41199 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/constant/dynamicMeshDict +++ b/tutorials/compressible/sonicDyMFoam/movingCone/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/constant/thermophysicalProperties b/tutorials/compressible/sonicDyMFoam/movingCone/constant/thermophysicalProperties index f8df11a0b07b52c762e3d0b4482a095132c23dc4..3f036e87cacf28bbcd2b4b85be1bd11430041acb 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/constant/thermophysicalProperties +++ b/tutorials/compressible/sonicDyMFoam/movingCone/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/constant/turbulenceProperties b/tutorials/compressible/sonicDyMFoam/movingCone/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/constant/turbulenceProperties +++ b/tutorials/compressible/sonicDyMFoam/movingCone/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/system/blockMeshDict b/tutorials/compressible/sonicDyMFoam/movingCone/system/blockMeshDict index b2019e2de583bb33d4e0b23d0d20abf355ed779c..c381a7e0b6bc8a67c944b1d9802da8900d609135 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/system/blockMeshDict +++ b/tutorials/compressible/sonicDyMFoam/movingCone/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/system/controlDict b/tutorials/compressible/sonicDyMFoam/movingCone/system/controlDict index e19c38f9f9a38b280c2c57e2fd97fe2393a176c7..48b554bf24c319eadefc0a845048ddd7c9ec9676 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/system/controlDict +++ b/tutorials/compressible/sonicDyMFoam/movingCone/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSchemes b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSchemes index e2000315e12b85b4b640f2868c060daeff5e4ff4..1dcfda5cb3a3be7fc2ce9ebe6b51208385cc054b 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSchemes +++ b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution index 96711c5b702018aee805ef1516b6e928f5da46d9..8708034c1d07386e5fa12a3e558aa1c1d2d15e92 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution +++ b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/T b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/T index a8dde89aa293a896a4b8c1d0bef9efa806f59d7a..018a2112cd69749e08f0efa7a3777d876ff05f3a 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/T +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/U b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/U index 2d3e90512150885ea4065ef8ac753b528118c221..dc946b41edd07cec3d326f5e6acb8be3fdda5bb1 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/U +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/alphat b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/alphat index 975ba6f7db6e3d5fb56371d5b41528e39049c6a3..08125cb34307a423b2cf8b9440b30c8502951590 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/alphat +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/epsilon b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/epsilon index 49b6e7002ac692b3ca616821d9075ca9bf6b33bf..48d998345878584c414ad59fa52226e78b302046 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/epsilon +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/include/initialConditions b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/include/initialConditions index 9e728461e20ac41cebfaafac43f594f56de75d8c..eb196c35b3b8c37610c76922d0c5427e62f3a3bf 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/include/initialConditions +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/k b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/k index 65788227bfb56c3778f5db0985859078e3c72540..8341eed2bbd30bed01fd2e38f1df831dfc36e2c9 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/k +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/nut b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/nut index 34d887d099105d0fbea598bc62f3a8e72b19698b..edba87e2cd8d7e734952cf4c36def7ae8c7e9e14 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/nut +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/p b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/p index 469862ece8c482636a3cb50e0678c8970d5feca5..e3f7449bdf12dd906bddd15246a88b64f508f5a7 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/p +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/thermophysicalProperties b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/thermophysicalProperties index a4e997c5d6ee07cc5a68c63eab4e4c77ea654fc0..0d2dc5895925095806f9bebecd5c1849c0919a46 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/thermophysicalProperties +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/turbulenceProperties b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/turbulenceProperties index 5b71db98437d0b4c72a4ac38ff670585bcb4e2c6..bcd74e3828f401a65ce58fd507ee4ebfba93550a 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/turbulenceProperties +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/controlDict b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/controlDict index 668c8c35c739e47124800d5bcfadf959945fcbc9..e16a4662099d2b054483e50ed8f1802973cf27ba 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/controlDict +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict index 622a0d6388661d6333fb1111c3ade67bc06bdb73..f4e1588ea2396ad771e986f184cc93316a7bd9eb 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSchemes b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSchemes index 0e6608574a8cd1de69180be9eb5aa0e732d1594b..f7fc8ecd7686ed38d2edf143066654b576c5dd52 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSchemes +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSolution b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSolution index 61fa9795e134c8d1b7133a0728385be2cc1fbbdf..dd42d0721065c1159d058776b61485ae14fe0f97 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSolution +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/T b/tutorials/compressible/sonicFoam/RAS/prism/0/T index bf4304e3d7fa67d442088ef159292a1ac95d8398..941ccc4fea990267c41d646e5b1ed7b74e6b6151 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/T +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/U b/tutorials/compressible/sonicFoam/RAS/prism/0/U index 011b9ddefef5876630c4ee2e0830fbb9b7de38cb..75c0c8d060a31dcbed29d58c3a155c263120319c 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/U +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/alphat b/tutorials/compressible/sonicFoam/RAS/prism/0/alphat index 87965226b1e3a13a66cb216c4cbf68edd6c56479..53502b9668276dce3b41b95c32fead1539c5da97 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/alphat +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/epsilon b/tutorials/compressible/sonicFoam/RAS/prism/0/epsilon index afb668d27e0f84e9331b9620701a26da5ad6d172..d212d8543e57f8e5eb2a686cfd1dcbaa7f74fb48 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/epsilon +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/k b/tutorials/compressible/sonicFoam/RAS/prism/0/k index 0cb14e68b061b85e8582a0996d6eeb71dca10215..c3ab89e380402ad08f628f3c2c5bff54ec54fdf3 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/k +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/nut b/tutorials/compressible/sonicFoam/RAS/prism/0/nut index 05ae08d2761476edc12384343efd1e2548b4950f..681fd14879050ea7574532491cc97d5d2bfb954e 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/nut +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/0/p b/tutorials/compressible/sonicFoam/RAS/prism/0/p index 045191334fd21b82c00f118b591e2c8a8039efb3..c2ff5c0e3520b4e378d39f4a810624d7ac278b9e 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/0/p +++ b/tutorials/compressible/sonicFoam/RAS/prism/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/constant/thermophysicalProperties b/tutorials/compressible/sonicFoam/RAS/prism/constant/thermophysicalProperties index a4e997c5d6ee07cc5a68c63eab4e4c77ea654fc0..0d2dc5895925095806f9bebecd5c1849c0919a46 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/constant/thermophysicalProperties +++ b/tutorials/compressible/sonicFoam/RAS/prism/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/constant/turbulenceProperties b/tutorials/compressible/sonicFoam/RAS/prism/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/constant/turbulenceProperties +++ b/tutorials/compressible/sonicFoam/RAS/prism/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/system/blockMeshDict b/tutorials/compressible/sonicFoam/RAS/prism/system/blockMeshDict index 458352653be925adb0cc6e37df0b0d125bd82117..0fbf53f003a704221e7c2b301d90bbd75ae38bcb 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/system/blockMeshDict +++ b/tutorials/compressible/sonicFoam/RAS/prism/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/system/controlDict b/tutorials/compressible/sonicFoam/RAS/prism/system/controlDict index 52ac4bc8ec94218f1d7b695d39137154d4930243..64e32e9bdd7feb94804dd636fb767b48b6ca7fb0 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/system/controlDict +++ b/tutorials/compressible/sonicFoam/RAS/prism/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/system/fvSchemes b/tutorials/compressible/sonicFoam/RAS/prism/system/fvSchemes index 944d564413549ec3a41cd84fa4c420cdd386e306..e0b080add5f7307332293ba658ad696fd93a5f49 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/system/fvSchemes +++ b/tutorials/compressible/sonicFoam/RAS/prism/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/RAS/prism/system/fvSolution b/tutorials/compressible/sonicFoam/RAS/prism/system/fvSolution index 29fb79e0f4b47aa26bb86371a6e7f6734c034804..6f6f399d1839a6407fb475911f9fb2c0a4618845 100644 --- a/tutorials/compressible/sonicFoam/RAS/prism/system/fvSolution +++ b/tutorials/compressible/sonicFoam/RAS/prism/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T index d166414456b2035c46220dd53dc6320ddddcbc24..db68cef39b821c7aad84b39a31369308fe950a13 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U index 74aa0be5c6eaa101bded546c2f11352718f6ded0..b59b5bc3b7b35e94808d329bc696d01b6473b653 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p index 10326d5a53aa616f972b3012d7b5d92b675d0b34..cd5b6f6493889bedcfdc801efec4d98004c214aa 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/thermophysicalProperties b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/thermophysicalProperties index 982a7082543400ededcb43d4500bf1c3b258e05b..a7569f12395f961ea05ca46df2c61aa4607240f2 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/thermophysicalProperties +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/turbulenceProperties b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/turbulenceProperties +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/blockMeshDict b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/blockMeshDict index e986a05a2611a54033939d3dc90f93ec5ab5ceba..9e71b37952454df9fbaa80dc835631e69d925400 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/blockMeshDict +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/controlDict b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/controlDict index d04bc3f3ccb5dbfde4eed02630ec5b852176a480..e7626b8c22ddb93d14668b0ab4e4e086eaf915ba 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/controlDict +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSchemes b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSchemes index 630164e5175b8db919bd4a85b65424718ba91962..90d894ea0c6c1a07e9974946e22aa3fef3a634d5 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSchemes +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSolution b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSolution index 8bd77582091266d775a5c5df40715ea8cf47322f..2ca9db8a49cb692fa69d63a3666714063434a9ab 100644 --- a/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSolution +++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/T b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/T index 930117e67e051ed246bbd5ffea7d8b0d44d27037..8cd06ff6c4de8f7ed4397079dd201dcd11765555 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/T +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/U b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/U index 5cec79ca9516b7d7d9fc21b0cd93385ca223d321..dd9b5ef845a095949c0b4acd3ebeabac41b903bf 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/U +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/p b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/p index b6711a18b2dc5034a549070eaddcca533f4b1d4c..c10233d5118804a6fbc7b73637806741c2778e01 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/p +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/thermophysicalProperties b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/thermophysicalProperties index b38f4328b6c3f4dba1f51e2d1bf432d978d9df6d..8dcbc57f52fbf17961dfacdd741e172b729146e6 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/thermophysicalProperties +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/turbulenceProperties b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/turbulenceProperties +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/blockMeshDict b/tutorials/compressible/sonicFoam/laminar/shockTube/system/blockMeshDict index 5244ef74d149f11f584b3b04c0847465907c34e3..9715bd90e047c090ec66ef9b66640d3656c188e9 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/blockMeshDict +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/controlDict b/tutorials/compressible/sonicFoam/laminar/shockTube/system/controlDict index e5ecae28dd2bcdb5c96493f01dcbac0969ebbfd8..dad6b130b19be37fd48e34686e282f01bed412cd 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/controlDict +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSchemes b/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSchemes index 73622eea971bca8c362dde67c8067036078fa519..3528d4f721808d2340e7f911adf5cdff656264cb 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSchemes +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSolution b/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSolution index ba927857b6ba7e4ca75e2cd88feba5bda12e2adc..2b879eb28c5e31a6bcd4a07fe1b62cb27d47aa80 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSolution +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/sample b/tutorials/compressible/sonicFoam/laminar/shockTube/system/sample index cedf70999b1c392a28d68edc86453b46d2587f9f..9d5e7a9e33e05fbf2dde15ea0b659192303b1926 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/sample +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/sample @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/system/setFieldsDict b/tutorials/compressible/sonicFoam/laminar/shockTube/system/setFieldsDict index 0596746f1a5d9d9c8051bd135545fece5387720b..11d5bd692e2dbd11248b155cf99e476b431b8d45 100644 --- a/tutorials/compressible/sonicFoam/laminar/shockTube/system/setFieldsDict +++ b/tutorials/compressible/sonicFoam/laminar/shockTube/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U index 818478dbe03b0d92807727fe2bac9d5cf26f38d1..d493e1c77081c4763d81f93d36dacf36bcb1266e 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p index dd84923f8c0e813aeab1b9cf9e62cb29da826bb2..e9f7fc161e1576161b38850c87427e57e992d7b9 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/thermodynamicProperties b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/thermodynamicProperties index af691047fd8e1eac935af8bc4bd42fc2148def19..2cfac82f56dca31faaba71d7520ba055847bedd5 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/thermodynamicProperties +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/thermodynamicProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/transportProperties b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/transportProperties index b2a3544b63b1554a0f395d9356984f55eaf113f5..69cfe943a28f7362bda39677f82880978428ee98 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/transportProperties +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/blockMeshDict b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/blockMeshDict index 1b968be5a82885a66eb1b20b4f4abfc95c50e794..9c61388b2aa3b105079eaf584584d345a7bc9750 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/blockMeshDict +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/controlDict b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/controlDict index 7fccb1cbab08d753946e888e2e5ade458375f236..fdd5ea156c7e14eb646afc4767904a6d8bc02729 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/controlDict +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSchemes b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSchemes index 25b17f172e196256616ab2127d0047e195b0b70c..c82201c34deb4a93789c6635c6bd6e7b89c0beca 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSchemes +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSolution b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSolution index efabe31ddafcf65214e8ebb0668a3fa11fed246c..0b4657ee0caec93fe8cb436ab9f153b3dc5a091d 100644 --- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSolution +++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryT b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryT index 2f217ef8ce9bcd68d5c0ec44794825f6d10a0882..70e01df9378e6835a86a72dcb8943a2ec4d95d36 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryT +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryT @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryU b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryU index 785c1c6b7b35fd2b0253ce6bfbe73078bd27f604..4edf0c9b43a8447c7c9db926de627705b5881990 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryU +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/boundaryU @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/dsmcRhoN index 1a54d776ac8fe4ebb9de570203461683298f0f3a..f466b598445e2872fe452d8ca91cf52f45ee88f2 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/dsmcRhoN +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/dsmcRhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/fD b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/fD index 28ff482d75acff87cf8f43dfbe4c352ad0240879..0759c544e15abcb827797bad26d140f521f8546b 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/fD +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/fD @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/iDof b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/iDof index 0a45a4725c90c86c72b5b6b1d0472ca053e0fbf9..ef6445308cd848e4272a62ae57ac25768295eb62 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/iDof +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/iDof @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/internalE b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/internalE index 786581d7a1c59f286b1e1b184594d9599d316e7e..92a33b16f60245f0a9f33d4a4fc3773cacc8a197 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/internalE +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/internalE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/linearKE b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/linearKE index 62c7f558bf1946dd59bce79543bfa336a9854cad..7200b0fc48c2272546160e8a59487c4c6217e13b 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/linearKE +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/linearKE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/momentum b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/momentum index 5d7497fd30648ea7926af1b52220a02333d5313a..2243a09b9963b41f56e0aa2b13feb793b781ba64 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/momentum +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/momentum @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/q b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/q index c16b03046bb4619842ae8f19845dcd6c1a71e6d5..8bf8b877ff7effae01bfb18528552e4dfc84dd67 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/q +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoM b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoM index ac7ff3a7b2f55938dcd50cd8b87a1bd2c5d67143..bb05f6cb594857bb08bd8dcfbf2991773d65c500 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoM +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoM @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoN b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoN index 72381bd3604e498d8bdfa5e829006572b0836a3f..f6e33c20c4285fe432ec4ba8901cfee1130b652c 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoN +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0.orig/rhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/dsmcProperties b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/dsmcProperties index 9860d3e124a0c25c3b88f71d897daf4a3b939038..d3c427962ac04a87731e387d4b296e0ba727d631 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/dsmcProperties +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/dsmcProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/blockMeshDict index 367f99d62ac2a95320cf717416231d65a891347c..9acf24266e51fe0c42a415057fb579ea306a8202 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/blockMeshDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/controlDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/controlDict index 81e479f0ec3fd5d80e1695bf30ea34e86a026038..3e3301364871d1e4b0b2e7c85cf0247851b0378b 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/controlDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict index 3150c74d815b9d507c901f4f2fe7f465e98844de..fd330a30f1e91ed83e2c6918b52c78ca1385252c 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/dsmcInitialiseDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/dsmcInitialiseDict index a3e1cf22d4ee8664f4e9eb18f6d78dd3b519968d..94b88e24ee2deca2c5fdf2f1318369906ef88fda 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/dsmcInitialiseDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/dsmcInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSchemes b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSchemes +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSolution b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSolution +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryT b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryT index 25432c528b4bd3375403e8738b5a4ee22362d702..b8bc4aa528a5b3a9a7c50fca61a8b236596361d4 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryT +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryT @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryU b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryU index ca3e062b0228955440d4af817225b6dc4adfcde2..214086f374468df4f581cb4b82d7bdbe83b0eae6 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryU +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/boundaryU @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/dsmcRhoN index f07140ff807d29fbb07c2dcf5f36a81294e38bbf..6189ab5799113483e7390314a2a35519f1861658 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/dsmcRhoN +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/dsmcRhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/fD b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/fD index c20d008add16137609323d08e62468d2cdc9bb22..799d1bc1547505e00719cc146425257604cd548d 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/fD +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/fD @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/iDof b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/iDof index 4a03f282487a0b966bcfd35c8ec227e2d8f89d20..9dad1fcf815868f2743c2d8a4a30fa926c150853 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/iDof +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/iDof @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/internalE b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/internalE index 693d5cef8f590fc2e4de3a9eba73c7345db6ee38..1d51359fc35d219540193609cf923164efb3b988 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/internalE +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/internalE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/linearKE b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/linearKE index 633b17e9d3ce004646037298ddf528b7c1f9e714..b61a54995e04813140356bf1924c638866b540e8 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/linearKE +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/linearKE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/momentum b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/momentum index 2194bda17c8cffacd8a9101c4cf23e82e6b0a987..1375a62fe21a9ddeb103b857394127a58cc5fee8 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/momentum +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/momentum @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/q b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/q index 12a431a1beae8f16a58362ba2293041f8efc9d0d..0e0a44f32ae2b8be2de86166d433d430a5f3b21e 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/q +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoM b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoM index 7608aec065c2aedfce34097cacde6eea47863780..3d32803233aa5f84c7406d48ec65102a14829217 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoM +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoM @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoN b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoN index f8fda307697ad4c31b04a319589c4671e7b9388a..7425108a3af7b32de87d7b3523dfa64ede03ba0d 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoN +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0.orig/rhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/dsmcProperties b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/dsmcProperties index e745044af2beb1e72ed2cdb0016245ca9fbd49ec..0ff7fef9d14a73ff9061949e1bfa1869f9343c47 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/dsmcProperties +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/dsmcProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/blockMeshDict index 50b715f051df99c4670d2e5d91f99b9a7b1cb952..34b07ee54d12bad8bc89ef5f1db29bb3c586f1ff 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/blockMeshDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/controlDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/controlDict index da437e086ce6937585f5061fd7143b2bc46845c2..c47418cf62e91d9582751f3e572e81661ff5be71 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/controlDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict index 3150c74d815b9d507c901f4f2fe7f465e98844de..fd330a30f1e91ed83e2c6918b52c78ca1385252c 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/dsmcInitialiseDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/dsmcInitialiseDict index aa18120669bf6d164edf549480228fb40ba0911c..2f0ad73749ec03610b24d7108dc0fd30ee352617 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/dsmcInitialiseDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/dsmcInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSchemes b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSchemes +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSolution b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSolution +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryT b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryT index 998992c88ded6061412ad2f560b3b30db1240d8e..b125728ea66bf10a3ffedf9e79f4b10798dac36e 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryT +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryT @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryU b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryU index 7de352a19d8aa4e85e3f36945351c87dc41e07d7..a220d06fd7a1c1620a5a7cd10ea0500af8e54813 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryU +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/boundaryU @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/dsmcRhoN index f5fad981080ccf2f94f7eefcbe1bba62ae6973b6..82f50b9610f8da3341c8ced5d4ad8451335f6494 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/dsmcRhoN +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/dsmcRhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/fD b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/fD index fb5fdf44f9503f9b7023281c74b87bcf49e83803..8d3671f5bb26724e9ecc049536ca57f8536ddb7c 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/fD +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/fD @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/iDof b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/iDof index 4d0d1dfdf38588db1654ba1cc993475cb5455200..edd87e7f9f4c49fc05db383025565f33f8f1cbc6 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/iDof +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/iDof @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/internalE b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/internalE index 9a16afad9404eb7ed9b60730ccddb8886e68aa6c..71c7e566eb1dc0a71eb2984b25cdbb1031c26331 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/internalE +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/internalE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/linearKE b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/linearKE index b20d224cec94700f5acd556f31559e8ab8cafbed..f7e2fb6691bfcbaabe41138ae45950b13922fbc0 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/linearKE +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/linearKE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/momentum b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/momentum index f10e6feb39305c2a9258bc2618e2daf715757f8a..238b9da7057e8ffdebaea0f6448bf133fe97025f 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/momentum +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/momentum @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/q b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/q index b400db0ddb1c581eed86cb12346659710c996f98..3040f257c916f7b63381ce7ed2cd1d79589a1307 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/q +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoM b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoM index 991cf0c1afed96708444a05ee319412ee9742a4d..e69618e5cc2058fbb58c4a2d88f3b1a660972a19 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoM +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoM @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoN b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoN index 5133490c07060ca776e09ebbd200fdbc571c882c..581ba1854537cf00f0a44f3f6c5c3cc85c73ee13 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoN +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0.orig/rhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/dsmcProperties b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/dsmcProperties index 2bb4c8ab7ac40df8a7045858dcdcdf70f970e678..4ef54a1168c03a59b7d87532b9708f680c62fb3d 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/dsmcProperties +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/dsmcProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/blockMeshDict index e38b0be7b50ac7adb6532b826cedf45acfce8d06..b34e2fda53cf8190d9ac1121867311086a1a575b 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/blockMeshDict +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/controlDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/controlDict index 1b9ac9753498944d012f584b59813f69318e3760..7ffde222115cde649d913592aede6b9c7c0cc483 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/controlDict +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict index 70834d1dae41e507abf53028e5218687db1e1eec..008c06e60c70023caebe76b04ae44402c64bdb54 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/dsmcInitialiseDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/dsmcInitialiseDict index 453555fdaa61a5eedf631c90bc6e3677fb147430..af312b1dad01a3c9d30ad1671e994ffc3886d4b6 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/dsmcInitialiseDict +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/dsmcInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSchemes b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSchemes +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSolution b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSolution +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryT b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryT index ab6aced5f965ff73fdf2ea419569ef0f2aa039e2..48fa6650af361c500f846edec717779c525fac2f 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryT +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryT @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryU b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryU index e987c6bbdfe69703377035db2a84a6136e15caad..72aceb1482c6774a1903deeb14a1748fec69cf52 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryU +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/boundaryU @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/dsmcRhoN index 618d0f2508135b12e2f89ed1fb96c169d6624e76..996ba211bf57991f6197732fcd80b86935f13835 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/dsmcRhoN +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/dsmcRhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/fD b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/fD index 04242058efba4e83e1a6fde73fad9045b488a143..6f14e08b30b2a275d25038b44e79264b47c977af 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/fD +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/fD @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/iDof b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/iDof index 82f8f27755e99132d213397944c7c5feeed1cefa..101e58d0ea243bbe2f40969e600b75d020686e30 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/iDof +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/iDof @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/internalE b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/internalE index 28f2c61abb264f64e3922bb7c831f958e78403b2..91e21651eecb3df7a0c82a2184fa6e130852c37b 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/internalE +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/internalE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/linearKE b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/linearKE index 9b561c105232d408ce8a772dacbb52441614b92d..918d509572fc89be0db9d607f82ee82775d9dae4 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/linearKE +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/linearKE @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/momentum b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/momentum index 6c9f262b42b08feb7c7b113f13c53359256bdf0f..351cd35b3a4aaaa7e4ab2c81efb4d36a88e3e9dc 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/momentum +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/momentum @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/q b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/q index 88d2a02878a2cdc509f47d8d2d6a247a8b1902b7..2a949d77257f01917a70bfa867f65a2bbe4e28ee 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/q +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoM b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoM index fc21b7aa4da3a16ae66669a4ca6418c39deda390..2f654dcbc9ac939f8764160858d009abda7cd63e 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoM +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoM @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoN b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoN index 44894d8e793c9e13dc7bc3c33fcee4e941b9bee6..812a92706f5e8c1cfc719dfedb452b5d2bb0f84f 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoN +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0.orig/rhoN @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/dsmcProperties b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/dsmcProperties index cab0835d8cc56fb4e5026bde381bc4756731dc92..305d4a79c9a33b37c62766d6a20e3665198d891d 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/dsmcProperties +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/dsmcProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/blockMeshDict index d31a8bc1990e582b72e2b54719301abf262e31a9..f88ab403101ccfeac1e26ba9bdb5ba4af1e6d7a2 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/blockMeshDict +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/controlDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/controlDict index 0a947ba0910b4cfe61784335efcd179008e7c670..ba502675ac63474e2454b5bca51e4f6bedcc897d 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/controlDict +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict index 70834d1dae41e507abf53028e5218687db1e1eec..008c06e60c70023caebe76b04ae44402c64bdb54 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/dsmcInitialiseDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/dsmcInitialiseDict index 4e9e46aae30d7de2d380ed996e9d45dc9c5b8595..2f0ec27650b6c1c79dc7f0dbc19c736b23d7e43a 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/dsmcInitialiseDict +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/dsmcInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSchemes b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSchemes +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSolution b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSolution +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0.orig/U b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0.orig/U index 6ab4e59d46c8dc3c53216fa880637ae818b6c082..c24658b8e7a6ff1fed1a0b83710781582e4c5349 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0.orig/U +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties index 3c610f6536b575f3f644aedf592dccf0b408709c..668a6812604b070b72d52e80d818f96901b92769 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/blockMeshDict index b75963f93b30983b546b307192daed1d2ab5dfc0..afc4e731808ef0b1ad01088410dfc747f4895670 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/blockMeshDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict index 3eb1497a34d20abb99e07c8d5f2a2b0824acd4eb..f0a29f24110e8199bed576f87a9b571b599fd5e8 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSchemes b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSchemes +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSolution b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSolution +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict index c2a00c7f929f14433cb797a1ec9ecc3ff2a22473..d2e21f470fbad456dbfa737d09727c1e7ffc5ddd 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict index 8207058a301864b4cb19578903f025bd38840321..f7e5f6c4fb0d4aaaf8e7dfb5a9667082be082747 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict index 47beb3801ff10bd53e95d1b03e6b040d5d7ceb14..bb400b93e13823fa3788283b5a5e7f930b023b03 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | n| \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0.orig/U b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0.orig/U index 6ab4e59d46c8dc3c53216fa880637ae818b6c082..c24658b8e7a6ff1fed1a0b83710781582e4c5349 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0.orig/U +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties index cc34a419f6064d04b805cc0926352fc5ab31db8c..cd149c44b66a8a2831f4a5929bdd06849d55fd39 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/blockMeshDict index da9b951880e6ca440c01226b6f4b910f28dbb537..5546f44ca739fc2357fa6941dbdb86253b0c7d41 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/blockMeshDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict index 5b6557c2518f1948ce4b4389b57d6123e2a74e4d..1b949e26c66b4c88041d7a49db563a5c276f543d 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSchemes b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSchemes +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSolution b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSolution +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict index 15e196598dd6808fb54349141183e0d9205b1fc6..603a076d856ec54e01cdfd30e49cfdb3274932a0 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict index 7e3f336abb21ca94c5ba4e134421a006bf8a04c5..1e6d389bdddd30c159f529d42ff3f17b4f18839c 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict index 8bb3354b9b63a29c4e7918885f934201d24bd5a1..176949a13ef339cb1c000fec8d921999f7a0da37 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0.orig/U b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0.orig/U index d910eb3ef2819fbf96d4196ae97f4e22655bf813..e95205a80e187b0243d595c4cfacbf674e135e69 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0.orig/U +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties index d8b3579b145cc950c6a23b16b6e1dbbb4d9f7127..cde01261e01c33535f9c67766df88492cc2689f8 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/blockMeshDict index 680686d1d2ed46857131de24a85814e143f7565e..7191254e1dd471a32d0ca6a03281966842eeaf3e 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/blockMeshDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict index 82d4f1938123158e2656eb8a06f2a3f14fce3aeb..320c35050c7c422ef8b99fcf2d461e1bccadb7df 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict index 561fcd45f50ac7cc3c718cade7b275ef2b6499a2..19b90dd0888473dc6fb542ae5364fc52867dd22c 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSchemes b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSchemes +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSolution b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSolution index 68bb8662321d0c4abc8f4b4f0388d008c7a666eb..c89b4c70181b9c46cda8e2e104927bd749728cd2 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSolution +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict index 15e196598dd6808fb54349141183e0d9205b1fc6..603a076d856ec54e01cdfd30e49cfdb3274932a0 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict index d7ea0b79665a83d03083d7349373a50576bcaa49..70a3b2c0aacf5e09be6cda9081c4a9492efa60a7 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict index 8bb3354b9b63a29c4e7918885f934201d24bd5a1..176949a13ef339cb1c000fec8d921999f7a0da37 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi index e8b8643aa95c91ee79c6639a752da165315714a3..0d09ec4822cb9409733daee9d0c7d8a4de533f0d 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho index a5e7f7df9c9357deb5bf4caab3ab56f5891dedf7..dfde9dcf329a55ffab75eab9f0f20b7ca1badab5 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/physicalProperties b/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/physicalProperties index abd0a0c011250b5490deb3d42e0c31d4119c4218..ae7f7e6e81045bd42d0686b8a512db4590cc631d 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/physicalProperties +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/physicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/blockMeshDict b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/blockMeshDict index e860d20de30e65350680581dcc67999dcfb9d39b..662589c4a18df20fa4b42f1f42a9e8b6d77a26b8 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/blockMeshDict +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/controlDict b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/controlDict index c35a253d7f6e6eb79e704c857844f52b21b514a3..5d6c90e742857725e7ca343722ef44249f3a2283 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/controlDict +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSchemes b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSchemes index 7c6c875f129c7109c1c404db53a1cbce3f4cf4d1..1e15b08c3eb4e28f62488c880c8320a463d924f7 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSchemes +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSolution b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSolution index caa1f23247af718f67d3894fdd749261511768d2..d0e9daf0648ee49c32109678c99dc303e7895c82 100644 --- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSolution +++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/B b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/B index a114cc48a875214c09b99e6d16e36efb6d0a391f..1e3322f7041d0c032da58c8b8ec400a97e6134cb 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/B +++ b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/B @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/U b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/U index 090ee4c24b0fc8cb9ccd032d415fa236879b5f05..f883de6b877e82715cb4235a38ac561c810937b2 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/U +++ b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/p b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/p index 3fa491e2e1cca87869380914fc8de9dd01c38a15..bcd8d9ee2ecaf18da321aa0db70dc2878c8b55b1 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/p +++ b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/pB b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/pB index 735f5e69ef5af15360cc74420beb6d0333dfd88e..127e6b2321c1054f4d37fa273853e9bd0b15ead3 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/pB +++ b/tutorials/electromagnetics/mhdFoam/hartmann/0.orig/pB @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/constant/transportProperties b/tutorials/electromagnetics/mhdFoam/hartmann/constant/transportProperties index d48b0ebbee0d48fcf4d11e4d0b9b5b0df05066dc..72036be7c70fac981a3c026c4faeeca697b346cb 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/constant/transportProperties +++ b/tutorials/electromagnetics/mhdFoam/hartmann/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/blockMeshDict b/tutorials/electromagnetics/mhdFoam/hartmann/system/blockMeshDict index 4c6aa8a9885b908167600f6d5b6b171debd16a96..37027b0f665f7ff3a3e27d8d0774a269a8ef1b86 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/blockMeshDict +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/controlDict b/tutorials/electromagnetics/mhdFoam/hartmann/system/controlDict index 1aacf12753d530c2604b4084862adbcbe49cdab6..af9db3c0d6be7f0e03d4b5817703b1e197ab5c14 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/controlDict +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/decomposeParDict b/tutorials/electromagnetics/mhdFoam/hartmann/system/decomposeParDict index 544dbe81028c0178f94d1342727a3ded325c162d..94029c5db3a254583493034d00dff25696477b33 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/decomposeParDict +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSchemes b/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSchemes index 103175e1cc514a537932208d9654a3266b659a01..54f240e73484d8422e777425170cc3f50880e27b 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSchemes +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSolution b/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSolution index f43d8ab23b9ac875bb394859529a316ea9c2e705..00b27f262110cf52c0367f2be5046eed2c212694 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSolution +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/system/sample b/tutorials/electromagnetics/mhdFoam/hartmann/system/sample index cb3025d14fe376bd2ebedc58254e621c5681f746..5ff615d92cb3ec62df3edd5fec1faa28d4ce50df 100644 --- a/tutorials/electromagnetics/mhdFoam/hartmann/system/sample +++ b/tutorials/electromagnetics/mhdFoam/hartmann/system/sample @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/0/V b/tutorials/financial/financialFoam/europeanCall/0/V index 685d9d50a5f6227005a25bc2d4c6dbb0db31c779..8e0c5bf1607b8e18f13c54c4deff2189042a8e2d 100644 --- a/tutorials/financial/financialFoam/europeanCall/0/V +++ b/tutorials/financial/financialFoam/europeanCall/0/V @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/constant/financialProperties b/tutorials/financial/financialFoam/europeanCall/constant/financialProperties index 81f5e49e6a9842b880aacb8392daa777c644fa8d..a34dbf68731802cd6013af14daa0f0f0f4d70c1e 100644 --- a/tutorials/financial/financialFoam/europeanCall/constant/financialProperties +++ b/tutorials/financial/financialFoam/europeanCall/constant/financialProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/system/blockMeshDict b/tutorials/financial/financialFoam/europeanCall/system/blockMeshDict index 4cfc9316db6df33933b84544aa2194cd26714fcd..5995687af8786c0fb0f6d06598bbea6da593ffca 100644 --- a/tutorials/financial/financialFoam/europeanCall/system/blockMeshDict +++ b/tutorials/financial/financialFoam/europeanCall/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/system/controlDict b/tutorials/financial/financialFoam/europeanCall/system/controlDict index 7ddde0e9784ec18c9d30de8b7411edc4f163ee9e..ca8b8e2a92e6d026e5ff38219e9dccbf34c954d4 100644 --- a/tutorials/financial/financialFoam/europeanCall/system/controlDict +++ b/tutorials/financial/financialFoam/europeanCall/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/system/fvSchemes b/tutorials/financial/financialFoam/europeanCall/system/fvSchemes index 8216a798ba75512d955bc44ae8a164c7ec51120f..8f185001abb3ad9cf846fc606b56171291c65eb6 100644 --- a/tutorials/financial/financialFoam/europeanCall/system/fvSchemes +++ b/tutorials/financial/financialFoam/europeanCall/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/financial/financialFoam/europeanCall/system/fvSolution b/tutorials/financial/financialFoam/europeanCall/system/fvSolution index 4a2df044afe5ddb72522564575e85459a3d03d3d..04c7bfed4307a45b3f306eaee78f3dee5bb8d0bd 100644 --- a/tutorials/financial/financialFoam/europeanCall/system/fvSolution +++ b/tutorials/financial/financialFoam/europeanCall/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/Us b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/Us similarity index 94% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/Us rename to tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/Us index d7f484828351f2f520cd28952596a2766895a32c..098e0fca919a8b51f2ea0098e5e50f3fd6fb9c7b 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/Us +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/Us @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/h b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/h similarity index 95% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/h rename to tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/h index 48576e71ceb2ce63688884d366346b3c15fcc065..60833022ef3633a1a19206345512dfc326e86626 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/h +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/h @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/manningField b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/manningField similarity index 94% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/manningField rename to tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/manningField index 55cef4d953fb24de052a47a909db90574b13f7f4..98d1263d43a39876522db6194eed0096921b7518 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/manningField +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/0.orig/finite-area/manningField @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/g b/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/g index fde8eac06226ac2e7353b875884ae79558a745e2..d817a70fa72dfe17be46b6fb740749e17199d574 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/g +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/transportProperties b/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/transportProperties index 66d715c4afe03414c6c09e2d685243ae3e86400d..f358f3e673bcdcb84d6ef8538ed3cf8cba7bcf7a 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/transportProperties +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict index cdabea0eaea8df3eb62b329e0af3b3854f0eef84..a0fcc0b529cc47ccf58faf567d85d94d1d872cc4 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/controlDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/controlDict index 2d99c6ff4b39c619f1daafc384d0842c5c23d899..70074e2c4af941e8eab61c7aad5dcad49090fea4 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/controlDict +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict index bc4a47e304671a6b18199f7aa30d993870adc78e..e69ee975cf4f9e3a89f377daf9c38b56ce2651a8 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faMeshDefinition b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faMeshDefinition similarity index 95% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/system/faMeshDefinition rename to tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faMeshDefinition index 39d31dfbef71471f687baeb864aa220b3d2de20c..7ff8456fa8f4be9d8fb371fc9dd9bec9d0924d17 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faMeshDefinition +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faMeshDefinition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSchemes b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSchemes similarity index 95% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSchemes rename to tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSchemes index 95e21e29f8bdce5e08eb7e189c66ed70925393b0..7a9fd9a11bc061d6ce5365932599aabaecad0832 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSchemes +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSolution b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSolution similarity index 94% rename from tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSolution rename to tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSolution index 7de263307abcc68d3acd18b47fe59007480364c1..7c5251ba5e8cf31b3c1287c1ff62b2734a9301d0 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/faSolution +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSchemes b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSchemes index 68cd470a100ae45c79777122010e5f23d555ab31..c6ea61106dd38c69b2acc2cb1afb0926bf422803 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSchemes +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSolution b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSolution index 2ede5a9ce0b57cd05eab53e303f6aef1106ff96a..2999073b91ebce15d75792e9bd64bd252e102e77 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSolution +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/setFieldsDict b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/setFieldsDict index a4487c0a562c41a2369dda02b9c790728fa8af7e..450ef1ebfba6bbcd2aaf27b161fc468e4182bc6e 100644 --- a/tutorials/finiteArea/liquidFilmFoam/cylinder/system/setFieldsDict +++ b/tutorials/finiteArea/liquidFilmFoam/cylinder/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cvf b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cvf index 025410c7e8d06f62219938715201e2122d66f699..9e3a2ba358b550023f53ed348f685d65aa7c18ac 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cvf +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cvf @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/U b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/U index 1a5759e49886831bff819a339ab07bfb349df8cc..e6e971eefe92e5ccdf0c81bdfa6709bb6b24cbe6 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/U +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cs b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/finite-area/Cs similarity index 93% rename from tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cs rename to tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/finite-area/Cs index 4a6799eed1233198d554238cbadb375c135a85de..535f66973c911ff0bc903b8352daf32692c8417c 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/Cs +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/0.orig/finite-area/Cs @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/controlDict b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/controlDict index 973f45d4aecc51bfc58da3893eaf3c30c1628563..ca9fd48c77ecb58749d77f80d88ce2fcb80c430c 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/controlDict +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/decomposeParDict b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/decomposeParDict index dcd535f37e02b40f72069cc0d91e19b592ac49de..931b9486dea8492a68e8dad822972eb919b2e9e2 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/decomposeParDict +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faMeshDefinition b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faMeshDefinition similarity index 92% rename from tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faMeshDefinition rename to tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faMeshDefinition index 50f201424ab17099c1e41d81ff7709f83f13bb96..11cac70128de99e3cff9f98836154213463429a1 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faMeshDefinition +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faMeshDefinition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSchemes b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSchemes similarity index 94% rename from tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSchemes rename to tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSchemes index a0eb8f33576cad91116b8c6a74f4a302dc2f818e..3a520e601342d072cd0ce54286b109b4a939b664 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSchemes +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSolution b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSolution similarity index 95% rename from tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSolution rename to tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSolution index bf8f5ef55319f6182e5cb23244458e10413cee3c..32f6be3b2ad7a3788578c02e2cdd713c7929ee8e 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/faSolution +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSchemes b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSchemes +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSolution b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSolution index 2ede5a9ce0b57cd05eab53e303f6aef1106ff96a..2999073b91ebce15d75792e9bd64bd252e102e77 100644 --- a/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSolution +++ b/tutorials/finiteArea/sphereSurfactantFoam/sphereTransport/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Cs b/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Cs similarity index 95% rename from tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Cs rename to tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Cs index 2803148c2dd67d65c013f31458abd0dab950089e..c00ec687608b9c2966bcec2df8991e3aab7b269c 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Cs +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Cs @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Us b/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Us similarity index 94% rename from tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Us rename to tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Us index 0ca5f59e42bc2c5547c012dc6de08276eb8b7430..5c17e2517c0c8edfcbf37143278577196878624f 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/Us +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/0.orig/finite-area/Us @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/constant/transportProperties b/tutorials/finiteArea/surfactantFoam/planeTransport/constant/transportProperties index fa6afe2bf3865e54e396fcc994e4630a74d6309e..8598004e96a08ab40eefe6cc849ad361b4c7a8bb 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/constant/transportProperties +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/blockMeshDict b/tutorials/finiteArea/surfactantFoam/planeTransport/system/blockMeshDict index a7b2e47624eca90e4ffb71ca4699de769c4934bf..648b2d231d331a61f09bd46b35a6f60c3808e1f7 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/blockMeshDict +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/controlDict b/tutorials/finiteArea/surfactantFoam/planeTransport/system/controlDict index 2693ec9dfe34b46d95080ff90f421e6383f1763b..188987b2af7f15ba3ed72c59d711013d20783a21 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/controlDict +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict index bc4a47e304671a6b18199f7aa30d993870adc78e..e69ee975cf4f9e3a89f377daf9c38b56ce2651a8 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary4 b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary4 index 966a3afa8ef90615a9eee9fe3f0c0c0d15c840dd..3ea9c518a9e0d087f118c24bc49d7f1d1e84a3a1 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary4 +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary8 b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary8 index dda933e10c34182f4d843289ba5d7b87d918cf14..ce8ecaa3a7af86bee304bb19465cce04ce0c27b1 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary8 +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/decomposeParDict-procBoundary8 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faMeshDefinition b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faMeshDefinition similarity index 94% rename from tutorials/finiteArea/surfactantFoam/planeTransport/system/faMeshDefinition rename to tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faMeshDefinition index 79f6645b5a1dca012692548af33f757459268502..d3ca29a273bbaa2f2e752ecad7b2bc9768ebcbaf 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faMeshDefinition +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faMeshDefinition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faSchemes b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSchemes similarity index 94% rename from tutorials/finiteArea/surfactantFoam/planeTransport/system/faSchemes rename to tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSchemes index d8a0dcbd4d4580db0f4bed3ed5856f6b3bcd0212..e2e966ed1dec2bc1130a98f56e702bbd8b3284ff 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faSchemes +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faSolution b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSolution similarity index 95% rename from tutorials/finiteArea/surfactantFoam/planeTransport/system/faSolution rename to tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSolution index ffaea2af38e46e5e24b93edb7a25e19ea7564aa5..8ca7e76e0d0dc7d8c89a2261f35f670f1a7ddc1b 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/faSolution +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSchemes b/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSchemes +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSolution b/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSolution index 2ede5a9ce0b57cd05eab53e303f6aef1106ff96a..2999073b91ebce15d75792e9bd64bd252e102e77 100644 --- a/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSolution +++ b/tutorials/finiteArea/surfactantFoam/planeTransport/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/T b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/T index 698a7971f1f16d5c842d2acec695203d6948b9d6..d787f021fd4d0aa42c7c457d3b5803b1ce5902af 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/T +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/U b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/U index 1e28fedd728f502f85f50443eb99bd5697305169..6512c99fbee20d1cd0924b629fc5df3343b2c25f 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/U +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/alphat b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/alphat index 012be038aa06d19353fb2b599564815edb46d39d..ce9a39d943afc74c3993660f6f58228eb5234864 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/alphat +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/epsilon b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/epsilon index e11e902fe68f00146e0a20f02991b080ad58db7e..a78de1967c48c1b989c77235b91ed3edcc9faf9f 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/epsilon +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/k b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/k index 5a7666008f90308ee56ca777362a20c2088d617e..73120c17cadc73c689f7f05e9f5431fd9042ec19 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/k +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/nut b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/nut index 9bf96bca83b7c1c3cd33de7dad4564ae85b9e334..fedf579fa7d1cf8234bbbda8a8ff74ca290b4968 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/nut +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p index 4d570a7c256a75248d211e05c33c6c35b122d6b6..35e2ecaa82b34f9afa8e9430b85bf45c528513d5 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p_rgh b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p_rgh index 52133296efc8b8effcc72285b5ea0ceaf60a3119..972e069f90069ddc814072d65ae41b8d5d04fb77 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p_rgh +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/0/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/g b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/g +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/transportProperties index 37998e71b589e2f30bbbe070b4ca15ff36044b35..bc690c10da758d36101976a01d6eb229cdde5a44 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/transportProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/turbulenceProperties index ce62e974c9dcb8c8366bea2f2163e0107990e30a..319be23a0b498a21fc37fc8721396b1563cf181f 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/blockMeshDict index 7dbb572bc9fca5e68832837df2ea030b3a23658d..b2a70bee3b603e77c17a20d0816909d7367b24d1 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/controlDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/controlDict index 421266c5a91f7c75c194d3b8616329c4697b66dd..db07dfe0710e202b890aa11fc9b7a3d92d897a2d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/controlDict +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSchemes index 9b07612cfd0ae1cc55d7206d83860ec6e1df406e..09313c3083c71c44eb468bdb5b79bf7a6140559b 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSolution index c350c3c806bb96fa82c0320c6bf539a3e59d3991..a52fef4cdcc9cd518e9570b807291f7e09e69d69 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/BenardCells/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/T b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/T index bb9d4600adb841a7e1354a57dfa50ad2fc360a39..baaffd6060210e919992d5d3cf34bed58bbf51a7 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/T +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/U b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/U index 81d74ec4eb10bcaa0f7605dc84c9884791f80c5d..6a8969c6408e1244a47148ee90de0e635cd83698 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/U +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/alphat b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/alphat index cbed0c14c1cbcf9ec7b53d4cddd493c333cc4e31..a2a0a3a513d1b1a664aa999ba0769f1ff1379eb8 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/epsilon b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/epsilon index 09f3bd40587ab6a9107dff1272884a27fd216d45..95486e7d426c53d82413c9bcaef0c7e76e9e5d2a 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/k b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/k index 63cb882c334122f768e5ada947fa93ba68d68ea9..6f55263e31f00f25cbe095db9b4be030fc4ac56d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/k +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/nut b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/nut index 6ec19f25282164a302d641e1159ba47256b3dec2..0bd05b48a139559b3dc3d7c77630327c49147748 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/nut +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p index c8e88fb1f8cb489dd35a3fb8ec0b7ae178e1e370..b786ce5d602ae5b53640d59b494ebbff1b337ae4 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p_rgh b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p_rgh index 850ee86a2445d91589387b0a6fbbd134d6131a96..48ea1951cb96c02181851788a861eca463dd8354 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/g b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/g +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties index f6657b38076c4e5584025347dc0d14cfab82df39..96bbb22fc0cb71d755a408ec9157d8af3e8f58d3 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/blockMeshDict index 573b5451a4c4ae3aad567b04719482476fe868cf..debf2d67d9ba8f75a02cb258b4528be77d0c77da 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/controlDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/controlDict index 6d73f78e9f956b8971cc45de27a0efa06da49c3e..c068b20b42b99281e05f51cd9d814081e40fd1cf 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/controlDict +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSchemes index 2fc32cbd0e35e6380126c463ed75d28df6fb86cb..315d7d62b91ea6df3708e63e1c64e0991902a34e 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution index 0dffe983b2fa1a92d874dc4dff20cfe1e7091bd5..07fdb1a8d78531daed9f9e9b7c713267e2db34ef 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/setFieldsDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/setFieldsDict index 004d3a6b78a0f7f02041c895a195601fbc231fc7..1bad561329dba7565ad8c3cbfa66b023e32a4fbe 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/setFieldsDict +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/T b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/T index bb9d4600adb841a7e1354a57dfa50ad2fc360a39..baaffd6060210e919992d5d3cf34bed58bbf51a7 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/T +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/U b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/U index 81d74ec4eb10bcaa0f7605dc84c9884791f80c5d..6a8969c6408e1244a47148ee90de0e635cd83698 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/U +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/alphat b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/alphat index cbed0c14c1cbcf9ec7b53d4cddd493c333cc4e31..a2a0a3a513d1b1a664aa999ba0769f1ff1379eb8 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/epsilon b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/epsilon index 09f3bd40587ab6a9107dff1272884a27fd216d45..95486e7d426c53d82413c9bcaef0c7e76e9e5d2a 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/k b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/k index 63cb882c334122f768e5ada947fa93ba68d68ea9..6f55263e31f00f25cbe095db9b4be030fc4ac56d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/k +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/nut b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/nut index 6ec19f25282164a302d641e1159ba47256b3dec2..0bd05b48a139559b3dc3d7c77630327c49147748 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/nut +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p index c8e88fb1f8cb489dd35a3fb8ec0b7ae178e1e370..b786ce5d602ae5b53640d59b494ebbff1b337ae4 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p_rgh b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p_rgh index 850ee86a2445d91589387b0a6fbbd134d6131a96..48ea1951cb96c02181851788a861eca463dd8354 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/g b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/g +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties index f6657b38076c4e5584025347dc0d14cfab82df39..96bbb22fc0cb71d755a408ec9157d8af3e8f58d3 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/blockMeshDict index 573b5451a4c4ae3aad567b04719482476fe868cf..debf2d67d9ba8f75a02cb258b4528be77d0c77da 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/controlDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/controlDict index 5c492bb453effb6df93ca692bc7a065c2647b697..24d856212051aba82615fb7b3a0c1da57976faa2 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/controlDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes index d68dbe8bcf5ac2dd9617352f2e8b2925e4dc2021..88941855764dbfb92e0ed7918c6adf86fa84eafe 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution index ee2b85bd96a0100dc0356a00453e4231362fd0fe..d8a9a324a9464f600840131d621d3446a7c54451 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/setFieldsDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/setFieldsDict index 004d3a6b78a0f7f02041c895a195601fbc231fc7..1bad561329dba7565ad8c3cbfa66b023e32a4fbe 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/setFieldsDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/T b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/T index f12fa17f3d69f3aea1ad3b28731ea61330bbb22d..07a7d7be291ad698ae278a106693a240ed78e614 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/T +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/U b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/U index 7e5fc2e88b6202e5ac1663053351c5984f3fc3e1..b189992fd882eba3a1dedfa8f25783b61ad1e167 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/U +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/alphat b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/alphat index b4285f4919aa03d6dfdb30cc8bef9fad1696e1b8..2ccd1188baba5283bcef08525782f83381c238d3 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/epsilon b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/epsilon index 144698b667d797ef3264bc4d20bebb3e7245d471..a48ceeee6dfdba844b46b83500934b0202ef90cc 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/k b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/k index b10827a7c1b8ddfe605ba9bb8da2bfe4ca9be58a..e0f0e8cd82943f96db235c5150e9df95069f32a2 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/k +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/nut b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/nut index 9600906dad835bdf271ed2cfeacf420b586201e5..68d5c1ca7ea6f6918899ed943b4e33b387f6dcbe 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/nut +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p index bb96925eb6ac54607ad409da60008b2c553add16..f98a2f3f38cad480b1adf80e0592990df0113189 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p_rgh b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p_rgh index 2687e76b442b429a86a0ae6b35cece848519ce4c..5198cb7967df7bb31a8db3e86ee11fcab52f9b30 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/g b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/g +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties index f6657b38076c4e5584025347dc0d14cfab82df39..96bbb22fc0cb71d755a408ec9157d8af3e8f58d3 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/blockMeshDict index 4fa997e2232ae75db4fcb7ed51685ca7ae1aa828..1529b92aaf5ef29dd3f02422a473a3e55233cb6d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict index 9b7b39ad9afea07b30f1a30b5b5ca22834296ef5..790d44624ad9c388c46c35db2de76bc1f50fc3a7 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict index d9fdbcd5faaabd44caceb2c4ccb61589560ebc8a..38c549df4773c69f7a86b2965f99bb6157c17960 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes index 902795c88e3636fffe360beca94fa75cd97f9646..a61699aebace7d02349b6badb1c52d0d5cb05d9d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution index 4410f86a11b27321eb1be8190fb298b25de4543b..f6d3c8bf07ecdb573e80214e04fb96614555744e 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/meshQualityDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/meshQualityDict index 39a580144be92f744bcafce9532fe0ef7be7324f..7f34616212ac22c6d2c464830dc74b219366d412 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/meshQualityDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict index aa79620caa12cff2ed8aef78465b740fa839d3e8..0a2016e590018140f78875bcc51d5a2301d7788d 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/T b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/T index 50acea1bb6ed73a485b2e96cd7faa831a4a2f9f0..ef1547a33a27904d055a7d0b28f875375a5845c0 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/T +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/U b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/U index 81d74ec4eb10bcaa0f7605dc84c9884791f80c5d..6a8969c6408e1244a47148ee90de0e635cd83698 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/U +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/alphat b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/alphat index 1a97dd14925506a411158129b6e534934d99a5f5..9ad47b8d55ef3234dde32cc3671d8af0f72b37b6 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/epsilon b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/epsilon index 09f3bd40587ab6a9107dff1272884a27fd216d45..95486e7d426c53d82413c9bcaef0c7e76e9e5d2a 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/k b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/k index 63cb882c334122f768e5ada947fa93ba68d68ea9..6f55263e31f00f25cbe095db9b4be030fc4ac56d 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/k +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/nut b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/nut index 6ec19f25282164a302d641e1159ba47256b3dec2..0bd05b48a139559b3dc3d7c77630327c49147748 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/nut +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p index 889ee025a2f5d4cde9db4a1944a012fe220fc895..63544cb09a6a061e5fcb89a4f1f70e73309a31be 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p_rgh b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p_rgh index 5c5a4d2ea1442f88aeff20ba7f9c92269e95c8e6..4d220478008318514cc74ba4cf7d8f8b96bb6bfc 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/g b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/g +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/thermophysicalProperties index 6347e039519aafdf28f51b512cb5c73eea34269e..80168543ddb6abe4e1ece7fd4cbe15f11f22b39b 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/blockMeshDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/blockMeshDict index 573b5451a4c4ae3aad567b04719482476fe868cf..debf2d67d9ba8f75a02cb258b4528be77d0c77da 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/controlDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/controlDict index bb3bfcdcdb1c4adb3e72b67524858be706010dcc..2fba84de3b8d2f23cae5764f1d2d4dbf8a39cff1 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/controlDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSchemes index c7dcdeba2151b03f7628e62e47d01931cddd1814..a905c23ec430177e1a389b246c974c4e0ebb7a94 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution index 459eeea6911d7f98da753f1b974649dc61972acf..8a1e0382a609b307e67cf4696c5cfadda2388a97 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/setFieldsDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/setFieldsDict index 004d3a6b78a0f7f02041c895a195601fbc231fc7..1bad561329dba7565ad8c3cbfa66b023e32a4fbe 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/setFieldsDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/IDefault b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/IDefault index 417f06c1a655c488e2135e67956c8d5a8bfdd2e4..bf5daccc21c6fb67072452a79e6f8ba8c51b1fcb 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/IDefault +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/T b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/T index fc77cc0f060183b61ce0b8518894a22ef89d8605..6a4bac3ff8473618795e7038791860e4d44355dd 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/T +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/U b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/U index 12a63bd623d7cb8f874b096bdbb987009459d11c..cf1c273c6f96dc203ff0aea5bdac5a5b553586a8 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/U +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/alphat b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/alphat index 3a16c75524db31e502c966060135f7ad7df84a86..1759e09cb72894e2d54308b07775dd68c4e07a37 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/alphat +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/epsilon b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/epsilon index 1cd4ed2bb3321b03ec7b231dd8cc63c1b39da432..1f89fdf45d3d1953a7aa8caa68a0f1306d2f97dc 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/epsilon +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/Ts_ceilingShell b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/Ts_ceilingShell similarity index 93% rename from tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/Ts_ceilingShell rename to tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/Ts_ceilingShell index 08e6571b904c118100a1bae036b6a2c0d463cce3..826c771c4c54352568f3636ac9ca5e6bc15ccf68 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/Ts_ceilingShell +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/Ts_ceilingShell @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/h_ceilingShell b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/h_ceilingShell similarity index 93% rename from tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/h_ceilingShell rename to tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/h_ceilingShell index ae2ff042b7090e5a6c3d6b60e34fa2f6508aca4a..4a23b9a00f4365afa97b60dddebc24c4cbc5b91d 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/h_ceilingShell +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/finite-area/h_ceilingShell @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/k b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/k index 6a1ef8e5abf78293f3f75b5de7ac9c0cae433e64..b5f91ec16cd7d6eba54fa8c0b8e0314958061619 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/k +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/nut b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/nut index 5853a59b9abe47a23388a8d0ed6455878ae5588e..d353c8147a06a9a74f723350972d68c944898d89 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/nut +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p index 5423755e0b33531f6855c948b0542be070699215..6f25ce80ef64edba2bea2dbc626d1feb61f6fc72 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p_rgh b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p_rgh index b37d3ed382e03ef1d5f523c86e4b2104ecea931b..94894bb4b3fe19cda7075228a57ec3ab8477bfb1 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p_rgh +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/0/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/boundaryRadiationProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/boundaryRadiationProperties index 768da975307f31bbb9ce08300d80e11c033f1894..fc3b3f8a0aa11f878acf79c922475ce5284ac84b 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/boundaryRadiationProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/g b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/g +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/radiationProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/radiationProperties index 1d86a8d6ca307db7e9e324919711c96a2c542ca5..31d4288fd3c1ce5f3ab0e14106e4bbdd37e2d308 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/radiationProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/thermophysicalProperties index 8f7f58c5013ac798ed28050dbaeddaa8c0743bec..3bbc1cd43e0551cbfc9fe4bcdf859adee9556c0c 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/turbulenceProperties index 2ac8cfce8f5f34987cb8ed112c65414b7755955d..36bbbff19cb7d5a2f8d49b9eda7c73ecffe874c1 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/blockMeshDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/blockMeshDict index e8468a5ec7f3ad2a100fda27472885cf770ebf01..e5b25e60ba0bd86db82d3be5c3740b76c6255c8f 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/controlDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/controlDict index b8d55350e0175bdc705b1717132f2254715ac49b..4e9db01d583edac7701f51f3308a7fc812ebafdd 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/controlDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/createPatchDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/createPatchDict index 812295e8151c6f2b9ae451ae048c0b1c9ae51136..a73803cc12d2535f23e485c1d646bda3d6a80fe5 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/createPatchDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/decomposeParDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/decomposeParDict index 02856b72221727ab9b0406e364fddbfc7c2f88a8..58693af6f917436577fc58ec8b159cd117bd2ac6 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/decomposeParDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faOptions b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faOptions index c96ba34bb49622348fae74ba7202e61115160559..a721c5a04fb025d64ed8d381484df99aca9b418d 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faOptions +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faMeshDefinition b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faMeshDefinition similarity index 95% rename from tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faMeshDefinition rename to tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faMeshDefinition index 143f16ee4e7743e830ef8b2a3518de0e799b3bc4..a85df0cad79d157eb3c2e6722be47afc6ea00024 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faMeshDefinition +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faMeshDefinition @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSchemes b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSchemes similarity index 95% rename from tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSchemes rename to tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSchemes index bb555c9b24d7224d601d8530a7d0cce1db7dea92..8903be44f0c76a43ef323b0662892d634d32a298 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSchemes +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSolution b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSolution similarity index 94% rename from tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSolution rename to tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSolution index 3a81b2507f61507e3d2ecf3aac08e8f8a76573d6..d1da620bf92a8d32f9840bc78d170e841282bf0b 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/faSolution +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSchemes b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSchemes index 1e0496cdcb6100fb35421cf3552462e491d4796a..35a34b3abb4d5629616fc1a4fb6a2d86dce2e209 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSolution b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSolution index a31be0a34e23bb0917573649b3b2ff51d794bcc4..4140fcb23b862dee95530f36d94037bc178ab7c6 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSolution +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/topoSetDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/topoSetDict index c7056c98252d35d2c86b093add4dfed028b16adb..be35a86da40bce186ebe54544da68df90e1aa223 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/topoSetDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoomWithThermalShell/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/IDefault b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/IDefault index d578c11dd8d647a447a929731d6a555760512891..7cc85e6c9f5faa6252d5e393b891eab144056776 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/IDefault +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/T b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/T index ce3abf2682334f5d3b6eea1ed1b1dfbe48040688..67eb8496d0f10138c9437eaeb06154dd0e5f8dd4 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/T +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/U b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/U index 7e5159a4b4baa1dc1a9dd809fae20715e7e87174..3432683094752b811180860a77337b2350f3ca21 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/U +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p index 32039c22f34fa51990c26f70301df2a789aafe0c..7e63922a49886b43a9c388bcceb2be796d12d943 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p_rgh b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p_rgh index 9790fa122d7ac6991a59949c4c48de484fbc8b1d..29f98e525c65830c5dab3cf556af25c4965ff85c 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/boundaryRadiationProperties b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/boundaryRadiationProperties index c6278c8824a9defb476438dd3c9bd9f9d400f989..6d4a8429e71d0b4b0ab33908ec15df7e536f8bd6 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/boundaryRadiationProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/g b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/g index 4ff87621666899f1abece6b9ecb945c9abd63952..e9dfc3f353d2990103bc9b9b9ce6a0dd8943fe0f 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/g +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/radiationProperties b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/radiationProperties index 531e2275f04abf7b45cf2f750960a4d37c5312cd..07159e2c34536ae1e9430edb4af841d4d0b5401f 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/radiationProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/blockMeshDict b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/blockMeshDict index 9805bea6f40336c73041dad5a7ad4e632760b250..3ed48971c80d30d58274dbd2e6fce5a5a7d553bb 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/controlDict b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/controlDict index e30bc3def58e75d629b2b89246e81ec56835f92a..fe053674f57c75274ef957c81f4c439fcdc6f5fa 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/controlDict +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSchemes b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSchemes index 6c63e90f2c3a4b6995377edf6e838772cfdf9680..e54130f08b940ea14016373e47306ac3a2bd75a1 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSolution b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSolution index e0f05ca3a13f3512e2df3383fa182e0dc0ec242e..e6f8f92036606d52ce63bc599fd9a047fb61ca96 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSolution +++ b/tutorials/heatTransfer/buoyantPimpleFoam/thermocoupleTestCase/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/T index c9bd09baced19af11cbe1bc5ff15c8467b505ea0..f99d3d78deac20bccc9c728909d5253b0368424b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/U index 025fdbbc60776b9f7a4e36f4184ec59a98678957..120bd284f678eed52e72490740493df144f86c23 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/alphat index b46000f57ab3be48c9268ae9a992049245eef288..2535dbd6133a6d83d17f6203f63077234374ed3a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/epsilon index 9b50c8b5d04c82896108d5b2aa8d25b01c0fc941..40114657257f3c2ab20823e7491bf7378c27dba2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/k index 7519c8b30eafe4c8887b4d15450f5ed63350b7a5..e77ea8c7f4b7b35f40c81db32e43c9726226ec69 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/nut index d7e26ee622f9845360067c808e3210244a9f33e9..8d0fc09df061e2d146822aac0db27ec9dc53c789 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/omega b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/omega index be205089ba0ceb53e32151baf03eba834b6a04bd..314b864231b1adf3ab2b128b8325c26d5238ab2b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/omega +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p index 081541712b0e367e55da5db648d68f52205d4a49..037fa1e5c7c02c8d24147fe5934ba0c8a20da249 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p_rgh index febfa9adf77e89a7453bca23fdc6537920140ef6..b26fb4481ddb71557a9efe8d967b7807de9be341 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/thermophysicalProperties index 7d66796b32c5341cf83be5ffdb0c4ba40ab62e2a..0149b4cabc852843456e0143de2bbd45bf0c3ab4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/blockMeshDict index 17b63904eef1a5e2170a3604ea5806a9a6350b10..c4ed631fa10e33a54e008897042c4cef05a07623 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/controlDict index 0b0a013866019237050246ab3104e48192005fb9..94af2ec1583ac379044d2ac784a3df0c100cdc20 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes index 925254cf4bee74ad94ac306fc239ea8d00140fcc..9a5c18ffaf40d9550b4c2f1cc57d3725b9a1c197 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution index 44c227035c636a5b464d2f4ad0010a1d952e1634..0477b060f56526473f05c5969f41e5479bfdc268 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/sample b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/sample index 0f5e91e13c093b5de3256cbd943d8cf59b2f80d1..8c50945f547b35d85c882b6896578dfd8b065bcf 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/sample +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/sample @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/T index 33cdb0301ab2046c05ecb0524677998ad148dba5..9b59658a623ed9d1671bd7a9063a85f94221e226 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/U index 988454e24c7db2b3d9bb0bf457531185c9a42b59..1ff791902bc40a1022c4e60b20c6e6b8ce3393f6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/alphat index 7135c644b9d017423a24dea7763aec4be50be175..1abc016f1980010654c7ed9b14f2f825c8eac6f3 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/Q b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/Q index 23aed2dce12746aea6c1cad9a3b80fb1f3029be6..3c32515c712539c004d939234752b2eac54cc738 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/Q +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/Q @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/T b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/T index 90c2210b7371805f6272cfc5df7418c823c756d4..88bdba57d34ad1ac248f3e0d9623a4da4348a179 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/p b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/p index 309ef215a4e9e53fcc1a771c0644c28d168fb6ab..a85add60471790f8caee8f246580704543efc96f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/baffle3DRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/epsilon index 14ce6d2a6359a1419542ef3a5f45968e32641202..51d709d1994b39aefe6472ca1ca026a00965f3ed 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DTemperatureMasterBafflePatches b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DTemperatureMasterBafflePatches index 143b4bd00bd936a675ec0f762c5e15f830e770f6..95603f4556ca9fd3a8a947672a47c224ef62a5ae 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DTemperatureMasterBafflePatches +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DTemperatureMasterBafflePatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DbaffleSolidThermo b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DbaffleSolidThermo index ae7fe0c25da9f4c77ff031ee9fd9265892fc9dcd..9d5542394443db230b85e5b7be9bf44708bbbbc5 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DbaffleSolidThermo +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/1DBaffle/1DbaffleSolidThermo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DTemperatureMasterBafflePatches b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DTemperatureMasterBafflePatches index edd5defaca6a65c3b6ae382ea3dba37fa79da5be..e893bbb7e95940fff3933b8e75b535def51ac83c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DTemperatureMasterBafflePatches +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DTemperatureMasterBafflePatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DbaffleSolidThermo b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DbaffleSolidThermo index 44fa57474cf0c6b6c5bb7d13dfa8b53bd124f102..99d25f30f4d6efb041d8fd114689515ce16a5b21 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DbaffleSolidThermo +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/3DbaffleSolidThermo @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/extrudeModel b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/extrudeModel index 18f04add2f3a3a40b24f6ac0be075e3403ee76e3..08adf3c925ef94fc849146f08ccc69ff47dfe553 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/extrudeModel +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/3DBaffle/extrudeModel @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/baffle3DSetup b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/baffle3DSetup index 8afee847f9055b643e55cebf3c09b2e4c333f472..c5440caa64e6a22789732a54e2e089ea176bd7e7 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/baffle3DSetup +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/baffle3DSetup @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/wallBafflePatches b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/wallBafflePatches index 3b07fd1b2210a875fe71c1ce40f3d464266f7fc5..9a2ecc49f9d3dc7349083b260034be06b0643271 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/wallBafflePatches +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/include/wallBafflePatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/k index fb38a76eae431704367be6a04abc0d64f13fa9bc..2281e3af29928a84a6c6c6bd7f7e7e80c0112d28 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/nut index 481d4b39952522405d9a3608228e13ee4e0bb8ca..b4dc9229d8005a2b9eaebbf9bafd7455997c524f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p index 8743588d840a27914797fa712a87e36659f5f070..c0a200cbccc7336bbb14cc1def4d18a608ce798c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p_rgh index 5926de00329b7e17ec150434bbf0a31f44ed94c4..b837ab8268b3bc18b7514cc91cbb1e7387e3697c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermophysicalProperties index 7d66796b32c5341cf83be5ffdb0c4ba40ab62e2a..0149b4cabc852843456e0143de2bbd45bf0c3ab4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSchemes index 8bf357d7bde6a253ed32d82fbb5f12f7c62649ba..a2e1efa40aa3f905182d54577f6aab541c54a6ba 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSolution index 7f6e6b4dcf730fa4564efd5d0640dc64c514af18..b676c7b824cf91cd498400568a5977a8d80374cd 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffle3DRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/blockMeshDict index 30e16e07df56165fe98f4eef84254f3ea475e368..20bb362d45b72fb6385017d77cf3659ca8adc2c6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict index 7601da930d10e2092f29817a157835ceb4b9efb6..767f9c303fc8029bca8327e229ef5c958d4911cc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict index 265492f08dd26e5dbfa55749ede06e600c1b49d1..aa4d5db9166eb70592b7da68fe0acb5ebf7a8fc6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSchemes index e139302465682714def8615b086507763b9b1e75..e341f221a5d6d4d050a65f31840cf0fc61a817ac 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution index 0ff2b5867d1dec3d2e7843cdc2a14f0046917496..9525f77f2d794e7a7fd705e731062ca8ae977261 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/DR b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/DR index 7a864e7399755ac996a9d3076c996814097f2560..41c1c04b3a7510ab6bc384f73c2bac0ee2807210 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/DR +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/DR @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PMV b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PMV index fb8bd34fc0e160838557e4079054b31a754627af..423a1a2366d4b144baf02235078b373ba253c6b4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PMV +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PMV @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PPD b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PPD index c74e2c2d565186ec7df2afcc18a7cdccea1218c2..7bfff79cb83013919da39b3a476b8ab1dc9df79c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PPD +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/PPD @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/T index 806e2cc479e56ed16952616e68c314e9c211709c..6ce2d8cd4189ecefadc4a7590b5a3a46cd32cdbf 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/U index 756770c4c1ad440303e32f1e6f88cf4e1917e798..5bbd2204148d674b770a79a451753f1e0e0b5d9a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/alphat index 1ba5a196f3566a9e5ea7286a0f98257d291d7d9e..25fcc5b2d900d1016a19249f1109f8df69231808 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/epsilon index d2344c7a8002a62cbb13a05b4d9f1407d4380433..228e894f46f7142c84a67bb5bd6a922a955a2a02 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/k index 3e29c48b0ef87d14cd6bbf004cea3d2a251e1bb4..03f5d4460dd10d1bd0a8d987724ffda0576230cc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/nut index 64011ae0f33d605b4d8cf7027c5c288c65103280..3329f386d50f73921a18f89422a98b51b20e88a6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p index 1f25978db6079627c9a566fb3e730802e449b30c..dc2a255cea7a89b94ee6cfebb984961a97f2a473 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p_rgh index 924154a5d758b959491cce81464b304a437e3e7e..30de4dce99a8e5e105ec74d301a4919ab37cd516 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/thermophysicalProperties index f88fd7353d9e7ef1542149ddd928352704108e2a..c974d960542ce811681a3d770f980e4232f53a6e 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/turbulenceProperties index dbefbcb78d148b5e03262f8d50c34f6256386b25..dd7fa863e0cbd813af8700d494c55ada6744ef8f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOage b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOage index a4c39de59a8f8b4e6f193b99599dbc30a7903a2b..8a4b785d0546923c9c61db35a2ab6b0a8c321ff2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOage +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOage @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOcomfort b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOcomfort index 3b5783d1a3b778904a5cbe7fb5e01055d6386ab7..5491051badde0a13388bcb6df76647ec7af355e3 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOcomfort +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/FOcomfort @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/blockMeshDict index ac4136d57808a874584ed5d70a7c696fd3731354..ccb20145fdb9ae487ae3241878653cf175693dee 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/controlDict index 9ef3abb989b47dfc9d87df4f0541292e1e4d6d3d..ee6719c3d18ef8d9d1c2d17db19513b1be74c7c2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/createPatchDict b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/createPatchDict index 96e49e756481c8813aeb630f7fe9a86e412985b6..89113cf41e7305da0fdbc186952c1089cc9bc1b5 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/createPatchDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/decomposeParDict b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/decomposeParDict index 85cb0521c97da2c85d6e5d6f2017d608caebea19..367539f0a9d624abec943f2eb1ada8eeafa7d55d 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/decomposeParDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvOptions b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvOptions index 859cb5343196ae2e7cfd50e212229dbf390792a6..45f267e71a4cd224fa360e1b39193b5d7679cb7e 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvOptions +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSchemes index f41af805da699a088dfb7a0eba0d8c7ccf474942..8c8969392baf644c07a374456010c0b23e722403 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSolution index 7b9e90eae7cc7ae5cd55c23f3173cb70d906a504..eb98225ecd062fe5f337f49eb54c93acb9b9a883 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/topoSetDict b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/topoSetDict index 77b54d88be7b9e69201a2e117b730ab92520845e..23791cbb25e533f41c22c801bc524595a1d5096f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/topoSetDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/comfortHotRoom/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/G b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/G index 8d983ab27f28359062c7d8bc0636f241cee1e8f2..00413fba9e3e4a72ceed70bbcbdf2b44e9a67dd0 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/G +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/T index aeea512ef39a2b1b59e065299a0817298843b54d..1b7931171a1170f204aaee2960abe6c5914cfabb 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/U index 404286ef8b69a2b9c3c7162ec39f4e9f06acf3d6..1ab32f95f096b261941db4ec8e6ab75779a5301b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/alphat index f0e92c4e2da67372940d37f0f8ce7651e06e91c4..a55d1f3bab26af81d0e9f35b689bf5a3a5e4049a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/epsilon index 332712e556e5ff974fc6f7461b64338e6923bd84..f79a13979c3c1971d7b59ad1768cd1c27fb27a78 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/k index 50ec501b9e9ab4745f9f1ba75587a0e6bb8141a6..a5d28216a59ff36073a8989b1dbbe88235e977ed 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/nut index f525ea6fe5457b4c0e4addd7f33bb2d0a0065863..1c4b67c9a73b80b97805375af3733d87fa4b814d 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p index c9feaea37ffb63f937d7bebeb6b10770206fd608..161dcac8e5fa85b85e34eec273183f745fc59265 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p_rgh index c457a33f7b7be2e9da2606e22634ffbc00398a43..e1b22e153eda21002eb4efa4adbb1087ed103cbc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/boundaryRadiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/boundaryRadiationProperties index c82838fa3899906d56396c9bee9323b05d9882d9..3579ffb6c0bb1d13455fb937ffa8386144f4676c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/boundaryRadiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/radiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/radiationProperties index 261b8086a8afb97b0af0b36732f0d179430cba54..93da8b2fc22b7d344686572de30b3f6696ebfb58 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/radiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/thermophysicalProperties index 6347e039519aafdf28f51b512cb5c73eea34269e..80168543ddb6abe4e1ece7fd4cbe15f11f22b39b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/blockMeshDict index f45b603a4f743403aee6576e8d4ae30e2a415487..59c0ce496a1653d52f94c2fb986b78f55ca507b0 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/controlDict index de4ab5a89d51e979d87a9f1275c5a25c40598979..7a3e8612de788ba1f2b2ebdbac147ce33ad898b0 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSchemes index 8d7198e570c4387ec2a570885646b063f1905df9..994076c962a96dfadce8ebf47cd62c535deb9154 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution index 54664dc3e7ebf844bb417c7a149c0a2ce39e9521..e75f0604ab35927c356355a5d9e9b76a9ba3c2c6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/G b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/G index d8c6a9d1de053d71c0597df6f1918089cb53ea5b..46a73f56f1976010e7521ca0e2b3a6cad86dcfe3 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/G +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/IDefault b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/IDefault index 70f3d521dfe97bacb3f668ba9f61f139923fd2be..188cc3423dfc3cb36472272f69a0af2e8b6079b4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/IDefault +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/T index aeea512ef39a2b1b59e065299a0817298843b54d..1b7931171a1170f204aaee2960abe6c5914cfabb 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/U index 404286ef8b69a2b9c3c7162ec39f4e9f06acf3d6..1ab32f95f096b261941db4ec8e6ab75779a5301b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/alphat index 2216b7d2e957fa6abb5303f786e97532df16de1f..4601053d930f366a5c5c4d900bf7eb7b34e31b75 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/epsilon index 9f1f0be64c63c2c1524037dd99bfc6c055714b1a..5cce90d9b7f87d71b864bbfebdbaae113440580b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/k index 50ec501b9e9ab4745f9f1ba75587a0e6bb8141a6..a5d28216a59ff36073a8989b1dbbe88235e977ed 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/nut index b2f1d10966853e0f11094e2ec44e3e69b27a3cc6..312f696d76820aac34d23641f54e1be2aa09227a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p index 849a09de1589caca3bdc849407cd7264b8d0a3b2..3ddf34a912e0dc7bb3c17124eba47e23d1a22b0c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p_rgh index c457a33f7b7be2e9da2606e22634ffbc00398a43..e1b22e153eda21002eb4efa4adbb1087ed103cbc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/boundaryRadiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/boundaryRadiationProperties index c6278c8824a9defb476438dd3c9bd9f9d400f989..6d4a8429e71d0b4b0ab33908ec15df7e536f8bd6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/boundaryRadiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/radiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/radiationProperties index d422e85b8b4090ea12ec52f0b157b165556e3d19..370ec7b5637e23e8105fef249a9771f429ad1051 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/radiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/thermophysicalProperties index 6347e039519aafdf28f51b512cb5c73eea34269e..80168543ddb6abe4e1ece7fd4cbe15f11f22b39b 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/blockMeshDict index f45b603a4f743403aee6576e8d4ae30e2a415487..59c0ce496a1653d52f94c2fb986b78f55ca507b0 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/controlDict index d14921c00fc500c2323238a6eaa960ae674647e6..c422d48e131d1e439eae7c6d7621d84965b620c4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSchemes index f0191ecf5dc935eb0816ce57026cc818016d4ba1..30e06eddd188f9cefc85137deed130eaa1832624 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution index 1e00a0bc98b585d86bcf7ce83390eba85d2c4e77..d7668a62ab55b53aa85ba48c25d6031982c0112f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/T index 930ab2ed51e07cdd952fd0f9342b70b85369db8e..268ad74eb059e0cc4f1bd58fcab1fbb46abfa46c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/U index 98f6ecd35dfea94926dcd509f20e879c1034ad5d..e4834143325a2ae7611197c57edae76013aaee19 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/alphat b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/alphat index 18f116ed701195d634515cbb7a260c2823a605a5..3b97a11d074b80de88e1b3e26251f50b6e6fc10a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/alphat +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/T b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/T index c473e5b021a4cee7719089f9c59ab7559ab26c46..9d2a27f6689057e54e205eebca5d3ec77bf039bf 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/p b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/p index 309ef215a4e9e53fcc1a771c0644c28d168fb6ab..a85add60471790f8caee8f246580704543efc96f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/baffle3DRegion/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/epsilon b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/epsilon index 686b42a0ec89db9d43c358c5218b38da82a6d7c8..b777933f3b4b2485452e0709cb19740c940b5cf8 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/epsilon +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/k b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/k index 39004045110e147b53094592975f9d8e2bceb680..e65a6c298415de30f941d7847c08e4961db29490 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/k +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/nut b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/nut index cc477313dabd557b273aa9d24a22a8979ffc23df..980c5c6bdff8bdfed45524bddbcdea65705020b9 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/nut +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p index 8743588d840a27914797fa712a87e36659f5f070..c0a200cbccc7336bbb14cc1def4d18a608ce798c 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p_rgh index eeba56e5688527b0ad41467d8c5fe0da214d8976..73dd561d79934def9e8d0216a9900bfd196b4b45 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/thermophysicalProperties index 7d66796b32c5341cf83be5ffdb0c4ba40ab62e2a..0149b4cabc852843456e0143de2bbd45bf0c3ab4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/turbulenceProperties index 20a6f2aa4366cbac85a29a197fa67fbc47a2060c..f642985ec1912ae07d3b6cf6ba916e0aa6df12cc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSchemes index 8bf357d7bde6a253ed32d82fbb5f12f7c62649ba..a2e1efa40aa3f905182d54577f6aab541c54a6ba 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSolution index 7f6e6b4dcf730fa4564efd5d0640dc64c514af18..b676c7b824cf91cd498400568a5977a8d80374cd 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/baffle3DRegion/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/blockMeshDict index 2320bd2263505aae548fcab9813ba563e805784b..8a4f5c9b27ffd18f2116794f6bf4b0706dae9270 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/changeDictionaryDict b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/changeDictionaryDict index 0e69ca253a1c08dcce4c71168639c94aeefa850a..ef443f35c1a4e32816f5f6046ab864f8c929769f 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/changeDictionaryDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/controlDict index afbae315d777501900c178bc08f1e1ddb6ccec0b..61f67d2b1b20d65c49365beaabcff30e3409faa6 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSchemes index 3521f3bf934a7080f956d38cbc71d4d0876774bf..3b6da433bc7c0c462811fe02b0b0c292afb6a732 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSolution index 392d974dc91d450c8e79868851d38ec4b6a52ad1..41bb7ca1a86a6101bb24b80d7cd6a8111e391a13 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/roomWithThickCeiling/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/T b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/T index 3e6eaa6d54343695fcd2f90aa3ee6c0edba2c13c..a1f35909744cec005a45ed6df2e0318a05d4ebf2 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/T +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/U b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/U index 931437922ef911070a1d7d6f7489e2bbdfdf60ab..73ada7b27baec161c69298ec5d6d73087aa2af64 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/U +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p index 75aa8a96a9fc250657cb379965b6b3d1819471ee..6d05b377a270afff79890fa4229fff9821d13320 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p_rgh b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p_rgh index 3eb265378002df797b2f8dd2269a219d5396d1e6..f2a08146c9a45e335ce127de2bb20539a7f1a3cd 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p_rgh +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/boundaryRadiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/boundaryRadiationProperties index b1b7923d2ef0e434150cee03249dcda1cfa2d067..63cca100ad2e35bb5ff804017f19be49f1905b89 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/boundaryRadiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/g b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/g index 2ce5fcdd58ece7e2ff4c5f476b16a4962669930f..1cd0212aeb941e8f025ce7d24f8d5a0e447a8ece 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/g +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/radiationProperties b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/radiationProperties index 421e6a3cbfc15135d0b658fe7c03a2f611f94c5a..e122730095b0a8b3a8fa9389275fa1f1fcb20278 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/radiationProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/thermophysicalProperties b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/thermophysicalProperties index cb543f07d3108f0ba2393eb9c3ed8182cc06a9ee..ce1acb72fb6143f7f0948e97106a2509ecac13d5 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/turbulenceProperties b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/turbulenceProperties index 703be8b2bf43221b789fbac7644be0a1c373d8a3..8ea6e358edaed33af9739f4d59ac3a3314460abc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/turbulenceProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/blockMeshDict index 39c85ccd93615cf11efe0a1a1c545b72a1b52ddd..2e38f93133b64404011a9b8785c59d2caea6dffa 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/blockMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/controlDict index aea85106d9f0aa3591bc9964980845083cadd7c1..7c8ec7a1bf9d2a7ee7d6893c842d144de15a159a 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSchemes index 7f27cbe2efe33df7e39c76bacf6f6afe3d23cd31..c6ba53e001d3dea850d316b1f22caba47b3e3959 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSchemes +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSolution index 26b1e62d0fd849b4ae48625fa04b365bd9715794..38c4bbc19483200ddcd15248f6eaba581303df90 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/meshQualityDict b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/meshQualityDict index e35092c9af2a9fc86f45774e9d7d73e7be224060..c5e4f5ec15c6034ff30f9db5de96234df3a6ec4e 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/meshQualityDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/snappyHexMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/snappyHexMeshDict index acc1568f1c6c9abb2c82f33c433bfbc50033c27e..b610bbd88e95e61095bacfcdbd06bcd96c302e47 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/snappyHexMeshDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/surfaceFeatureExtractDict b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/surfaceFeatureExtractDict index 72bbf2e5c05a423d39e6279477a4c7e14ce2c184..d718a7b55d812722485b45aaf0e63e9394b62cc4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/surfaceFeatureExtractDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/simpleCarSolarPanel/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/T b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/T index d03ac4b0bb0f58f90b93f31624cf005a2561c56d..cbd09bd7582f3b7a20b41b85d0d82ab3cf68b263 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/U b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/U index b0b75e8f32843c9324e182dd48d672f7382ffc42..b7bf73b1357a6244999a41081d75ce70e444e24b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/epsilon index cb34a5f312e0ea6096d178c62a5c2b4c481a5d06..b4b21992c6126db0524eecf1d40434fbced1210d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/k b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/k index f6c5c2210f8a0e0f55ba4d1c1334c58b66648731..063eb9085ad94dabf20f25a7b3ffefd48133abe8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p index 78f4522964fe7e1aac155b38fed0632167eadf8f..9a430fd79f327a6a8321fd7f56f6069715b6ff5c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p_rgh index 00e75111a1d9b6a951e39d64730c4f9f26a1d29c..ec657884eacadd60b587c1f1706d47bfd864c2b6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties index c328fdad1ca522ffac00b78927930f919206a1cd..ea174f9a97dd20c087d4254d55aa5c8cfda22623 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/radiationProperties index 16761a9e3a844e93e882a43fdf639eda14404b42..439eaa9c891f0a40a0d772dfe1b6c76b82d848f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/thermophysicalProperties index 046a37a7532a72efddb5369b20e131890f23d9a1..73481e9db3c44f1e4fd5811b7eb8e177172823cf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/regionProperties index a6ad8a69b9fc1c8040041fcdf93dc19406ad2e01..78f63d6aa3b5f681ea229c4873fb0f6444741ee1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/blockMeshDict index 579466f910adfcd086848f6ade84f3b4024c170d..c4f51efc628fce49ed7fe16af6289b93bdf88ff1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict index b0d857f5c24a401f5b39966246cf80d9ed6c822e..f87235d058e981860de7c9fb55b149d916c3c6b1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSchemes index b0ec27608249042e5a0bb37215e6f67ce123ec88..858732b69fb4329e3cb65f61abc554c4c71c8bed 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSolution index 9bc277ecfda2eae2a185c0d8a9376c6700cc64bb..106ad4eabafdb63061329c459b409ebf23c9074b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/bottomWater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/controlDict index d9622c376c6f92a3e4a7dc41f9bb06612d8e8375..ba5cb60d95d15e9a305d1d28575d498423e92851 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/externalCoupled b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/externalCoupled index 16e32452a0c58f142c18a08bad39c6191d1dc265..b98dfc9782af8dda24501754ccacd8a91ed640de 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/externalCoupled +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/externalCoupled @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/changeDictionaryDict index 967dd721bbe8b4e5b0e67656c289ab5c5fd3f898..47356d07e42cdc59a584e92e25c3ba9f4994edcf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict index c95eb05613b563b690594589023d8b23ed883790..cf38aec5275e9fb7fcfd7d4ffe29c98185c17bb1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict index 138de259c1ffa7df686263f94bc6bdf84fdc949c..881aee1ef12bdae44006ce4d40a9301a41ea773c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topAir/changeDictionaryDict index f0a124c74409cfd0dc6060e9317d84b934114972..2f4923adc712395e7e9159b223d3f58a29f57ea6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topoSetDict index 1a3fcf53762cb09107ef847d887df385c6e46049..60cf18fb35ed8fa8aab30d7e7d84dea93ae8a557 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledHeater/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/G b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/G index 0ea39565e2eae0d9f373428ed2065297a94f6dc1..a3df5aecb1c9ba31645279e57cd18312ece024b3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/G +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/IDefault b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/IDefault index b6b6b6fea276de2f3003050ff9ce292517783a07..677ce7fe343841a5053359708561b7c8db787687 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/IDefault +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/T b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/T index 904eb96ac36c90e68853b9c6f1a054d029101a26..6e2e0771994abdbb7694337f57b069a424711e6c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/U b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/U index a4384c55a0587d3c19e1b0925297ee4cb4d6f33d..275bcd34d5488d4b0c9253bc68dfc83e763cebbd 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/alphat index 8e680a05bb0215cb34881bab5da0ba19a99b8cf2..5d15f2166a438702eddc0cb8ee4585c903163f67 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/epsilon index e01967b781c10f4ca210e27508b792d11829d2b9..00c1a5f09e3f46039e74c465bbc6533925366caf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/k b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/k index 288fe59e073ae0b05a19b2e36075996aaae6479d..fc92e001f0e378d35a08b97bd77d7ad25c20b754 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/nut b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/nut index dc8b851eee956bfc7a3b05045eba43d2a3354315..bddd276585fe8d71b19c3eec61b93894882bf2e9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p index def80142c9c8cca4057b7252818599db5e1222b5..c79a74eacddc58fc199c49582c62dee6048738a5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p_rgh index 4711aaa5ee2011fe919c52a40c105d78e0cd9e01..0d3aaeddc2eb63427d9000bf26f9fb3d54d2a6e1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/qr b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/qr index 2dc043d540c5be510fd85ef1925b7da37e28d545..c307493881e43811267f2478102b6a1f5bf66434 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/qr +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/air/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/T b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/T index 96f03e8c703c97ae8ba9373381150afef3b4ef5b..6c97d9385b9e5c73a6568c123149d561df3b2341 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/p b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/p index da05bb237dd015afb484204e648f3973ab55a424..a0605cce09856919c2b0269f8f7223aacd2a05c8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/floor/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/T b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/T index cf2b0b5b52ebdc6bb68ef986567f831e7e045f00..57cf84a976a6370356c060e6e6dcc6ef6c51ee18 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/p b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/p index 775b1de25b288a930787b31486cfceaf859997e1..dd5fc571a9c9b55f13f5aba1d70465d65198bb4a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/0.orig/solid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/boundaryRadiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/boundaryRadiationProperties index 38237729c5c1f3fa32d5b63012f70bf02861e5b3..660ddaf859dd6e56791c32710206e30f27d55436 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/boundaryRadiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/radiationProperties index a38e943d66a22dffe098af18363ffe447b4c345f..181a5cde3ba4bf025fa9ff30cf989f2b2d31a2b3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/viewFactorsDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/viewFactorsDict index 61faad627c068aa75cbd7db00a1edbc433a711b8..e81f2eb69047c7fc06efbbbc10851bb80b99428c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/viewFactorsDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/air/viewFactorsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/radiationProperties index 1081c997bcb490bf8d9c4bfa0f42f30467270091..bfe4533c2d0a862c07f5a9cdc2088fc6fb067f07 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/thermophysicalProperties index eac73eb6c93e542bf62e8022c365618116fc1920..604d11c91ab22cd5d1ba9f96bf70ab948e5c7f10 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/floor/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/regionProperties index e3136e2f86589e27c688b50adcaecc23e1415c0b..572291e6374444e9466ebcdb918c881d3554bda7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/radiationProperties index 04ee1280934a7e6ea5254a97d95206553ad8b2c5..aff0ee14c40921478a9ba039ff3d197582c55cce 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/thermophysicalProperties index 2d8d2f81d51a289596b54538d92082b59e50a1b6..c7f79975ea744113d80a6159f570082ca5040ff5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/constant/solid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/changeDictionaryDict index 462b57fc8b9aab650a88765ecf911ea94f008c7a..2534290bdd5c2d10af734b9cd506315d9a3caef7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSchemes index 20f320803f28253729d8e391030098d41329d49d..3f246f8bbbed387f1f8b02cef03adce5339b8267 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSolution index 6d6cc9cb07c7dc405833c949d876bf1c12f50940..f38050c058b89a4288c044dd87cb6def73755e55 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/blockMeshDict index 6959bddc615c0b361ae5fdaaa1e489bc4498b119..f48586d2d671fa311c34a8d5594996bec307daeb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict index ecf6f31da384059f04115f5ede9af27d2290c2e7..b91917a6bd9acb9f79bb205ac7a3ad261717ed45 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/extrudeToRegionMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/extrudeToRegionMeshDict index cf5e5b18e7808247483c36358687228c19e8527b..4e25fb33d4368db53607fdcc45d4cd33d0b710cb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/extrudeToRegionMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/changeDictionaryDict index 14b5de4d74d95d4227f02a486a6668cdf35a8757..20e144dcabe4399cd6012378b5f58458964c32fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSchemes index b3b4c5890c0092da7f7773ac867dc357091ae97d..42871a9ddd68265487b72fd135dd50d4d94da200 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSolution index 2cd2f86fe9f298938743ac8e195f9308440e4d60..85df1b20a16ef95558106ee6a0a3967485818441 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSolution index 856925603d57378fe161e63068ed5ff54186250a..e374fc9835703a694ec5c074784e951d3e49db35 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/changeDictionaryDict index 66a558db3fe7eeafcc3c0175e16e5f41f60dfb61..505f22123e3309033a45a82b4bdf7efde2126d5e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSolution index 0b62a5e0d1f0979f90104546cf8bc7255378f1ae..cb92dfc842c7e4737f3b4c27fae0ec469e6a8845 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict index 69186122f7dd12d3cfc186ffc0f097ff8285856f..8e1380134ac7455e9e9f3d978c7b875d67a7f514 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/T b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/T index d03ac4b0bb0f58f90b93f31624cf005a2561c56d..cbd09bd7582f3b7a20b41b85d0d82ab3cf68b263 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/U b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/U index b0b75e8f32843c9324e182dd48d672f7382ffc42..b7bf73b1357a6244999a41081d75ce70e444e24b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/epsilon index cb34a5f312e0ea6096d178c62a5c2b4c481a5d06..b4b21992c6126db0524eecf1d40434fbced1210d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/k b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/k index f6c5c2210f8a0e0f55ba4d1c1334c58b66648731..063eb9085ad94dabf20f25a7b3ffefd48133abe8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p index 78f4522964fe7e1aac155b38fed0632167eadf8f..9a430fd79f327a6a8321fd7f56f6069715b6ff5c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p_rgh index 00e75111a1d9b6a951e39d64730c4f9f26a1d29c..ec657884eacadd60b587c1f1706d47bfd864c2b6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/thermophysicalProperties index c328fdad1ca522ffac00b78927930f919206a1cd..ea174f9a97dd20c087d4254d55aa5c8cfda22623 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomWater/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/radiationProperties index 16761a9e3a844e93e882a43fdf639eda14404b42..439eaa9c891f0a40a0d772dfe1b6c76b82d848f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/thermophysicalProperties index 046a37a7532a72efddb5369b20e131890f23d9a1..73481e9db3c44f1e4fd5811b7eb8e177172823cf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties index a6ad8a69b9fc1c8040041fcdf93dc19406ad2e01..78f63d6aa3b5f681ea229c4873fb0f6444741ee1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/blockMeshDict index 579466f910adfcd086848f6ade84f3b4024c170d..c4f51efc628fce49ed7fe16af6289b93bdf88ff1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/changeDictionaryDict index b0d857f5c24a401f5b39966246cf80d9ed6c822e..f87235d058e981860de7c9fb55b149d916c3c6b1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSchemes index 4797dda84ce73749fc7f78aca019d8afd41ee9d8..b92f1e137eb52a7f110efdb0830054e470b91780 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution index 2449db444afa54fb725e0c773ebf60bf797018e4..22f937a325da0c8cfad673ee085cb41743226f22 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict index 13eae10d398bf060e077c870f927bc2e71ec8465..e74dfae401a7c3e5ea470dc11b7b58675361b8e9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict index d841a02873316182f2ec856f6df47281b07aff03..124f4c36c253a84b58daf216d9f2fd77cfe99b4b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict index 967dd721bbe8b4e5b0e67656c289ab5c5fd3f898..47356d07e42cdc59a584e92e25c3ba9f4994edcf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict index c95eb05613b563b690594589023d8b23ed883790..cf38aec5275e9fb7fcfd7d4ffe29c98185c17bb1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict index 138de259c1ffa7df686263f94bc6bdf84fdc949c..881aee1ef12bdae44006ce4d40a9301a41ea773c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict index f0a124c74409cfd0dc6060e9317d84b934114972..2f4923adc712395e7e9159b223d3f58a29f57ea6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution index 2449db444afa54fb725e0c773ebf60bf797018e4..22f937a325da0c8cfad673ee085cb41743226f22 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topoSetDict index 1a3fcf53762cb09107ef847d887df385c6e46049..60cf18fb35ed8fa8aab30d7e7d84dea93ae8a557 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/CH4 b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/CH4 index 64a1369fc6885ee4be1dd8fade3eb40ab5d4a1d6..3114f64df06f62a46808edc8bbf32b78a2826a7d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/CH4 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/CH4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/N2 b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/N2 index dc8e7e09dc450453f4fc412fd8265e0d0a61d11d..28b8c9a250e85d8ca38e3348c4b499387c5d2c8f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/N2 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/N2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/O2 b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/O2 index 9c0284e1f81ca8e3e3ed29e224cfda1619d41d5c..80c29da54811761bf1f0dc34d0bdeaacdf87f99b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/O2 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/O2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/T b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/T index ec86f30f0fba1ff70ce647e246e49b6201396ac3..eb7031592b2416293210070915dd2de5ea67813f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/U b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/U index 132a0372833d796daf088373d7590f267ec9dd15..e7d0e69ccee2875b095eb1b09a8480c26a8c8313 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/Ydefault b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/Ydefault index 35a43eda9d9482e57f90eeadcb5169c40b1e0b7a..5a6f0e69646f9b30161dc49760bbc674870ce567 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/Ydefault +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/Ydefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/alphat index 6cae2223be25bb7df979481df6867ae4a7ff1487..f2d8836de5fda09714984c865b8fd7088d9971d8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/epsilon index 7a8e28320b54e58933d880ea3f43f5e2d9a872f2..b52f1ea7e62d5e35b59d0f7fdd61efa5f558ff05 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/k b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/k index a082491440208c14b03460fb7d7dc881b0419aa7..fab45e9b1b2f896fa20595751506deecdae1adef 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/nut b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/nut index 37167be96d1eca91055fb43e45f28549f1f19f67..ad34dea2ee4b57627c23cf56ae9b5ac2890bea7a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p index 20d9d18dfc4790946679561129cc8899dc85b2b4..7586cd6718b0d3f603fda6166c3376f80161cd5d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p_rgh index 86482c521ea4bd73fa433328efc6052e6e5809ab..b1ed444d0c887200779b36f8df7785362aeb38a5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/gas/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/T b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/T index 3f6d19f8ac0e04121c8fdda019d877815afaf44f..f86ccb8b392ed3fafb7df4f2ac09308b6fb81959 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/p b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/p index 285f3b4728628e131de891273c507abdf53a8fea..4155f7b0c29ce9520f37b6b3f43bff7d8d06a3ec 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/0.orig/solid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/chemistryProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/chemistryProperties index c4e8f3da94084002ac0a7a7a921efd74e3b8193d..c393bbf84a79ef0926caf2535112800e2844bbd8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/chemistryProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/chemistryProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/combustionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/combustionProperties index 64c7add384f9675614227f3782cf8011249a0e89..6102a8f92840319f0f0598d7369ff530239d3adf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/combustionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/combustionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/fvOptions b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/fvOptions index 2fd3b2c071f06c286bb8cebd3f4a119295c7d4ac..3ee0cfb0f8fbb7111780f85ea4142b5aabda107d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/reactions b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/reactions index 7346a0cfe4c239ea799fca5d796a6dedf65f5571..fce3885e82b257f72c9bde25fc0c609f658e37be 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/reactions +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/reactions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermo.compressibleGas b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermo.compressibleGas index c7cee992880ea87b6ab954d80a50de306201a092..035c536c4139d22ad86a55a61f83a19756189615 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermo.compressibleGas +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermo.compressibleGas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermophysicalProperties index a45e8bf70ec14e1c3cc47c9d70ef3af4d2868447..e860673922d6d6a30f3905510623e6aaf4f90362 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/gas/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/regionProperties index e488e34d309cc2e1cb11a5fb95dc47c1d9737a47..970400bee465326a08b61af7ac53d79447542bd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/thermophysicalProperties index 046a37a7532a72efddb5369b20e131890f23d9a1..73481e9db3c44f1e4fd5811b7eb8e177172823cf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/constant/solid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/blockMeshDict index cf3862b4a6c7228296748fb7cc3af9f4bfa0c300..6196b7b878aa23bbc596ebd409f55ba910f6847e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/controlDict index 72f3f33d03c11dd323c60a8c15891e8c98ef22c1..4510897e9f71e574c8c5157eadbe1ba524922fe1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/decomposeParDict index 489d54b3ad727e41e1e46607268689ff85bd929a..f66c0aea120a15dbe132a867fceb86950e593bb4 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSchemes index 53dc365fa502641431cb31fb333d16f09911532e..e6ebb9589d50cf825dfceef4252aacd30ae34f94 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSolution index 57e7381327ffd610f35311b8109e9a1f128c33ab..e07d56629bf96b63e1a12c618910334397039ed7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/topoSetDict index d8f9e89418420eeec75cf106463f709e99d73346..f14823f68b0ccc72b058016b92ebc23a8baa59b3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/gas/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSchemes index 1b6a730291277669c3d9a32e91cededf7fe42154..ff51380468afdb0c6651a8e0eea89729bf6a8a11 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSolution index 992010aa49aa231a207cff6c8e36b866097f5d0d..07ac5742e08e3ac1e60e6e0df3afaef0ada9db4f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/reverseBurner/system/solid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/T b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/T index ee661e35bf30cefb59007427ada84b0c3205ce00..54c8cc619252e1d93722090c4ea34197e0e5c594 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/U b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/U index bfc7f6f95554c1dc83fd86cd4126e4cc89086e33..82f15ba02b10b7f5fcc0adcb38cf2dae94cb3972 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/alphat index d07f04f9aca6e3e270778aaea59721fcba35c7e1..017d37efb5c63d15aca1d3fcff02b474cd097b05 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/epsilon index 25ce4288ab401e21938c74d77afb73f02b5cacbf..dbf7e1319862f03510700a9baa260a26e80c210d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/k b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/k index 9bcd96ef748cd21508b930dabd886d64214fbe1d..40197e4612728bda3b1b0abe0fe1c643f6d05c3f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p index 5d1ca440cc309699f27df48c986e9dea009cc26d..a94b2183a8aff3225eaa798279ea332769a9bc0f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p_rgh index 9d06f9f044257d51d732cfb4b295bc3ce316ef19..fd201afc29c9832c1912a48893e565308171dcd5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/rho b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/rho index 2f57e8c8e948a1ea954c69a4208ff82bda553aac..e1d24b7bd96987cdfa3b55164772e7510c4b4fa3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/rho +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0.orig/rho @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/radiationProperties index d9dd4221a96bf73335cd5138e5b31b7b2f564caf..0c288b87b5d984e8d3844c389d124409a9ae1209 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/thermophysicalProperties index 9c39812d00647d152390f7f2a96c4a6079224055..a5347d57ffc57962d9e9393f9fa5f53c012d883a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties index 50f2f2891806dab98f69c6666f18c8aab41a87fe..889bb2cbeed96dbd04dbc9332d9bac8b5067bd14 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/blockMeshDict index 579466f910adfcd086848f6ade84f3b4024c170d..c4f51efc628fce49ed7fe16af6289b93bdf88ff1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict index 97de974f8be53ef495bcc12e49b44fbb41f1488d..264d6ef15735521758d259d571ee2a0267160943 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes index d8626a370e8f5e7e7bac8a7d5f855de092504c82..b690be0946669f84fd0e3589ef5eba8ceddbba78 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution index 9e87f18af6a05f0f16423c65e511710bab5823d6..4912bcd57fbcacf7bb1e0ec592e93b727bf6eb11 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict index c459b1ed09b720b39fa4383ea75793aa7d651eac..e2a5490c44579807ca04ea7931dc5c0e264980f6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict index 135858055f43ef52a1e5e5a9f5a694a483a7d8cb..7107765d35f1131c5838f49c43e4255ca19d268f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict.6 b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict.6 index d52d9af839f0fb33874e47b38b0d0e855cfc1e8a..19133c8d8cb755feb64e963ad82198ba7cfe0aba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict.6 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict.6 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict index e19a8f959bddde149be03f83b459c472591f9f86..d2dd8ab93ade5e9bb1c34523b39c0bd182162f58 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict index ba96716addde7df67150f6797d367583dfc9e2bf..638c83b316641de2ead9a338323691b1f392ad89 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/meshQualityDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/meshQualityDict index 39a580144be92f744bcafce9532fe0ef7be7324f..7f34616212ac22c6d2c464830dc74b219366d412 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/meshQualityDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict index dd2577d6c72d1f3b051c51884aa8b25f2bb352e1..186cc58c69a0836e94706dd2c997e3c0cf7dea78 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict index 59680c1095e9f97c7dfb4b9eeb9af24699e4367a..6fd4988e390d66de51145486766c2b358330055d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/surfaceFeatureExtractDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/surfaceFeatureExtractDict index ca61d26b1d561ca786dcac035fb7c608fad53e5f..c1e20345986a81a3741c01e0ccf834a02190bb84 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/surfaceFeatureExtractDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict index 00147f007f5639a1fd47aa7183367676ed6a64a2..3206ce0ab251f9a75eaf789de25984ae7b4d9b0e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution index 9e87f18af6a05f0f16423c65e511710bab5823d6..4912bcd57fbcacf7bb1e0ec592e93b727bf6eb11 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/T b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/T index d5b12ace8836ad315385f946d580a2d51211accd..d5f85ee8a5f6efb64eac51498d70ad4cf4121ae8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/U b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/U index 29071499a44181cecfb2d30a25164c37f7c5aefb..477dce256710f058d96ac733ebb7f4dcbcea9dac 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/alphat index 8a92c370fa5b2d135ca6992d4fbf6829ffe37b04..bd58df639ad43da6a4242c46be013d98e5c5a45c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/epsilon index a970107365df9f8c785921ee4a97b9cc6440da26..9a305bd271896b6bf7c7d8987920f1718fdd4718 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/k b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/k index 195ee30e70ceb38aa8f7c7b55599e6ee0b6e209d..0ce71939ff8c2d048083a58a82dcf0b35f18aca4 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p index c023fbb9e2d608f9a968d5915e60386cce33e3b1..3d141749087bf9a6a4b5b856e7fa509449b8f018 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p_rgh index 9e508f9e5a9a9c3418124418c2729dd4c893f063..e2c8bb6402d8a287ff4accc3a1c2bda535456f8b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/rho b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/rho index 344d4d82e5df42043660874534ef576662e03468..0e3573c824afa268c9a06044356bb5c377491a49 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/rho +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/0.orig/rho @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/bottomAir/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/g index 881915bac2ffb18a71d91b9d578481c4b1a5eedf..32870956d50713b0b982f27ec3b8d43ef09b4105 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/radiationProperties index 3da5b0e1d809647e1f934e52ff0d6c21a156dd1a..eb875982a4d9d9e6c6bda07aacd8470b80a1b998 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/thermophysicalProperties index 208e50d47b86f83f7b1008fad6858fd422a787e8..faaf30217487950db9d0b9e77c9e9a6bbb858b14 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/regionProperties index bb33d91711bfff01d1de462fb894b970d1376172..092e980f95322e362fc651350aa5cbe9444f6449 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/blockMeshDict index 58d494eeafc3885c25a0d3860dc83e72aab52b1a..dcb344ed908ec4df3b06e14224eca0557a89fd2e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/changeDictionaryDict index cde9f56863add17e0fc31390142988d81fe7d96f..805674f1247d321cd7314098d4af37c1472b679a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSchemes index c5bec1d1799d6e3c0ad7b40a96228914baa95375..ca41dacccb22ea1577f56cf5a607b01367d680e7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSolution index be13879708e9ed21345d8eff4d34edc7bf460937..d5efdb37902601e138bd24a48e56fc6a3ee75dd1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/bottomAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/controlDict index 61b2e8a84111d1f6b7d2c3de895732c1c07f7981..433cb8f06717e1f8b641f4b44abb07ddcb715f45 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/decomposeParDict index e36962e95d17b8bd9bd387ad2df6e5abccfaa2c4..d5b1c40a515b9bfcc3fa3c2d1f266a40bd74fb50 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSolution index cb5872cc000360c2f15ac3420157d7baf6060f66..41c9e685f85a769a1894279be889a44e0afe7250 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/changeDictionaryDict index 428bed97bd6337e73f80f6deb64f216b10d0215c..39a9404a3462c90cb237f9ef18f4a6f613a0eea4 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSolution index f94a03f4ddb65d9821a0cd9245e536b8e094824b..677894d5db542a926545d794cb98a84a20f98798 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/changeDictionaryDict index bd1729c54d004f147f39d5d7ad86d5a7037db891..b3254a5ece0580d5f532dfbdb54ca3f8e13feaeb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/fvSolution index f94a03f4ddb65d9821a0cd9245e536b8e094824b..677894d5db542a926545d794cb98a84a20f98798 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/meshQualityDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/meshQualityDict index 39a580144be92f744bcafce9532fe0ef7be7324f..7f34616212ac22c6d2c464830dc74b219366d412 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/meshQualityDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/changeDictionaryDict index 28a453a4d032fb82131c87134472977b92058c93..eaef53b65d0ddc8a222224052808d75730cab6a8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/fvSolution index f94a03f4ddb65d9821a0cd9245e536b8e094824b..677894d5db542a926545d794cb98a84a20f98798 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/rightSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/snappyHexMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/snappyHexMeshDict index 92a8ef8760d1bbf2e2ac2fb3c66f3c832f2f87f2..9fb29f263692143502cf8902247fead4468cc418 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/snappyHexMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/surfaceFeatureExtractDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/surfaceFeatureExtractDict index ca61d26b1d561ca786dcac035fb7c608fad53e5f..c1e20345986a81a3741c01e0ccf834a02190bb84 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/surfaceFeatureExtractDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/changeDictionaryDict index 9a295de4a4f765dd5314a34aab6132ade1ac5639..62114167d34ba7d2dc184d0bfd42f44b16c59057 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/fvSolution index 33f765c6e7635bb8785a829e8544549ed6611de4..51f5b0a86ea9936d52e1b5df8b0ad74dbbaa5803 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topoSetDict.f1 b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topoSetDict.f1 index c54c4072448801aca8f62cb45516fc648cfaf21d..33330437d10ecd7d48e4572bbbdc38a71e324e80 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topoSetDict.f1 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeaterImplicit/system/topoSetDict.f1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/G b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/G index 0ea39565e2eae0d9f373428ed2065297a94f6dc1..a3df5aecb1c9ba31645279e57cd18312ece024b3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/G +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/IDefault b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/IDefault index d5cc1d5b7c4c233d976fcbdce56c30bcf8780a8f..997b1f2a4c7afb45b945ae9653bee8de4da34089 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/IDefault +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/T b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/T index 904eb96ac36c90e68853b9c6f1a054d029101a26..6e2e0771994abdbb7694337f57b069a424711e6c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/U b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/U index a4384c55a0587d3c19e1b0925297ee4cb4d6f33d..275bcd34d5488d4b0c9253bc68dfc83e763cebbd 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/alphat index 8e680a05bb0215cb34881bab5da0ba19a99b8cf2..5d15f2166a438702eddc0cb8ee4585c903163f67 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/epsilon b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/epsilon index e01967b781c10f4ca210e27508b792d11829d2b9..00c1a5f09e3f46039e74c465bbc6533925366caf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/k b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/k index 288fe59e073ae0b05a19b2e36075996aaae6479d..fc92e001f0e378d35a08b97bd77d7ad25c20b754 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/nut b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/nut index dc8b851eee956bfc7a3b05045eba43d2a3354315..bddd276585fe8d71b19c3eec61b93894882bf2e9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p index def80142c9c8cca4057b7252818599db5e1222b5..c79a74eacddc58fc199c49582c62dee6048738a5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p_rgh index 4711aaa5ee2011fe919c52a40c105d78e0cd9e01..0d3aaeddc2eb63427d9000bf26f9fb3d54d2a6e1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/qr b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/qr index 2152be18cb447e00863420c64c0d176891bdc5e9..8472fdad656cae739ab16959051867221cc7eb5d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/qr +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/air/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/T b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/T index 96f03e8c703c97ae8ba9373381150afef3b4ef5b..6c97d9385b9e5c73a6568c123149d561df3b2341 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/p b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/p index da05bb237dd015afb484204e648f3973ab55a424..a0605cce09856919c2b0269f8f7223aacd2a05c8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/floor/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/T b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/T index cf2b0b5b52ebdc6bb68ef986567f831e7e045f00..57cf84a976a6370356c060e6e6dcc6ef6c51ee18 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/p b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/p index 775b1de25b288a930787b31486cfceaf859997e1..dd5fc571a9c9b55f13f5aba1d70465d65198bb4a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/0.orig/solid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/boundaryRadiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/boundaryRadiationProperties index 7231f55ea246aeed6b348e214e3a0a61004f4468..36884a3058eca9d248b3685464c43c5a13e627d6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/boundaryRadiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/radiationProperties index 1497df87349e3e5b21c64c5e76a7cd07edf5568c..7b86800138c7592cab2c93fb7c5f2c33d2e6b8bf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/air/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/radiationProperties index 3896742426dcd08c8bd1de35b9c5022b1212aa14..8cc0968b39bb1ee339efcd1a9c6393d21ad054b1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/thermophysicalProperties index eac73eb6c93e542bf62e8022c365618116fc1920..604d11c91ab22cd5d1ba9f96bf70ab948e5c7f10 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/floor/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/g index 2827cf7e6577363c98679b48b003a640ef5d1f5d..a91ff9e2472c1d9e51bc577ca7596ee048bd671f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/regionProperties index e3136e2f86589e27c688b50adcaecc23e1415c0b..572291e6374444e9466ebcdb918c881d3554bda7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/radiationProperties index 2ed7dce198989065f258fa57703523206355e0a3..3df0c9e169578cf4bc360420484b3c9b9c784877 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/thermophysicalProperties index 2d8d2f81d51a289596b54538d92082b59e50a1b6..c7f79975ea744113d80a6159f570082ca5040ff5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/constant/solid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/changeDictionaryDict index ca0ae8b563c07afb35da4dee303ad06ac70642b0..0779b8599b0acc95b1c701ef4e473eb3a0922907 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSchemes index 105fdc1e7d8ad7e81aaf9e5f7c852304520c0319..4a2f064e4d9e387c01a02d15f2aa8bf9697d29fb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSolution index 45ae7e9ea390b207e37d7d020ea72cb998ebe1b5..2b15011d8b603aa4358d29e83ec98e39a25be495 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/topoSetDict index e2136f87864824831e8aaf3b977dd1c158b91091..076457f5df11f712f2da67d9dfa794a5adec250a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/air/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/blockMeshDict index 6959bddc615c0b361ae5fdaaa1e489bc4498b119..f48586d2d671fa311c34a8d5594996bec307daeb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/controlDict index 1fae8453a2432e59e27f5f6fd40678c429af6af6..45d57715d86bb0a96040b89c186813126b5bfec6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/extrudeToRegionMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/extrudeToRegionMeshDict index cf5e5b18e7808247483c36358687228c19e8527b..4e25fb33d4368db53607fdcc45d4cd33d0b710cb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/extrudeToRegionMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/extrudeToRegionMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/changeDictionaryDict index 14b5de4d74d95d4227f02a486a6668cdf35a8757..20e144dcabe4399cd6012378b5f58458964c32fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSchemes index b3b4c5890c0092da7f7773ac867dc357091ae97d..42871a9ddd68265487b72fd135dd50d4d94da200 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSolution index 2cd2f86fe9f298938743ac8e195f9308440e4d60..85df1b20a16ef95558106ee6a0a3967485818441 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/floor/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSolution index 856925603d57378fe161e63068ed5ff54186250a..e374fc9835703a694ec5c074784e951d3e49db35 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/changeDictionaryDict index 66a558db3fe7eeafcc3c0175e16e5f41f60dfb61..505f22123e3309033a45a82b4bdf7efde2126d5e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSolution index 0b62a5e0d1f0979f90104546cf8bc7255378f1ae..cb92dfc842c7e4737f3b4c27fae0ec469e6a8845 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/solid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/topoSetDict index cbcf90624a4edc8854af83249b66c707f91a18cf..6938bdf62da1379d4b75328e9584ccbc1fe6fd27 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/solarBeamWithTrees/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/H2O b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/H2O index d53f67ccf98efa643eb321bdf3eda8636eebfbe7..698161d2f8d77d140bf1596aa067788286104d24 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/H2O +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/H2O @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/T b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/T index cd52ea14c459e7a0b52bded33de0ce2b7fd3aa18..0fa567fe1b03a439a0c28ce8f44c28b72b755dce 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/U b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/U index 522e28fe787e26a3f117ce9ba67baeabd4edba5f..925ff1ca755418bf36f7c5e1ed3225dc732a7478 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/alphat index 85e5f9ec9a91ec4ecc4421eed87af1b457fc0f3c..dd62da9b4bf14055abe0b46b6655c4a731417888 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/k b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/k index 4dc04310b2348bc94949e51b9808cbe6afdc5e63..142f6f84d5732453e0b4300b33c175c08447f92a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/nut b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/nut index 3149010ed85bd323ca018971c9dbd4948ab9bd07..66c0d0e1f8aa5ec79b99cbf4a6cba3d2ca851660 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/omega b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/omega index 897b5eb4994d926abe48b5b710705fcfef090c52..e0f18082572e0f81734f3d2cfecf5dd4bbe792ed 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/omega +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p index cffe742e460301acf1bc95bbb29e92e6fe2883a9..a6abf8dde120004ccc0836d73da34a50e3504be0 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p_rgh index 7b1f85d5e5ed85dcfa2bb903aefbf0d706c6810e..8087c10aa0e73b6f3cfa0362a2f563a368bba547 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/cabin/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/T b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/T index 67ed0aff42add5a7fd4ef85758290a8be1a3eaec..bb694273647a63235396f753ab02d0bd41e71b6e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/p b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/p index f575c3a8c907490d6e04086aa3543dc128407140..c55da50bb8a3f41a59f84eb59097db3be08f190c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/0.orig/windshield/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/thermophysicalProperties index e66a626b50f6d9bc3557f006973c47c1c10e2820..3a3330a9abbda626653ca4d947d5510d9a4f5809 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/cabin/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/g index bf260deff8b4233ff9ddd6fed2639423fd67b52c..b761ce1685ba3e3a995005f2b6d27ba30c2a4ba8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/regionProperties index e76c0f269c31fae40b71ac91bb2b6f2691e4683b..0bb5b5ce3172ac0d2bb479fa5c86ece82ad71887 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/radiationProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/thermophysicalProperties index a77b226549a7e445fedc70d4fdc036bdac24e15c..741547c77be41fa28d86b158bac0632dc5f0523c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/constant/windshield/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/blockMeshDict index 823647ad923d78e167c5c7407107b8cefe4496b1..ecd2c88eb47811630952b5dd84d45604c092de89 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvOptions b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvOptions index 6c9609977c30f5bab457c2f57a91eb92daa4b499..444d65d7006a3327b28c1bceef2b8a2986d6dadc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSchemes index 77acb4a9bde1544ae310217c92a7b7d58f9d41ea..2a96557a8a875adda9aaaf1dbcacaf4ade798055 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSolution index 21ec99fb50ad65a02ae742b7ddde226bfb76105b..3bbe24387f7a902aa65ad1f6b52aa4ae8ad5589c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDict index fc4ca9f48bc5d1dd8891530dc5e3317708cceda1..fc34bcec5283c504376ed1c729c529a283d3f314 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDictRegister b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDictRegister index cd9699b664d4e03cee6ed866fa368e836eeefdfc..111a02fc4ed89d37ddf54139d5d21c82a2a497d1 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDictRegister +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/topoSetDictRegister @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict index 24de14eaa86ced2f1db052fb616da4a480ca18a9..1e3689669d2a48027dbe0d4899107f6b08ed92d7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls index 811530dc066feb3895db4ce6895f8d8c6485d631..6ef3864fbefeb250c73813e8ef9299dd3dbd3f0a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.0 b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.0 index 481d59e5e146f495d1668148faee73991a1eb209..38d73b41f0ce4bf576816e71b4cb213238953f41 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.0 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.20 b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.20 index 4064dab8ee07600a3bad5b95e539b8bebcf812a4..7144b2ae6db11b3ddf4388f75c0d8cee9ea54274 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.20 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.20 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.5 b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.5 index 112641764d525e82b76398cd2effd35f745073cf..c3a89e27f670fe1642e62cacfbadc9bc20c8d218 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.5 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.5 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.60 b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.60 index 811530dc066feb3895db4ce6895f8d8c6485d631..6ef3864fbefeb250c73813e8ef9299dd3dbd3f0a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.60 +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/solverControls.60 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/topoSetDict index 316a80bda40f00569c6a89ead935352f3839cec8..fecfcefa9cc0fbc4bf604d8a324d8cbf99ecd6e5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSolution index 32161300347bfcafcb90fa0243fe3c3e87141a50..7e53d13d7d25de0afd8680321b6f292035ca9a86 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/T b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/T index 3b02d1884f519a55184f0f6a9be882d44943a73d..70c67b7e15189cc0fc08fa2f49b94632d6698da5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/U b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/U index f5d6d641cfa76b14fbcb6445349c53ce4ef0f01c..6cf0c558030e72c8d19e334b901c9b10bb0f2804 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/alphat index 72cea410b75c7000519428351ca288bf03621a91..68a2245d8279b11cfdde35b8837f61d1582ed2ae 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/k b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/k index 6faa19a42056c6626d56eb5a8dc9623a0b899c88..427cf83a68d677cc1f3e9edc30dc0d0bfcdfc321 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/nut b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/nut index ef1a0771a7053242279c90eaba649b1345ee0a86..70479b403275fdca8067641112c4e794eea70acf 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/omega b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/omega index 1a015dfb5d4c0ef51a02162fc587e59bcbda644e..42fb37a4ecac40cb298c3a66be1a030c1e4acd9d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/omega +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p index 5a1c3a47c876d4f353fded6d559f7515c7c8efee..80db8d3c025353c2f8a54a913bf2609b61c3a1dc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p_rgh index 20bdeb31bc252c036c8a81b26e912df073d961e1..48a1164cecef2de2d2039774f2436409dac95012 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/cabin/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/T b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/T index ca53439ef3ffb0bb620c6aae3d5a9abf951550ff..0a9758506caba4a96d93b486710f35ce14fab7a5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/U b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/U index 1c77173f30f4304eadcc0b32e4cd6ea8ccc9cd04..8092522cc670c4741a852fd63b5508cc67fae57a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/alphat b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/alphat index 1e947c88cdd61961572b52600cf0403fb21f325e..b0683b6db29bfdfa5ad7b526c277fa6b86c6c8c3 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/alphat +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/k b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/k index ad47c78cf14b77b4d7a5a6b9aaea4ffa790ace66..7ed921e0b7be7eb5e37c13639406e5644d8a2b88 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/k +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/nut b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/nut index 19e78d567efb84e4c39b2d200055abd3ff3eb097..ed8566f58c314466a2217e1458079e42e64c1c3e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/nut +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/omega b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/omega index 10c0e1bd5fd0b1cfdc63f0b54a03fc2c085bd8c5..937b7ef68e91076f6a19db761f1a83f5121a84af 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/omega +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p index c3e0b22ff9c46c5a251f4d4647de887dd7c0a2ca..eb40c226a8e628cbfb79bc2e45d1d749ca2f592c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p_rgh index 8a4f71236b9c5ffadbbcc7b6bb3d4f6770c93a0a..7caead7b3c828b1bfc45124042003210c6222fcd 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/exterior/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/T b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/T index 623661806a8ceb66376bb41e6c55442a3ac4debe..b0422032354ab06b1a0f2e65a710a48c2f3060fb 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/T +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/U b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/U index 0c33b6f0cd8e623afc3d4a755cd6adbfebf80493..c932cf3d57416c40d9ec5d47e0de2c2bcf97d8f6 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/U +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p index 0cd9f410f938f77017a4478c84d4e490cedad366..0105f1f701ccbb4143662997a7795f78e6e19d9a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p_rgh b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p_rgh index f4decb77c294a42814e855ee7ceb3d4774fe50ca..a5854ae4badbddf2466c12b4e6275bfb7dcd0476 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/0.orig/ice/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/thermophysicalProperties index c3dad8597aa2547813682b7aee831b3f7427d253..e4772e0acb8a1884eeeaf4d38984536e6a3b425d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/cabin/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/thermophysicalProperties index c3dad8597aa2547813682b7aee831b3f7427d253..e4772e0acb8a1884eeeaf4d38984536e6a3b425d 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/turbulenceProperties index 71aa7f83af95bdafeb37ef16ce0b34f4ec56f7a0..5deb96622538a2ee348371b07a1680bfbd998f64 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/exterior/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/g b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/g index bf260deff8b4233ff9ddd6fed2639423fd67b52c..b761ce1685ba3e3a995005f2b6d27ba30c2a4ba8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/thermophysicalProperties index 9bde5d879444f16af7687ef2df013a1cc46271ad..d61d7891b301163ce4cc8bd26f43fb49ff3c4034 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/ice/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/regionProperties index 87a1a56d381397580ce44add233adf904eba3d16..8bdfa22766769ed2d1cd43f42fd3119bf958b99c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/blockMeshDict index 6f751ba407ffed554d554fde0f0c969e0a476558..8024043864f0b2e46bba11d6138cfaa8577422cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSchemes index 2b53de9a535e3537f38f4e9d198a7ab3584e1e83..d4c4b54d82fe0eae099329e258d03ade0d51b4ef 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSolution index deeab8e51cab147859ef2cf65d9dcbfacba9bbfc..16a1cd6261b22565457337a3680acf01b730f7f5 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict index cf5c21b7a86bf1d922e8794a1a84cf28cde37514..bcce39cde7f48cc0ba88f015fad4a7b1a3fda312 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict index 94c2f69c76ce74cf2a80fc414103d29ce72d546f..a2fa47c2edff8ecfe6be9a201467ca8c96d333c8 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSchemes index 9e0a00b84253682d7f9b444b6476d39a4f9d70b0..84c8bdeaa9f232002174e5118a17f18406214967 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSolution index d7a4da0a3d67b53676022f014e3165c54c292856..2554c1ab63f0382ac9b404cbf37d0c7e958136d9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSolution index ffa5495d02f7610dc148a5f66f06534429ca79c2..6233cb000878554f9d30ed241713e427b23c1c16 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvOptions b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvOptions index 361f5c70f897a7bf625ac9da422487d622db1a9b..65296eb374b3ef7c281f958d16dc97697803017b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSchemes index 829022e560c69ef4c4a356c196079c02716f7c68..534aac8b779e140c007d20febac1993603633577 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSolution index a9c63ae66002eb9bce171f718da7f7510e60a390..cd06b206d3eec08927e8afccb1108d18b633179c 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/topoSetDict index fc4ca9f48bc5d1dd8891530dc5e3317708cceda1..fc34bcec5283c504376ed1c729c529a283d3f314 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/T index d17e85edb81e41607156268437cee28eecb03598..03e4c8cbc0d88c214b74b1b6bfe8d41ce622873b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/U index dfbb4022923b811002a6c14caf26c3d869279aa2..e27a2d34847dfb76dec3ff9ba6cb3ec2aeae06a6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/U +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/alphat b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/alphat index 7979fb0b34bae47ff7f33eb966e90377344d4e05..aa6ae05d11a22a0b01a7cf0e93eda0f92a4455c8 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/alphat +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/epsilon b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/epsilon index 3765e24c2693fd18b0f326c7d073b46e91925c18..d94f2af733fe832711a7aa45ed80a91105407161 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/k b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/k index c58ce2d7103952e44341851e77f4ee8cc73e802c..d58fd59f5e98d9649e2d0e36ae208838497e4a8d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/k +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/nut b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/nut index f3cf865d674a26862af0d17dda56259b924d7ddf..8f74fa1b551da1a9a9b8f5fe8a9b7c089cb5ef02 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/nut +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p index 9d5f05eddc0601cbcc64cfa826b61680518820ff..b6abd17143766729daa7d813b4c9f2c712b3373e 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p_rgh b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p_rgh index 755e4af0cadb5e2cd4905e071202ff8cbe977593..883a4a06566943e0483e0fdd58b93b3ec075ddca 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/domain0/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/T index 7d9873f9c027a36864eb2efdf190e253098efd24..ffe7903e7753b13cdce7c06340d15a1896d0fa2a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/p index 0c2290f0bbb3324ce459f40d3319fecdea50aa1f..04338109136dae31732d4e315ec420b6a5dafd25 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_CPU/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/T index 4b71c82e1474b5add32a62295cebd06805e3e820..fc5e86739219b0bfbcfd7c4f0c17487adb16c004 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/p index a440b5a7af8081ee8c229c276e14923709f9a3f9..3767e1510c967401e80755164076d5e7e57ff101 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/0.orig/v_fins/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/MRFProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/MRFProperties index 3e240bc9721df7cb633ed939ba90a46fb062aa05..4e2383e0aa2f9d9b49d5ee520103fdb168a9df81 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/MRFProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/MRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/thermophysicalProperties index 488c633e8377e0b99da3cf8a10077e1ff66bd08b..4bce275de74ec92222433e75785ba857c7861503 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/turbulenceProperties index 87e9c84200ed1c59755c0a706f2dad3b648536cc..999f53afd7b128201468a25e329ee076f5da8cb5 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/domain0/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/g b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/g index e9e130628f6e586e01420e7e6abda33bb81d64fd..27eddbae04e5eaa29c17fbdbc138c08129c70bfc 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/regionProperties index d6ddfdf54d6d09e8b2bb1ab9656748d80513e970..7c8ba5e75c4672ba172e75819f8e178d72670e51 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_CPU/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_CPU/thermophysicalProperties index e99a52668a89f68fc538dfeb979225756d08c55b..2c23bf22eb1272f9ff0a169dd91a0f72bb70fcb6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_CPU/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_CPU/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_fins/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_fins/thermophysicalProperties index e99a52668a89f68fc538dfeb979225756d08c55b..2c23bf22eb1272f9ff0a169dd91a0f72bb70fcb6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_fins/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/constant/v_fins/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/blockMeshDict index 69a719fc5b0d84a5ed7519c069d160a343b660e6..357084edf95675aa653be154bc23660ad51d855b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/controlDict index 7e1849e766475adf840fc441180b967969562d42..b9ec577398c50a0e5441243785933966812dd2fe 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/createBafflesDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/createBafflesDict index 05a215b8b086e5ec1626e02f8df6a5c210c0f697..67e40c0e9d5648fec83c09ad352d01fc3617fe3e 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/createBafflesDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/decomposeParDict index 7735bf5a3cee723248baf9b5d62119a57064ee8b..e34fdc4e083b6ed3a97e160ac37ef277841e6544 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/decomposeParDict index bdd10553c40d4b20772709911318f038fb43e6fc..e004cc29d79b1256492ad63c06673058251bdcda 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSchemes index b88f0cf4e2d15823fbeb12f8e9c185ccf27f43a9..2531e314c864c205cc2139bd6a658d1cf1d2182b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSolution index fa6b3b4511269f96550722b3f5834755c70cfeac..01a42dd17aabffe2f67841ff1188348463ce2b6d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/topoSetDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/topoSetDict index 795f4b134515298fbe9ea3f81481c52c8842953f..9531b488053b7695b42131788fd1a306f3aa8105 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/domain0/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSchemes index d53d94b95de5e6eeb5df65aec3df3865ab31911d..f51b8b6ac81821e8357ffcb7e001b6a133e27929 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSolution index 22defbf4135008e2d39de34f19ad2a85eae9c8e5..c67ffe5d2e00fedacf0926fef11262ee89d4096d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/meshQualityDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/meshQualityDict index bc67ca2b5b871fb0a379360b20e3ca5021934c14..347b4308bdea94e8462dd99a7052ffc991283f42 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/meshQualityDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/snappyHexMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/snappyHexMeshDict index 2aacd513c9f314119ae1ba7ed8e175cb785a9039..8431b534ef31975e5d973e507d5df96f713e1dde 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/snappyHexMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/surfaceFeatureExtractDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/surfaceFeatureExtractDict index 5e5bb76bf24c4542c81f88a86a4cb205284cb906..6c84a1688c4444830594023c3b95c9e938e6573b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/surfaceFeatureExtractDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/topoSetDict.f1 b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/topoSetDict.f1 index 917d3e527398632cd1a828d54996a409d7104460..285c3da8ab31f73714b367bf731e1cdade063595 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/topoSetDict.f1 +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/topoSetDict.f1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/decomposeParDict index d31697b2e85047d9f157f093ae35683685e1f3da..e871ed0620ed8af917bd2a863bee61c6b0b6501a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvOptions b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvOptions index baa4efbc07c79bbc8a9fa6687aabef4ef29ad3ec..c7fb8ac45fe06d4b6b0043e3dba314d3ba64b485 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSchemes index 70eb2db3c5ca6030818df9fcc4315792b9a69e54..8adc668cb94346eb1c301f5e7e219e49c12801ec 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSolution index 997fcceac38f74565da9de6bdeee2afa45b2a426..bbfe1e0952bf723b98650698760064aaab09c66b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_CPU/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/decomposeParDict index d31697b2e85047d9f157f093ae35683685e1f3da..e871ed0620ed8af917bd2a863bee61c6b0b6501a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSchemes index 7db949feb17a400c2408c10c7e6f7e16bac9a08c..1dbe14c2d3629f2817326156e447fcc44184de43 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSolution index d5efca89b6e498b3459c6a2cab0eb4b19f4e89f1..21e60d2b791a2f5f26d5467c1b1b6d4c36690fa6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/cpuCabinet/system/v_fins/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/T index d03ac4b0bb0f58f90b93f31624cf005a2561c56d..cbd09bd7582f3b7a20b41b85d0d82ab3cf68b263 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/U index b0b75e8f32843c9324e182dd48d672f7382ffc42..b7bf73b1357a6244999a41081d75ce70e444e24b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/epsilon index cb34a5f312e0ea6096d178c62a5c2b4c481a5d06..b4b21992c6126db0524eecf1d40434fbced1210d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/k b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/k index f6c5c2210f8a0e0f55ba4d1c1334c58b66648731..063eb9085ad94dabf20f25a7b3ffefd48133abe8 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p index 78f4522964fe7e1aac155b38fed0632167eadf8f..9a430fd79f327a6a8321fd7f56f6069715b6ff5c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p_rgh index 00e75111a1d9b6a951e39d64730c4f9f26a1d29c..ec657884eacadd60b587c1f1706d47bfd864c2b6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties index c328fdad1ca522ffac00b78927930f919206a1cd..ea174f9a97dd20c087d4254d55aa5c8cfda22623 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/bottomWater/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/g b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/radiationProperties index 16761a9e3a844e93e882a43fdf639eda14404b42..439eaa9c891f0a40a0d772dfe1b6c76b82d848f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/thermophysicalProperties index 046a37a7532a72efddb5369b20e131890f23d9a1..73481e9db3c44f1e4fd5811b7eb8e177172823cf 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/regionProperties index a6ad8a69b9fc1c8040041fcdf93dc19406ad2e01..78f63d6aa3b5f681ea229c4873fb0f6444741ee1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/constant/topAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/blockMeshDict index 579466f910adfcd086848f6ade84f3b4024c170d..c4f51efc628fce49ed7fe16af6289b93bdf88ff1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSchemes index 93a15cf258d5e3b0ee31d35084084015f0b054da..cc397d887cb8df6a99ba8e5637d9f32c27c53b37 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSolution index 9d00ec96c37d825358525cf809e76c48884c697a..043f70fec760cd6ed29e59bbcf65edb10bd294cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict index b0d857f5c24a401f5b39966246cf80d9ed6c822e..f87235d058e981860de7c9fb55b149d916c3c6b1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSchemes index 4797dda84ce73749fc7f78aca019d8afd41ee9d8..b92f1e137eb52a7f110efdb0830054e470b91780 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSolution index a3d9c08a8aee00e1864795c73889b72a813cb00a..8079fed5b849d85c23cfd74d461d0d31d2a36787 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/bottomWater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/controlDict index fa3c433a0a069210ab4fad37aee94d92b941f5f2..2b46aa97c11f107455d5fd64ae667bb5788d2b48 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/decomposeParDict index e3827210b1216c8123a40f9b125582a205d8b07c..fd28a4f74375cf6fd67c4199d80c966e3b61f909 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/externalCoupled b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/externalCoupled index ec7d1d77c891785b8eda5279ce6f1302bde7b0b1..725dbc6e0e9bcfb7def20d79ed8f905fc48d214b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/externalCoupled +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/externalCoupled @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSolution index 62ce3f66687accb2d0c35cf4ca3a525bd59b3c34..b3a8ca5cca4ed29ac68f9b767a850c79831c7e07 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/changeDictionaryDict index 967dd721bbe8b4e5b0e67656c289ab5c5fd3f898..47356d07e42cdc59a584e92e25c3ba9f4994edcf 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSchemes index b5520f6506a8587db262aec15be1361ff2e308f8..b7acf35fd7cdc632df5a3bbdca6628d9be43070f 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict index c95eb05613b563b690594589023d8b23ed883790..cf38aec5275e9fb7fcfd7d4ffe29c98185c17bb1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict index 138de259c1ffa7df686263f94bc6bdf84fdc949c..881aee1ef12bdae44006ce4d40a9301a41ea773c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/rightSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/changeDictionaryDict index fb74db2d81c06599d75f3acbbc6defe77651545c..f201ff21d1b283742e9740834d2960498f0741f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/fvSolution index 9d00ec96c37d825358525cf809e76c48884c697a..043f70fec760cd6ed29e59bbcf65edb10bd294cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topoSetDict index f0e982840e154ad860ba0f3ea061953c275f1387..1b24d402c4f7e0a45e6442d4846173e061f253ed 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/externalCoupledHeater/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/T index 53a9f5634d1ee2ca84b173f4b3c91e5f74a97785..93043019dd7f3273f80d2bd40b7e728e0394bbb4 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/U index d5ad6b3c188e350a387627fceb34be39b1428ce1..e0c44a950486dcd7056b71d1b0bd1b19e798b26e 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/U +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/alphat b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/alphat index a52f51cd023f025acca8046fd5e352a60ee6b447..3eab3536cd10af6f3d72283cf9db57fda1226603 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/alphat +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/epsilon b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/epsilon index 28e06d4796e1e2d8dc6259b132b92f6aa16e5cf1..887da0d70085f58bd4f1ca4690add743093b1c66 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/k b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/k index 129574d0d6c32fa84743d788f376afca87ac78d8..dbacc8617f65542860f78a461e97e5ff19c13bd0 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/k +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/nut b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/nut index 091f9f4f931eabb1ea91c46352e7c0a894c6a17c..d160fff966587521231bbefe5ebe2d444b937f80 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/nut +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p index 0effadc6055db41cb0723290068b432a4ed7215c..73c0a210139a4adf53feb84d31c298453eae939a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p_rgh b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p_rgh index 49b6e1c293ca578ed265308d84d469521be39d74..4e235d4a6b95b66f25e79c05df86771d188c2b61 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/air/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/AoV b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/AoV index 9bcc80df9b56deedd2043613f7f06b3c68633615..ee303f3a229c2b90e87dfe9dcfec24a279b04ea3 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/AoV +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/AoV @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/T index d64b3181257a2a99af2b77852654bc9da648036f..3976c84aee2bbf686e848dff7f742ac2f6b9a3eb 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/U index 259fb9b7f1f0355e27caddfbe762ab34c7303f1c..ef294ef4e0685817983dc58524ea58646bc40846 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/U +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/htcConst b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/htcConst index a5a58833d0db22c17e7d5f3d248700ec1f55c9fe..d3ac4661b8b7f06b5e4170e46a993b126206b5c4 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/htcConst +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/htcConst @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p index 1db84472b5dd427d1bb1e6d2c9fc570f3cd9f688..c79500327bb907134c6937ac75d3a8c7370686c0 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p_rgh b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p_rgh index 28bc0ea6f6c461fae43be25f0a94e9e5307d8c8d..9c8cff6c6637c0d1de4e1c9d978a69f5f1b32174 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/0.orig/porous/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/MRFProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/MRFProperties index 0d89ee82f97ed30a0141d79ff7572a19d9d0bce7..1123cd9df4cf4e2dbf90a007e0f1ac4669cda084 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/MRFProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/MRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/fvOptions b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/fvOptions index e47c1c1cc278cfd57aefd2c1e6e7362529d3d4a1..27d5934c0d77454b2764726b693f71e1080b52be 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/radiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/thermophysicalProperties index 396571727f5875d82c53fddf87d76d3efafdb5f4..a51ea5a2a3328dbe56c832fba40f585364fcc715 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/air/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/g b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/g index 7ff3e5e70ebbca940a40d8ad3a92d905bb0f1be0..294ce8e4b75feea18101634efc7cdf7885a6e399 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/fvOptions b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/fvOptions index 8e9eb695cb9798e8d1a3b0ba91745fb35cae16d9..0bd572040be23e9bfde11508b4ee802c077edfc2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/thermophysicalProperties index 03b463ebb78eb3357fab275b6c870ffaaf960c80..01b1a6e2151b42fd16835c5b83329f63334c53b0 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/porous/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/regionProperties index ea92c55fb626c00ae8694528b10a078c71db4f3c..d695ccc7d1914cbdca768f5034b113eba2796feb 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/blockMeshDict index 2d0eb506d684b6bc1df4fb774f93189b5df68f0a..9d738b6d2b3e9d1933f136981dbaec545120bb16 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/createBafflesDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/createBafflesDict index a9ff92c5030d5bfa9d7bddfd8cbffbc090eb5f8d..9cdd35949b65f0fd2f7736c887bc1a054db75373 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/createBafflesDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/createBafflesDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict index 561fcd45f50ac7cc3c718cade7b275ef2b6499a2..19b90dd0888473dc6fb542ae5364fc52867dd22c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSchemes index 69812980745fc31efdea20265aa4a4a5ce8d56e1..0abc03728e92821b46d65c9d0b7060da3a9d0d11 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution index 81ec654ba97ffb712f4438105052903bd4b75db7..e87ada7f23cfaea36e7ecc4604d2a705514b42a4 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.1 b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.1 index 75bada719ed0c62676a0bd01ba6806d14cb7f7b4..798f3b3a4d13ce2f9425597face230f555c67509 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.1 +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.1 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.2 b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.2 index f927616b0d886f61c3b5d6532d0302a6cfbc2b4b..2e285cbf2b6ff149202f70c2d1e1d836baaac385 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.2 +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/topoSetDict.2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/controlDict index 571e66d34902589e7031d601851b8fb2ff1f400f..1c67c9f51eaf848f1ba0607d061512d14e6567e9 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict index 561fcd45f50ac7cc3c718cade7b275ef2b6499a2..19b90dd0888473dc6fb542ae5364fc52867dd22c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/blockMeshDict index 121e73f44e2ed9651cbbad2b9001ac8c16925a42..633325e45e92d97611050e48f841beb6bed3eaee 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict index 70834d1dae41e507abf53028e5218687db1e1eec..008c06e60c70023caebe76b04ae44402c64bdb54 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSchemes index 6b05edf150f259bd29bbe18b937937a41605faab..edb2c18a72da802f3d4ec005ec6f23882ab0f710 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution index 5ed3b3ce127b9d84af74e614e9dbc278bbab4aa4..b42457ffab6074edd4b73e728427564d2cf15fc8 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/T index cbd78a97922a825694599a3b2c9f070ceb7616a4..5f889864ef3c69fce69ff6138da34e5d5d2b5c54 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:V b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:V index be59e7f884797b437e979c6e16bd568e41cf28c4..dd664f94543fdd5a7b0d52dfdcc37ec961d2e52c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:V +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:V @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:sigma b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:sigma index 415672596382292750210b8653502a29111aa6ef..2717a4b8a83e942e07b7b82fd393333ff9faf20f 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:sigma +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/jouleHeatingSource:sigma @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/p index dd6f603618d33e5066d83cc79ed6ba74f6695a35..56b788157b7e374eb5613934b662d8c6b50c1765 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/0.orig/solid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/g b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/regionProperties index d47ff50dce424779ee67aa4bcd26ca56fc0e461e..7beb25122efd83931b2bee7c2ae81e62b9cd155b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/solid/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/solid/thermophysicalProperties index 00da4be0ccaa50fb5a94b5ae4f3b699cce95276a..363eaa88a953a4643b1e14261635b2d6a2a9467c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/solid/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/constant/solid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/controlDict index 442e589b2bd767b87679b2d916453c957e222e37..5d959db171e935e09f10d4916f87c14d61584c41 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict index 6c262b34d7c58d30cbdbf09d469ae0d6d845ec1b..a1a1da626bd1ed4145dee7bfce761b4d52d35c42 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/fvSolution index 8e16d2fb65c0e53225ea81a71219c95d733c8186..89752614220bf4a0513d36ba77854b39b605ba0f 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/blockMeshDict index 0c33ac4120f959d682db5e885bbf606f2293eadb..aef1ee229afba792e009d6ffb468ddafb0b087d5 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvOptions b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvOptions index 2f35c50c7d51797f07805d795d1e541915ac0e96..51edfa95d305e9a82d6990eda2aedbc3fec2316b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSchemes index 15945c0d7891544239f96056bf476c7663def52e..e1aaea4e6364ea885e76b7eb70289206bb7715f6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSolution index b0a79c272e17b2fad1bf0b1ea3b17e95a7f58ddf..74f3b1965805955213710fa5f59475b948919dd7 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/solid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/G b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/G index 4c8726a3d5b65926dbc5df07bd46c6a2fa794579..a8512c9c6b86eca0694d3dc0529bc27076bf1b7b 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/G +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/G @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/IDefault b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/IDefault index 8f972f6c3c284471362643f1b367bef025c50af4..b532d8b6bb504c7b417d4d8cbdb7fe494f161905 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/IDefault +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/IDefault @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/T index d03ac4b0bb0f58f90b93f31624cf005a2561c56d..cbd09bd7582f3b7a20b41b85d0d82ab3cf68b263 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/T +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/U index bcc347754a9e88f0f8ed0ddb8b527ed8cff21faf..496844e7b514a485fab3977a25fc844de2dc31a1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/U +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/epsilon b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/epsilon index cb34a5f312e0ea6096d178c62a5c2b4c481a5d06..b4b21992c6126db0524eecf1d40434fbced1210d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/epsilon +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/k b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/k index f6c5c2210f8a0e0f55ba4d1c1334c58b66648731..063eb9085ad94dabf20f25a7b3ffefd48133abe8 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/k +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p index 78f4522964fe7e1aac155b38fed0632167eadf8f..9a430fd79f327a6a8321fd7f56f6069715b6ff5c 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p_rgh b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p_rgh index 00e75111a1d9b6a951e39d64730c4f9f26a1d29c..ec657884eacadd60b587c1f1706d47bfd864c2b6 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/qr b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/qr index c075f068d30f10fbdfed06cfa1b46bfc75766a8c..cb29c61201f85789bf9c39644def39ff51cbd044 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/qr +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/0.orig/qr @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/boundaryRadiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/boundaryRadiationProperties index ab14b6d732a78fb809c78030e6202697d001fe69..0a38db4800071943b3a0f5128c5e6abcd3db98b2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/boundaryRadiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/radiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/radiationProperties index 17205d64bd057da2a40528b6c8b8a224b8f59476..b81e66641a4096b32ee72f61cd2dc6fd3dde9a04 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/thermophysicalProperties index a13fe546bf267d6db4fe861fd00bbb60404c3775..6ebd5f8cba3e980ab3909b1e277bf796853cc198 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/turbulenceProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/viewFactorsDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/viewFactorsDict index 45fcd0fe9d67a7f2070d522bbd0d3ce906574dbf..cc87aed0fe3ee8474a0ef53ceb3b5176dd107bd2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/viewFactorsDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/bottomAir/viewFactorsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/g b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/radiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/radiationProperties index b2ee93bd5cb0fe52f5bffef7314fb3c971b97291..4f5d9fc28162baaa14998048f1f2cdef3936b067 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/thermophysicalProperties index eac73eb6c93e542bf62e8022c365618116fc1920..604d11c91ab22cd5d1ba9f96bf70ab948e5c7f10 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/heater/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------* \ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties index 50f2f2891806dab98f69c6666f18c8aab41a87fe..889bb2cbeed96dbd04dbc9332d9bac8b5067bd14 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/boundaryRadiationProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/boundaryRadiationProperties index 97ea19dc9c112d231222352f2283e388ac02c787..6d9a3a1c68e771664b8bfac7788768901a20db90 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/boundaryRadiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/boundaryRadiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/viewFactorsDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/viewFactorsDict index 95000083e847a21a6bd81e9601d39f3d047ddd64..af1a3f59618368c104b1425beeaa4e255c75da2d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/viewFactorsDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/topAir/viewFactorsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/blockMeshDict index 579466f910adfcd086848f6ade84f3b4024c170d..c4f51efc628fce49ed7fe16af6289b93bdf88ff1 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/changeDictionaryDict index a705c42e70e80833fc98eaecd80512c84578597e..a85bb0883985baca18b0fdf166690d36d753d3f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSchemes index 93a15cf258d5e3b0ee31d35084084015f0b054da..cc397d887cb8df6a99ba8e5637d9f32c27c53b37 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution index 9d00ec96c37d825358525cf809e76c48884c697a..043f70fec760cd6ed29e59bbcf65edb10bd294cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/controlDict index df184ba9d79d1080cdd941a06b5647ff973f4c20..8df62d8b0b870baab37bd7143ac1f817663853d2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict index 62846633b5ec101a4dcecc02be0fbfe24ca30dfa..7ffd26e8296f8856de3331bbb0eef624ca6fc9d8 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSolution index 22defbf4135008e2d39de34f19ad2a85eae9c8e5..c67ffe5d2e00fedacf0926fef11262ee89d4096d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/changeDictionaryDict index 9d3050478dc707cc3a1b0ae08b1f210d28321619..abcc66bf172cc0a35c473f84d8a9e9364541ad15 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSchemes index b5520f6506a8587db262aec15be1361ff2e308f8..b7acf35fd7cdc632df5a3bbdca6628d9be43070f 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/changeDictionaryDict index e42af2185ce6ff607a3f4bc43ee6d06634e1b694..29285941710ac68061162bbb7a1a94acf396b48d 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/changeDictionaryDict index 8bc82aad9348d663da7c87a15c1c37ddfa29bc49..1f350398bae2aff554e156ab8312be77ab7d94e2 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/fvSolution index 1e320200c94926fe650c55e4868bcfbc60126dfe..50512b4aa5cbde62f26224b0916e40313596626a 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/changeDictionaryDict index 5a308064d55c7692fc65870704de2c980bce6c7a..74a580c1125db6a7d72b8fb5eae37f43a82356dc 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution index 9d00ec96c37d825358525cf809e76c48884c697a..043f70fec760cd6ed29e59bbcf65edb10bd294cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topoSetDict index 33e0af964226a612bf93c00958e0b408e7e9338d..e175b6c6d8c29f7d5e67463099a416ebc1ff1297 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/T b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/T index fb94ba9bf60d9556dcbcdc7f7b4e221610cf2baa..21e5dad813e928bd03bddb5d2c14b391414deca3 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/T +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/p b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/p index 34f48b3d3816135b758ecfad8d59e10a94a14729..4e7415afbd42f5d700c17191741d1e22c89ba04a 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/p +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/solid/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.gas index e8f6c51f711ea2d0ac594b26f266683415bd99b0..925499b8c7b3fe94cded06489f409b9e015d77d9 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.liquid index 6a21cc4a3c912da577ddca8b2ed85abf5a625624..8a85d0b3ca8dd32edc7b507d886eefb8ce8c1f99 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/T.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.gas index 2ac82ab9271b71a2b3652db85193aecf997155c3..82d7864858cb4d25f79de691ee6925b3e3b1438c 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.liquid index 52fcbe1c1fe0708d634e438040f7511e171292b8..fa23c9c6fa10af4b52c8eabaa1f1565143d90936 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/U.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.gas index 410961ba65d0ae0529d1d311d44d8dbb72647749..4cd64c8ac00575390584c8786bf5efb386d8d38a 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.liquid index 24f3e708688dff3ac7169d595bbb6d73cf5ada4a..0d028ade94cb24b5f0068e3c30ce3b8e667bbbc6 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alpha.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.gas index fabc6c04097499ce62bdf39eae24531a213f927b..dd1adf1b32d2ae688a9a3d708c34df228babc74e 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.liquid index bedaf518672b23747be8b0a04baa467bbd9b522e..be7940df8e2ad263e0365b76bccaf18726de5bc2 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/alphat.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.gas index 1517b8c809a4ff08c3c1f612c41a195f54e19ecc..da06223e8918a636943ad7a0820ab7c066fe70a8 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.liquid index 2cffd98f807a9790c298761f2fe8deb6b1a6bfa0..0ec178c1f6f816e57da9de8027d04e9605a2bc03 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/epsilon.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/f.gas.bubbles b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/f.gas.bubbles index 316082cf16363fa94d79259c9064f3c8e50fa0e2..39323eda966fbdd0437dc68e47eec0e82ab85717 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/f.gas.bubbles +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/f.gas.bubbles @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.gas index 6015cf1a852497c725cccf68d966052f89e2ed14..a41dd74dcedcb5bfe37ee121f7f5edac65b4569d 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.liquid index 39fc21a40828c3c05af4c05c3a858ce6d470ad6e..0eadb03ece0ec01adaa22ee693d9123180d2482d 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/k.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.gas index 951030fbe79cce6d6375fe925aacda2b1336c052..de608ff647d2a633af09501ae1a909ca0c2f1236 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.liquid index 0d8a289e689c44c6c9a37b56b423dec55f7484f3..73b19caf482fd198513f312135fb5661363c7ac9 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/nut.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p index 20d9d18dfc4790946679561129cc8899dc85b2b4..7586cd6718b0d3f603fda6166c3376f80161cd5d 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p_rgh b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p_rgh index 7af7b4784387775a9520d60e5cda50357a5cf90a..68423bc5cbabf1049c52a0a23008dcd662dee9de 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p_rgh +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/0.orig/water/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/g b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/g +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/regionProperties index 7a5b272c2cbd3ef7a7ae1485ac24ce4ec8611ab9..4e54237e96ea1dece4a5e9f86c6c6bedb09f01f4 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/regionProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/radiationProperties b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/radiationProperties index 16761a9e3a844e93e882a43fdf639eda14404b42..439eaa9c891f0a40a0d772dfe1b6c76b82d848f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/radiationProperties +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/thermophysicalProperties index de2ca0d08aedbf182ea34c023dccd76da36f491f..2dba787cdb81675d2a4b678729cb7dd39e3456c5 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/thermophysicalProperties +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/solid/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/fvOptions b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/fvOptions index 14f49fb2932958ff3fd7d2bc3a789f2134424166..dcf7094a062ac479a9c598f530dcdbac08e573e1 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/fvOptions +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/phaseProperties b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/phaseProperties index 7e9e8c4513798755cecd2fe9755ffb44ca1d56d3..acc71f7e9860565c0b63f153601e4c196196a044 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/phaseProperties +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/phaseProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.gas index dfc0034bead14d0305d1be120cd7d10f859c41b5..8d6d9d935c0d12200e8cf511e487bca5a16ec2a8 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.liquid index 82e2882e7ad870ff0b950c17f8d53c36618ae4aa..462ac05490c2c94f58723bb5440584042542d71b 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/thermophysicalProperties.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.gas b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.gas index aea91fac665765e9e1996a91ad8d327283039756..3d87c37520412e10a68562df653ae5cccb82cbe8 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.gas +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.gas @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.liquid b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.liquid index d9df358c84cb0a3e708f21cfe44c4ddbbf3a1c55..71c60c8be40ff389048aaa3733a0e3350b909ec2 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.liquid +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/constant/water/turbulenceProperties.liquid @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/blockMeshDict index be13557dcca74223157e69421e0605e685fc672b..4e6c7f587e0911be67f5418db6373c794fdb4018 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/blockMeshDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/controlDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/controlDict index 321bc17181a389b28e2f3be6f6ea3d3d8b4928c3..f7d793558f97a0df9ccf19e5653e1b556062aa4b 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/decomposeParDict index d36a8c6d17b1e292761fc3777f679c2d8bf22c12..f64c40843ff9925b832c1f4147a5f4ee7c18ad04 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSchemes index c76fc389826f16d556e1f6ec9a52796eb5c6c6a1..8fcf587e233bf9ce7cd4965632acce4a918632fc 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSolution index 9f14182f06ae984681300989a2d238ed6de52304..2f5abd0344d1365a722c1328ebaa037dfb164d2f 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/changeDictionaryDict index 1c767662498bd6507a116f096ae9a39c47844154..3d49d60a23dbea2f726a52028c055c7a56cfc049 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSchemes index 347e5cc8c34c5fa22fd34f5e95988119edaf6fb4..97b96c4d7c82b5685490d65840e9f6fe4560a174 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSolution b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSolution index d00e7a71cadd724a4c64d8a9683d460a39b84f8f..735ce18dc6ce9cbc64ec9c30310da61a807030ba 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/solid/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/topoSetDict index 95965607a121e408a86287a9c89decddd6427eb4..a3c539c10b06452f83e0d981ac0bb097891a82a6 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/topoSetDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/changeDictionaryDict index f6e76c42ff8b25e7a4c486280eec685a227a95f5..b4959c353d7c017d33a3bf255080d51ee789903d 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/changeDictionaryDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/changeDictionaryDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSchemes b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSchemes index 7bf2f485a0f413d03da2afee54fb03d853c88bde..e313be084d5d1cf665b7db683be28d3948e40982 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSchemes +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSolution b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSolution index 5bfa8c8126f578f04f48821075130e5f5610e114..3384866b35c61f24f6d1b78174d09442af312ef4 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/setFieldsDict b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/setFieldsDict index da713a88092ce1804d179c570267d5a1920411d8..089bfdeea3d1bc6a1cbcffce7b8e11885bf4eb55 100644 --- a/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/setFieldsDict +++ b/tutorials/heatTransfer/chtMultiRegionTwoPhaseEulerFoam/solidQuenching2D/system/water/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/T b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/T index 53fcde47d988b0fdec962972685538986f4d75a7..5786b193f9dc5266fb74467eef46b4f43b2880a8 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/T +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/U b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/U index 86b2c67b6c5f91b0a23e8bd7fb7de27c1ed2a10c..d5a63115f6c6af22448253e489b59a35d4ef268f 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/U +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/alphat b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/alphat index 258688336854e370f2bb18713727d18d0e6969e0..1d4f799eb6f86388398c194c2b7f4c0e7b98d2d9 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/alphat +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/alphat @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/epsilon b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/epsilon index e66e3b0601d1a307e74e990657e4bedd96fd9b7a..5b3e7b2533006e29ee19057e038d7487b99e78ea 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/epsilon +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/k b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/k index 558765b76d89f437eee8d9c8179d572958c36e23..2f3c0c8e9a8b0d27f3f28b82356fda7b61c4bbcf 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/k +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/nut b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/nut index 454a47364b1716789ad17f39364bf25229939bc9..f766da71807f82abb6ab9554e582856234ed892a 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/nut +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p index 1450c4b424ca64715e2cd1b3f39d4635851fd8c2..5d9f90800e165def7cde4e396949bc1c5b3c5aba 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p_rgh b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p_rgh index 521c0e93648d16e679376c69027cdcc217acadfc..eac944c426200fa42540e915acfce0106585828b 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p_rgh +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/p_rgh @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/pointDisplacement b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/pointDisplacement index 5a8a0c5c5ec6e5641721d580690e1ff5a959b80b..39a5fb6f1f47ca5a49861fd8e35ae39e7793205e 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/pointDisplacement +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/pointDisplacement @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/zoneID b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/zoneID index c4d75680e66f18096bc47128944f49357abe4bf5..0e4c18e83fbe45bf60b5ce091932b7f556556706 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/zoneID +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/0.orig/zoneID @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/dynamicMeshDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/dynamicMeshDict index 54f52a44032bd9e151a8938c46920017f61c70b5..61d26fa0b5138e89c162da37de928766d25a3dec 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/dynamicMeshDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/g b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/g index b5f12a96e5ccd2c0fc5b8125cc184f776710004f..901753ac343c46a1bc3ecd153310bf7cf0011000 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/g +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/g @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/thermophysicalProperties b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/thermophysicalProperties index f75c929ec0bb22617f7649f139d3ebd91d4b8507..b1c082c71301b9c143c0ef0e5633ca5a589b6826 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/turbulenceProperties b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/turbulenceProperties index ed08cec1ddfa150b628e3cbd3dc77afeedf86c6f..494299f02d9302c2036d737b2b225eece0f0ad28 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/turbulenceProperties +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/blockMeshDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/blockMeshDict index 13f9c39cb1c3ed02745a2c48b6614331462a5dcd..417740d98fa11d48dacc61bd43fc5d663144a470 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/blockMeshDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/controlDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/controlDict index 1d6eda4ab458d2152a19eb5d5045ba355b8f939e..16feb8af3d86a582a464e3d0c6c5506f30250796 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/controlDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/decomposeParDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/decomposeParDict index 5ca8d91a27a06996aaa21f72fb6d10edd23a4703..cf6d208f01a50c2c6befc08ed6e7872db2ad0cea 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/decomposeParDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSchemes b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSchemes index 2a228c62e2d5e41bf298e439d95feeb86c3ed490..d1ef7fee8f173f73236f09bb3eef2277f09152a3 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSchemes +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSolution b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSolution index d8b1201b017ed577160687d7d1d41b7936dc9b30..e1b385a08fc65020fc1ed88132ec8d029cee2422 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSolution +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/setFieldsDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/setFieldsDict index b16106caeff2eb807321f8db76e0bc5d8350b13d..99bee0020b6652fbf0f2f06f638aca8ff38253e5 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/setFieldsDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/setFieldsDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/topoSetDict b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/topoSetDict index af60efd13e3447f9734303868cfa942b2959a926..57550201bfe6c04310edf7354d325aab19225ae8 100644 --- a/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/topoSetDict +++ b/tutorials/heatTransfer/overBuoyantPimpleDyMFoam/movingBox/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/0/T b/tutorials/heatTransfer/solidFoam/movingCone/0/T index 7280546fa0903974a970e9a7acaa7a5ed33d512f..b04df55b1572bcf258afb67d41d07ca093b13896 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/0/T +++ b/tutorials/heatTransfer/solidFoam/movingCone/0/T @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/0/U b/tutorials/heatTransfer/solidFoam/movingCone/0/U index 6924029c5f136d3a42c8c52d0cd96a4667138e3f..4b5baa6359a5aaf09217429663b41f05c1d9c0b6 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/0/U +++ b/tutorials/heatTransfer/solidFoam/movingCone/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/0/p b/tutorials/heatTransfer/solidFoam/movingCone/0/p index d322f8a56f783fc2eedce1bd2f817b8efc195ca8..51a0f872ac0160cd407a613698fca5a7cc88d263 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/0/p +++ b/tutorials/heatTransfer/solidFoam/movingCone/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/0/pointMotionUx b/tutorials/heatTransfer/solidFoam/movingCone/0/pointMotionUx index f62b06ad61ab48990f3cc37cd529d57290796139..a4079e8dd73baad1de0f4fad49c074b63866c9c9 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/0/pointMotionUx +++ b/tutorials/heatTransfer/solidFoam/movingCone/0/pointMotionUx @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/constant/dynamicMeshDict b/tutorials/heatTransfer/solidFoam/movingCone/constant/dynamicMeshDict index 5812b7a7538f4aa18a1e33b53b487ae91bd2152d..a31c84ecfb1e22cb2643f0215850d24a68b41199 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/constant/dynamicMeshDict +++ b/tutorials/heatTransfer/solidFoam/movingCone/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/constant/radiationProperties b/tutorials/heatTransfer/solidFoam/movingCone/constant/radiationProperties index 6d323881eb0d90039db128e4a203f5fca0cd9008..7ebb935f7eee0ec9e41389821d7ba24157024595 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/constant/radiationProperties +++ b/tutorials/heatTransfer/solidFoam/movingCone/constant/radiationProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/constant/thermophysicalProperties b/tutorials/heatTransfer/solidFoam/movingCone/constant/thermophysicalProperties index 9c39812d00647d152390f7f2a96c4a6079224055..a5347d57ffc57962d9e9393f9fa5f53c012d883a 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/constant/thermophysicalProperties +++ b/tutorials/heatTransfer/solidFoam/movingCone/constant/thermophysicalProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/system/blockMeshDict b/tutorials/heatTransfer/solidFoam/movingCone/system/blockMeshDict index b2019e2de583bb33d4e0b23d0d20abf355ed779c..c381a7e0b6bc8a67c944b1d9802da8900d609135 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/system/blockMeshDict +++ b/tutorials/heatTransfer/solidFoam/movingCone/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/system/controlDict b/tutorials/heatTransfer/solidFoam/movingCone/system/controlDict index 1f0134834791afbb23c8b98d3f1f962aa1be06ef..9df0e6103b3fa9f5e8a648a552c8a79b294ab0b3 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/system/controlDict +++ b/tutorials/heatTransfer/solidFoam/movingCone/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/system/fvSchemes b/tutorials/heatTransfer/solidFoam/movingCone/system/fvSchemes index d8099a83357a6220b3590a2500c669d18a791069..57f867833b5187d55c4b398d6b75693a8d3e6281 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/system/fvSchemes +++ b/tutorials/heatTransfer/solidFoam/movingCone/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/heatTransfer/solidFoam/movingCone/system/fvSolution b/tutorials/heatTransfer/solidFoam/movingCone/system/fvSolution index 87482f4fd1890d0b531114bfb56cb75381e0766d..8dcbf6657e62906866dd6221987dbea90161c316 100644 --- a/tutorials/heatTransfer/solidFoam/movingCone/system/fvSolution +++ b/tutorials/heatTransfer/solidFoam/movingCone/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/Urel b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/Urel index d0045c3bf8839140628da79e77a4677098687afc..816e3cb822c8f0eea993c8cbb6ddde3c1ba206af 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/Urel +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/Urel @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/epsilon b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/epsilon index 448d970789c7d8ca2ff097301d9d5ee99f38eb6b..0d7c33b94b679b9e86adecf012abae389e9db9aa 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/epsilon +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/k b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/k index 8852d69acb9ce8596b6d6515d11d8a11c9747114..522c98c589f7aa221f80cf879749a7abfed6108f 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/k +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/nut b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/nut index b268e9526ed0283940ffecbd5c3ae77a646cd11b..8b311b643b7d287f5411cb8a4185c412d9556a00 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/nut +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/p b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/p index ebc916c2d9930bbef4404cad322a57e626e11bcb..e5204bab9888b762f74d633533dffc8774d8845e 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/p +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/SRFProperties b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/SRFProperties index 5c8ad3cb088005019ea6723409c9921ad37040c7..c3dc57a7bb3f0891c11f8ff6f78922731e2bcf61 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/SRFProperties +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/SRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/transportProperties b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/transportProperties index 4908cd4b363d927964bfd18e8ab7a0696e126816..5818777c874d622f3010d6612ae5af09139a3ad1 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/transportProperties +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/turbulenceProperties b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/turbulenceProperties index 70f5cf5ff244c9f8d6ec2b02586c9e0ed9b16014..ce528794d0963f6808da68e9e474cf84827a2fd2 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/turbulenceProperties +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/blockMeshDict.m4 b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/blockMeshDict.m4 index fe5cf181dba8ffea3981cc5a68f71ad65738fe5e..c67a42dd71eadf54b2db6f8e0c386a40de7bbd18 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/blockMeshDict.m4 +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/blockMeshDict.m4 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/controlDict b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/controlDict index 250e7737ab9b4d994fe4990bf9fd0ccf4be6cf94..7fbbda31479d2e85f128872c5d0e9a487b832ef5 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/controlDict +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSchemes b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSchemes index ccdc7ab3bb4756eedcf690912ef2579db7b2e5fd..f2ae022b4509721838e6d70550f636418d5c7758 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSchemes +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSolution b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSolution index 8975fe83b2d36d22b081d3a08509dc1ae4e26115..8d0e1f8cf90bd0b7d9e02ea45cd8750ce9841270 100644 --- a/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSolution +++ b/tutorials/incompressible/SRFPimpleFoam/rotor2D/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/Urel b/tutorials/incompressible/SRFSimpleFoam/mixer/0/Urel index b94320679f3c2e2b676ac3b98ea52a9b706d7de1..4c0f049b80cbe3494855ed718be4d81c4ed73c00 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/Urel +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/Urel @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/epsilon b/tutorials/incompressible/SRFSimpleFoam/mixer/0/epsilon index cd859cee63a9a176af86d2266ab277e542f0714d..f74858a6cb902ca79ffd4d835b07911c045abc0b 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/epsilon +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/epsilon @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/k b/tutorials/incompressible/SRFSimpleFoam/mixer/0/k index 58d57af2a2f738316259e3c6568c8cc890ec1503..9193766b9bab13f23a1b9749933023db555f8017 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/k +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/nut b/tutorials/incompressible/SRFSimpleFoam/mixer/0/nut index c59a0bfe7a8f589352171c3c3fbb4f891c5a899c..dbbe0182bb38b5df22c4595313cb6bd5e5914161 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/nut +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/omega b/tutorials/incompressible/SRFSimpleFoam/mixer/0/omega index b3932f35172f2f6439913971ca677cee3da9cbfe..de416da010f0cdc82351c8c8150f50d26e0d9be6 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/omega +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/0/p b/tutorials/incompressible/SRFSimpleFoam/mixer/0/p index 4bb7b41ab52569a412c586a7b72007d26e2c2b26..68ff559f12eaea32c04588b91ff667250f811fcf 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/0/p +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/SRFProperties b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/SRFProperties index 3ab73d132a8a015984cfe4f1b9c7481c32be788c..9c156f16c5e5f248f491d999123c7488d784cbcf 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/SRFProperties +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/SRFProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/transportProperties b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/transportProperties +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/turbulenceProperties b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/turbulenceProperties index e5d396e2b4ef050b52663b42ec4ec1dea873f527..c1d5ac10f3ff6401c6ced11b5eb7d12a818ee895 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/constant/turbulenceProperties +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/system/blockMeshDict b/tutorials/incompressible/SRFSimpleFoam/mixer/system/blockMeshDict index 361d4e6214979e80025bc8262d756403e85d28ac..8458a6ba9b91ca2d52dfea2247516433f809a8d7 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/system/blockMeshDict +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/system/controlDict b/tutorials/incompressible/SRFSimpleFoam/mixer/system/controlDict index 75c43ebe06e3e2305f1d3caada368c04671e0734..9ea5622cd201ee8cb25ba8e0b551920d87e12c40 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/system/controlDict +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSchemes b/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSchemes index 1dce95d00342ca2c7733847405a47ee9c9d63411..2f0112dd891d9397a376111e41a312f3be25992d 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSchemes +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSolution b/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSolution index 921c3692194dd37e0e5a9548548b0bb84a6996d7..4f2b3da0a02c0401dd4ddeb7b6bafff77be9f705 100644 --- a/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSolution +++ b/tutorials/incompressible/SRFSimpleFoam/mixer/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/U index 187232313d660426c8547b46f1bdd069f94473b9..75f7136e70d1e074c39e4a1ab6529b4d926787e0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/Ua index 929a352f97a440bd5d03423979fe8b105722cacc..c3819681453dc6938e5bf635c8b85b4186590b1f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/fixedInlet b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/fixedInlet index 4c91f75fc285d6f660b5646694b1b944c337f2ed..125fbb7bc20e6e06b7203d3c70e0bc77b6db089c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/fixedInlet +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/fixedInlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/frontBackUpperPatches b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/frontBackUpperPatches index 19b3e2353d70716c4e9020bb3c03448d58a4ae17..f17a37762cf61bf0ddd1eba9777f547f2d88f22a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/frontBackUpperPatches +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/frontBackUpperPatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/initialConditions b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/initialConditions index 709fa8847cae8dd65dbfa51da4b9e2a9098bcfa4..57eeb939a4ddf5ec0b9266ca8bf11e05d8e180aa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/initialConditions +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuTilda index 36e5b9356fbbc0805bc097dcfaee4ff84a38f5f2..50e1881dd9964184a6a09f5e630c1eec76b757c3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuaTilda index 7bfaf1b8bedb79ba36c998cfa0b0863c94a9e2df..c503c3cdb4095d026719ddeedb03033d6ae42fca 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nut index 34b37462a571469fe528ea00d1fe88a0d983babf..6f4e2201c0b81ee9a696f4a466ebba15bcb2d294 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/p index fdf959107500a89433d20c0d077043ee18b6e878..29d63c931abe6de72ca82bcf83445f3140e94ba9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/pa index fed6a609da9e34ab0bd8050eb286cb38f92db1d8..672c43553fcd79cca90258b616c2cfc6f92530f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/adjointRASProperties index f7321964e1d22f222e4c86bc5ac46d8351efc302..ba5b7c44600c1b5f947fd2867c6b653bb58a3313 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/turbulenceProperties index 007fd5c422c48aaaa36aa424e30517a3b206d66e..d4c98ceb159da3bf57588fbf8363f8b0f3050dbc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/blockMeshDict index f9ac7e9ec952d7971a7a5e644c162f0c5732f1b0..f4917ff1e296247958efac413496ab48e3335c5d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/controlDict index 0bae04c6f2f64fdb6a02d8338d74c388cccaba4b..c362da910be470fca5a34a2be48df0eac3c8a833 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/decomposeParDict.20 b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/decomposeParDict.20 index 3b00122c56045accb7dfaeea9d33dc2fe302c6db..b339f02ae5774a0ebce6be081f734be52a7723e6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/decomposeParDict.20 +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/decomposeParDict.20 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSchemes similarity index 94% rename from tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSchemes rename to tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSchemes index ac4674a0e35e07357592bdef679d55406d1ae271..0a1dd397109a23290150696e7f3949f5bfd1aede 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSolution similarity index 93% rename from tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSolution rename to tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSolution index 248487bd0a7bdde8a74f5985a4201715ed19ba1d..53d3e0a73ad31824d9260541bc66f7eb61bf5c10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/faSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/finite-area/faSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSchemes index 3c690705c5dc6bee2c6005a27af201514776b7dd..4b4541dad9f44558079cc3c2dbbf25cf6a789588 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSolution index 360e6620602f50f9d1bb314ca2e33b60cd0f899e..93b77d84e0136436e6f71c66cd1c831c58754de0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/meshQualityDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/meshQualityDict index e35092c9af2a9fc86f45774e9d7d73e7be224060..c5e4f5ec15c6034ff30f9db5de96234df3a6ec4e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/meshQualityDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/optimisationDict index 9836fb44468fecfcca4fe54c57f7ca79eeb1f57b..e3891131c7c3c1c5ef8abe60c6e246173c9d4669 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/snappyHexMeshDict index be26f787ad4288edbff50b9a75a6c6873b474dc5..5de18588eb3180e1e5399912749c275f3bdfc786 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/surfaceFeatureExtractDict index b6841c0d5e55e4251f8ff49eceafd4e911f8628b..6a8f29e7874e69730a9d6905901d59bdbe0cce2d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/motorBike/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSchemes index 3ee5c35e135b107c7d29c268bfb977f4e01d926e..24c883d1f4cd5211865b19b671c3c2fbe71b3654 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/optimisationDict index 61b6843c9079df2368c6b532edde25df8f34d006..9b28fe7b22a10b291444d9948ee4774bd6898f95 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/drag/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSchemes index 3ee5c35e135b107c7d29c268bfb977f4e01d926e..24c883d1f4cd5211865b19b671c3c2fbe71b3654 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/optimisationDict index a86d9a02b222430bdc53b8a3999f41f1ea6c15a4..31cb417773c1540a4ba5d1e0aac3b15d2a2c5ad9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/lift/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSchemes index 3ee5c35e135b107c7d29c268bfb977f4e01d926e..24c883d1f4cd5211865b19b671c3c2fbe71b3654 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/optimisationDict index 4fe64051567d04d85485a9650ab90d1407efb256..1a35a7d29547e0c0ef3f1d30512fd1fa3d758aa6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/laminar/moment/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/U index 3703d1f762308d20857a1664bc85471b5e43e309..b038e0544fdd2cd6561c7d9da0723553311361f2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuTilda index 333ba5143b00a201ac18325a3b0e72725fd9effd..e2a940d921cef631b1e992877ca983159dce9571 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuaTilda index 88dac36d5aa3ed7f13cec41ac5aad36016ae4ff7..f46aa08c11baaf805a76f969302370f926961e3e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nut index 3d3ba0fd8e13583717f41e1d2200064ef9db60fb..459f614f91e7ec58acc481ec01213624a797702d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/adjointRASProperties index f5de0e6a44eed3c5600a850b087cbaeba27662ab..a5b6e457df49d2829ae15227cc5519afa0985ec5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/transportProperties index 55648919ec600fce283d83f7ea2232ceb73e5094..debc2981385ad46c203d62e8a4b08ec71da64706 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSchemes index 01f43efb6dbf7f2aa4aba72832f28066b2b0e462..b80e59a2c2c9aecce953151956e0f92da56cf68a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSolution index 141ede7a0d961ab3e9d46ca1c0ac351dd20cc657..f5b8b594a24f525586c9cf89e5a937533d4a0dff 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/optimisationDict index 375254367d07a2026c28fc9d149107a1b70fa6a5..c2c27f3452d498881fbc5a87e18d09a1fc6e839f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftFullSetup/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/U index 3703d1f762308d20857a1664bc85471b5e43e309..b038e0544fdd2cd6561c7d9da0723553311361f2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuTilda index 333ba5143b00a201ac18325a3b0e72725fd9effd..e2a940d921cef631b1e992877ca983159dce9571 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuaTilda index 88dac36d5aa3ed7f13cec41ac5aad36016ae4ff7..f46aa08c11baaf805a76f969302370f926961e3e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nut index 3d3ba0fd8e13583717f41e1d2200064ef9db60fb..459f614f91e7ec58acc481ec01213624a797702d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/transportProperties index 55648919ec600fce283d83f7ea2232ceb73e5094..debc2981385ad46c203d62e8a4b08ec71da64706 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSchemes index 01f43efb6dbf7f2aa4aba72832f28066b2b0e462..b80e59a2c2c9aecce953151956e0f92da56cf68a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSolution index 141ede7a0d961ab3e9d46ca1c0ac351dd20cc657..f5b8b594a24f525586c9cf89e5a937533d4a0dff 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/optimisationDict index d20ea8d1024db9e601885836794fc3308e424fb1..1262abb5d64bd293ec815273154c1556c8f901a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/naca0012/turbulent/liftMinimumSetup/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/ma b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/ma index 83fdcac755d7ddf08b3385bf9a10363a3e858896..f6c553d3458b1a3ae263ab31900f13bba7aedd8d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/ma +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/ma @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSchemes index ec46248c3a9365a9a0381c0d552cdae1a67796a7..7e569858c592794c0443d14b31de3f912389d98c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/optimisationDict index 5e151c7e3b2f46683271294564b84cb17984eaec..82a62d49a2f8df54a4599f0da3bc54aa1037e79f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/laminar/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nut index 8c15f0043766f2783606844d5d5016888f87f759..a6372ffaeaabffb47b7b56a722f996e3e9d511d3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/optimisationDict index ae586c53e42582321c23108abfd561ef4840bb9f..3a723a79737e79a16b18cc0512982947b53f68de 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/highRe/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/U index dfc08523511f5d792dd012bbbd02261dd23699a9..d0bd9865debd89a4286581a2e86b8b32f1c2dcfc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Up2 b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Up2 index c7ea16d728bbef653c1371f281ae17767da7e334..6d420622c18b108aeb53ad2103d03864ceae186a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Up2 +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/Up2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/controlDict index b4e8ff6ea54a064722f38f630f0c61433cb4503b..180db73f3fe4e7d3bb192d04a179d5aa93800901 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSchemes index 669555b54a744ec6fde47d041bee7fc3bae5d7bb..559d66e3d2c91de4451fc4859717cfd2731593d1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSolution index 0eabeef1861ce283eab4d5658739ff6d31d44056..a9827057e143e493ede3da95cfb96f44f4c5bb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/optimisationDict index 7c5374436fc7ac3201850cdebc6870c7873fe09d..8401feaa149667c9ca33b93dd1050242fa98ee2f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/multiPoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/optimisationDict index ae586c53e42582321c23108abfd561ef4840bb9f..3a723a79737e79a16b18cc0512982947b53f68de 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/sensitivityMaps/sbend/turbulent/lowRe/singlePoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/U index 592816ea57bf6bc35896d06c31bb3ea214f00b7c..f93635b506756c60b412a93f75ad26bf3aff2d7e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/Ua index bb72675f599a104b891d38fcba8d823ccdc6b2fb..8249c7705c958c87b3f0f18f54a74e88ce734916 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/p index 47d94957c40a35a9674d16bf6f3093e248869268..ce309bf789b4d9fd8732df2899d16849cde234d8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/pa index 3a9b137ed78ee8485e6f8be20d958eece7f41c1a..d8862c9cd5f104ec02ae6ee124aa9e7203777a44 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/dynamicMeshDict index 92471d5d90eb35d1d82e56051d4c1e529b0b6cbb..f87feb9c558aca64f8ab5dd005d4e5ba676d780d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/transportProperties index a177f95076535110bf89499a9aedd80524777da7..8fe942f7b8876989468f19d347cb255e79373c43 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/blockMeshDict index e895da8b3155067415f0f68de9806d1a8fc13ba1..578393c5b1a33c9347591195a90c5000ccbf9083 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/controlDict index 8c2f347fd39d67c7b6d6430100c6f2eff54b41d9..7b0183eb8b6e26c6117d66bfbc90c38b7844cf00 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/decomposeParDict index 2f2e3e1f8b5bed1b38a0a6c176bdc1b78153d42b..f96bcd1dbe2992decf57eac62e3df5f7baee1093 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSchemes index dbdef8bd5fd573adaa12bb0600327f6984aa7aec..c53836447c8ef38783ce6fe1c59c7154afbdf574 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSolution index 7bf43897e798a8f2bd40582d2137d48b2d2034ef..672ebaed512d7d718549d13010046b6efdf9f90b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/optimisationDict index 6d5fbcc11e4c4cee384c5d12e0c6396578d53d1e..77f31538783004c78389e92fe1e763cebf9ec20b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRate/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/U index 592816ea57bf6bc35896d06c31bb3ea214f00b7c..f93635b506756c60b412a93f75ad26bf3aff2d7e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/Ua index bb72675f599a104b891d38fcba8d823ccdc6b2fb..8249c7705c958c87b3f0f18f54a74e88ce734916 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/p index 47d94957c40a35a9674d16bf6f3093e248869268..ce309bf789b4d9fd8732df2899d16849cde234d8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/pa index 3a9b137ed78ee8485e6f8be20d958eece7f41c1a..d8862c9cd5f104ec02ae6ee124aa9e7203777a44 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/dynamicMeshDict index 1fdce135c061ccbbd17e72cc45379828ffff5e5d..2b73195cebbf45984c246cd4ccbfb56312a0fe03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/transportProperties index a177f95076535110bf89499a9aedd80524777da7..8fe942f7b8876989468f19d347cb255e79373c43 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/blockMeshDict index e895da8b3155067415f0f68de9806d1a8fc13ba1..578393c5b1a33c9347591195a90c5000ccbf9083 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/controlDict index 0aafd01b36c897c1511ef1bc664ccaa50295e7ad..673bbcf8c0c221a26dabea1bad1b0e607ccba340 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/decomposeParDict index 2f2e3e1f8b5bed1b38a0a6c176bdc1b78153d42b..f96bcd1dbe2992decf57eac62e3df5f7baee1093 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSchemes index dbdef8bd5fd573adaa12bb0600327f6984aa7aec..c53836447c8ef38783ce6fe1c59c7154afbdf574 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSolution index 7bf43897e798a8f2bd40582d2137d48b2d2034ef..672ebaed512d7d718549d13010046b6efdf9f90b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict index d91e886c4956b3584fffa44a5adc53117134523a..860e466c1fa33ede24f1d3465bdd2c1a022068d7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/U index 592816ea57bf6bc35896d06c31bb3ea214f00b7c..f93635b506756c60b412a93f75ad26bf3aff2d7e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/Ua index bb72675f599a104b891d38fcba8d823ccdc6b2fb..8249c7705c958c87b3f0f18f54a74e88ce734916 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/p index 47d94957c40a35a9674d16bf6f3093e248869268..ce309bf789b4d9fd8732df2899d16849cde234d8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/pa index 3a9b137ed78ee8485e6f8be20d958eece7f41c1a..d8862c9cd5f104ec02ae6ee124aa9e7203777a44 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/dynamicMeshDict index 1fdce135c061ccbbd17e72cc45379828ffff5e5d..2b73195cebbf45984c246cd4ccbfb56312a0fe03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/transportProperties index a177f95076535110bf89499a9aedd80524777da7..8fe942f7b8876989468f19d347cb255e79373c43 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/blockMeshDict index e895da8b3155067415f0f68de9806d1a8fc13ba1..578393c5b1a33c9347591195a90c5000ccbf9083 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/controlDict index 8c2f347fd39d67c7b6d6430100c6f2eff54b41d9..7b0183eb8b6e26c6117d66bfbc90c38b7844cf00 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/decomposeParDict index 2f2e3e1f8b5bed1b38a0a6c176bdc1b78153d42b..f96bcd1dbe2992decf57eac62e3df5f7baee1093 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSchemes index dbdef8bd5fd573adaa12bb0600327f6984aa7aec..c53836447c8ef38783ce6fe1c59c7154afbdf574 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSolution index 7bf43897e798a8f2bd40582d2137d48b2d2034ef..672ebaed512d7d718549d13010046b6efdf9f90b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/optimisationDict index 53adbc6c74cebfcfd36ff22f64f7d650f1398095..8bb2c1894b8c12d577c47103f044557a55d6198d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/uniformityPatch/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/U index 187232313d660426c8547b46f1bdd069f94473b9..75f7136e70d1e074c39e4a1ab6529b4d926787e0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/Ua index 929a352f97a440bd5d03423979fe8b105722cacc..c3819681453dc6938e5bf635c8b85b4186590b1f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/fixedInlet b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/fixedInlet index 4c91f75fc285d6f660b5646694b1b944c337f2ed..125fbb7bc20e6e06b7203d3c70e0bc77b6db089c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/fixedInlet +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/fixedInlet @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/frontBackUpperPatches b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/frontBackUpperPatches index 19b3e2353d70716c4e9020bb3c03448d58a4ae17..f17a37762cf61bf0ddd1eba9777f547f2d88f22a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/frontBackUpperPatches +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/frontBackUpperPatches @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/initialConditions b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/initialConditions index 709fa8847cae8dd65dbfa51da4b9e2a9098bcfa4..57eeb939a4ddf5ec0b9266ca8bf11e05d8e180aa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/initialConditions +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/include/initialConditions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuTilda index 36e5b9356fbbc0805bc097dcfaee4ff84a38f5f2..50e1881dd9964184a6a09f5e630c1eec76b757c3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuaTilda index 7bfaf1b8bedb79ba36c998cfa0b0863c94a9e2df..c503c3cdb4095d026719ddeedb03033d6ae42fca 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nut index 34b37462a571469fe528ea00d1fe88a0d983babf..6f4e2201c0b81ee9a696f4a466ebba15bcb2d294 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/p index fdf959107500a89433d20c0d077043ee18b6e878..29d63c931abe6de72ca82bcf83445f3140e94ba9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/pa index fed6a609da9e34ab0bd8050eb286cb38f92db1d8..672c43553fcd79cca90258b616c2cfc6f92530f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/adjointRASProperties index 50ffea5c2fc54c6ac4fb268c1dd00770d07821d9..0a6b25ed83500de5f72676839da87fbbb9ce2443 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/controlPoints.org/boxcpsBsplines0 b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/controlPoints.org/boxcpsBsplines0 index 6f183aaefff7e0afaf845714291ec63095bff99e..906bd5c361046941c615daf813fade15c60151e8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/controlPoints.org/boxcpsBsplines0 +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/controlPoints.org/boxcpsBsplines0 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/dynamicMeshDict index cc874307abcdb78da1361a65603e75997523eae2..07f9a92a27d46982385de2ed215515e8c32cf045 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/blockMeshDict index 3f23062afc6e9557904cb8f64c846bdfd3887539..be4121d46111fb6efb89275f4a307c1b119f19aa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/controlDict index d964709e13633b9aa4fd2c4e285fbc245c4d1d84..b54d0f1f104b129a6218f2336aa9ec905aac0c4a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/decomposeParDict.20 b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/decomposeParDict.20 index 678cef84b879e28bdf65bc5e1b8228b901be8717..edff09e96cab0001d45c8e6ec1a115bb3e217769 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/decomposeParDict.20 +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/decomposeParDict.20 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSchemes index 3c690705c5dc6bee2c6005a27af201514776b7dd..4b4541dad9f44558079cc3c2dbbf25cf6a789588 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSolution index bf20aa5fb4e92c7a4765ba376132c2a00889ba52..807003097f79b60017700585db3a06005a820b50 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/meshQualityDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/meshQualityDict index e35092c9af2a9fc86f45774e9d7d73e7be224060..c5e4f5ec15c6034ff30f9db5de96234df3a6ec4e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/meshQualityDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/meshQualityDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/optimisationDict index 9d54a297fa04fe1f9a74a155fab5819f577c4d64..06b3acacd75c5a89c1f3cf98df82afa3b64ab562 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/snappyHexMeshDict index be26f787ad4288edbff50b9a75a6c6873b474dc5..5de18588eb3180e1e5399912749c275f3bdfc786 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/surfaceFeatureExtractDict index b6841c0d5e55e4251f8ff49eceafd4e911f8628b..6a8f29e7874e69730a9d6905901d59bdbe0cce2d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/motorBike/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/U index 99630969dde64b063d3d1b357c13d5f9ff03a37d..a83a2ceb25f59891da3a7351ad8be595d0348e3f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/Ua index 797e662fdec47720097b9c294f4d1b728c910470..48ef08308677349869e219bf3d36ad1171669974 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/k b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/k index 700753d1fde73f726ea5bfeb355a38e0db9fcbff..659e5a128bf007d3581f8c0836de17797129d520 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/k +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/ka b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/ka index 525dd90ab1d6ef484a52501bf0861ffb6c66f120..8cd621a95d9bd6ee3be802abc63f4c8f4e299a42 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/ka +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/ka @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/nut index da3f6e52008ec6b917b6f1c99ac3bfc486161d5e..5f5b06be86c87e52fdf35f8482d261353d60776a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/omega b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/omega index e4e76b6e4cc183678f08a7c135e87faeed4318bd..8797f65faedaeb46fc0c3f8cfddcc1ee1b59a2ea 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/omega +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/p index 32c1d78563fcfad814585bc5a98dcb728bbacdd6..309ab77ff65010ce5680a73ab98b33bf1cc08504 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/pa index 6b159331aac68e56e745f20c3e033c71859ca2b1..7a90b746fabd1f69aa0d95975874053c04466cf0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/wa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/wa index f33c10205df3f79fe086330b124ef225d67d7e10..d1aa233d21e6a10f7941335f540ecf45d61ada4f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/wa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/0/wa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/adjointRASProperties index 72a41e7c5871aa772e106e252f4afdace60bcb1e..0385759c9105accdf8cebdf5f6a7d593c937f79e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/dynamicMeshDict index fe5deedc85794110e97a694d5d4a163a6f326ff8..e720dcae682e41ee558a50df503c11ad7713ed42 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/transportProperties index 0b1303021ae21f1608badf337971304565fc36be..88586a8d2c65c7e554aff0c48fe8a778542a55bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/turbulenceProperties index ad83c98501fcf94851fefe152c77deb8acdc3313..4fb82b713a9c67e34f5bc75137b8e26ec0b8c4d7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/controlDict index 8da11d357db01e493fb7cfb8908e6fdd6b8b5750..6f25668a74e5b5643db432b1e8c182f2345e3d9a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/decomposeParDict index e4533c6c46681ca1d88214637a9a500cac1bcde8..f6b7521e86f3f8b949669a855db2294941e6a7f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSchemes index bfc4d9cf5cabbf75e6c1f526a059513d74a71b39..57073201af8700c62f3891f0b2e57f070476d588 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSolution index d75f756a16433d6694dece41624464d3b86c431b..0c67b0762de177ea61fd130a789b26b7c569c26c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/optimisationDict index e6c27cab83d94f716995b09ed65acf4c8e7813eb..32de9d8a178bc765604f3b8e590b37976cfe4ec9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/kOmegaSST/lift/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/dynamicMeshDict index 9a8adacc8ff2d51fb3aa0893bc0a3edcf1ad1595..359a636574610a5263bb2ef0229e0a9c5b72abbb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSchemes index 3ee5c35e135b107c7d29c268bfb977f4e01d926e..24c883d1f4cd5211865b19b671c3c2fbe71b3654 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/optimisationDict index bc246ade77d0641f9baf0522ba34cdf730af1c8d..07e8d6dadbcccad03ad17d89e34a9944f68f8db5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/drag/primalAdjoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/dynamicMeshDict index e19a753cd83b13a1e43d624512178ca50b3f4522..6c2c59ef1077d8bafde8bb57142d667092af85fb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/controlDict index f276a28897f4af093c3019a7de4fe323ad7ad323..65209703406c197dd969b879c2c2b71c3b8a954c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSchemes index 9ff1f4482c41fba75460ba635cf0c902dd64f325..c2ab46b96ed1a555ea81424db78d310f6fa7361f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/optimisationDict index 2b42ca7b5633ea4153eb1874918e0c031bc69b6a..bab19274b8600bba0464e9c658a10d863f390e6b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/lift/opt/constraintProjection/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/U index d60a243f00759eccdcc850ea2651a6d43d130220..1421a47d3ca2b75f09e57c5821dda17c49d19474 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/Ua index 4149602bd573655aab33af3030fe0d7ddafc74b5..269baa0d67372c90db7bf0b1f67ed1b6ea105448 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/p index 27df4bd45ec0dffdc81c4ecbe3580cec49b0049e..50225904e7753b342252e2355746bfb2e4feed58 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/pa index 49502efe9e68a2b1e062ab8c6372c58c341cc1ed..e18e982dc6ab3045a1186f06b5b3127d359be90a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/dynamicMeshDict index 9a8adacc8ff2d51fb3aa0893bc0a3edcf1ad1595..359a636574610a5263bb2ef0229e0a9c5b72abbb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/transportProperties index 568ca4f38df2bee4f49853c36435fc323e24f688..0a8851c266d0df9231c3e83f3710160772cf0acb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/turbulenceProperties index 18c7349c2b123bfa903d1169ee629b00a5ccb2ca..a6da1b76871f514420bbbdeb744a8cadd9dc978a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/decomposeParDict index 6971fbdbf7f72a49d1d3f0d392ae2931f6443a9e..198c2d71cff9da515f59eb43fac085a0ba23c11a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSchemes index 3ee5c35e135b107c7d29c268bfb977f4e01d926e..24c883d1f4cd5211865b19b671c3c2fbe71b3654 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSolution index 15bc655f425c2deabaaba1723a98e0f1561920f1..4e36e6178580de6ae2b05c1933df21d8df3293b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/optimisationDict index 2e350965c18311986a58eda4e9e7a74a075b5ac2..b189972a871790b4ef5ea17e1d4d56bd91aa1d9a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/moment/primalAdjoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/U index d726ea5976e47cf58bd80dae497e768d050eea61..26267a1abb19a44c002ae8db67e4d8efb872faf8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/Ua index 797e662fdec47720097b9c294f4d1b728c910470..48ef08308677349869e219bf3d36ad1171669974 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/p index 32c1d78563fcfad814585bc5a98dcb728bbacdd6..309ab77ff65010ce5680a73ab98b33bf1cc08504 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/pa index 6b159331aac68e56e745f20c3e033c71859ca2b1..7a90b746fabd1f69aa0d95975874053c04466cf0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/adjointRASProperties index 7cb830143180ee04aa8334452143fdfa8451e9ee..77ed736d9d03b28e718cf4d0593431e350849c64 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/dynamicMeshDict index 02c63e4930943a966038fb927befb313e74b952c..63dd12a154d12fe6c0622305639490eb831a3096 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/transportProperties index d61f2ed20a9d9ee29e4234534926e2ba2a0d5dd0..8eca6c9ec251fab95abb69d67be0280beac30cc6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/controlDict index 965d21b333ff322180ad8bdf4b3124667785e39b..3042aebd950c2787f5db86851ce183e30f0e0b57 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/decomposeParDict index 0a1bf76c271e53e136521311ae35b53babd335a6..02a42243aa3ba0448f9236433530260dd14f0754 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSchemes index 9d75ec11c804150e124f721b2ff2cfa147e40de6..903e326fbc1ed5c22b0c8c5aa4d357ef02a75580 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSolution index 5a77dd100973bc1e22a503e3f0d953e654f75151..56314e9f2f629d142db1c8aec980d4f43fcb4cf6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/optimisationDict index 65432b93d9ca361bd1949023b3c4840907cb7058..8492685921dacd6ceed1dad9380cc71a7aa0c75e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/naca0012/laminar/multipleConstraints/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSolution index 01c3eec4b7fbb1ae5418c03d2d78d48a1d8dd00e..1931b02f8db739074abb8a29521f83f19c8865a9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/optimisationDict index 329cef3cd7c701913ac6a883165f03fb4ba8c523..67cb4d4c2d5d0ddc3cbebfc1e0bde4f3dbf32084 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/constrained/SQP/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/dynamicMeshDict index 3ce2079b5d3d222bc7e719316f45463e13fcd2f0..722f14122155ff893a00ec62e368b60b9286f27e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/optimisationDict index cac50ac7095553f0497e8b70cb0e61ad867d7dd6..13b8ba7cbc4053e83c3e831d85ead5cd1d6c6b70 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS-transformBox/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/optimisationDict index cac50ac7095553f0497e8b70cb0e61ad867d7dd6..13b8ba7cbc4053e83c3e831d85ead5cd1d6c6b70 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/BFGS/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/optimisationDict index c4b784d81da02f04a6d9976bd484565cc6c62bce..16a6353add9dbdf52b1c8ad88768922a88e4add6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/losses/SD/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/controlDict index a676be50dda5f63de54dc7578f9e4a63899ad2db..e50f62c7f1a326731c8f16bb519b55510db35d5f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/optimisationDict index 8fb40fe3850d83f22e390bffacad1558d445f9b3..53bc3710cc17600c924766faea452820e0150c0b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/topoSetDict index b8d6253af0612faa0b73c119d581d0d2e87be3c1..72c29444d24ac3b84bed86bab139ffd37dc3dbe3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/opt/unconstrained/uniformityCellZone/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/U index 9e4f0b16cd5388d3701f16383ff26ea77dd45c2d..1f7cee56a7bf0b5abe4d1158f971f85eb67a964b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/ma b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/ma index d74963feae7f4067c9f7a51e555f8f88f9dcdc82..59ae8aeb677598b95cc01386a5e9fd56081cc1ca 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/ma +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/ma @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/adjointRASProperties index deb7a032efdd885d815d4b62ca4a2ae28c196d7b..28deb7451fb676921e95cb9c1a2d3216eb08611b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/turbulenceProperties index 741f2359415e85e3103265a87eb14ffd8ab9629c..791fc891805cdd83f722c96496591dae58546c29 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSchemes index f4e8abf4f86bc09105bb2a292651823d128e3abd..72252a24e9b3a3c4e9b7a9b9074c73250fd4c3b2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSolution index 71204b22adb10bb0d9645948f1f94554ae9915b3..0de721c687e235264061eece7eeaabcc33a14e24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/optimisationDict index 5a120862457cc7545d202c04f30b73bae7101d0c..55cc4f77ea11d1898742d1deb87588f43845f478 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/laminar/primalAdjoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/controlDict index 8ac263eda1ec784dc4b5ae30a09b0bf1aff83ce1..35bdc89fe10f7a1b1a6b09925b2ddfeb66f7340a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSchemes index b8a0585fe10bb415bb85a985cef6c195bfba5c11..e88761b3039e7c90eddd344bd9f861f53cf88dd3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/optimisationDict index d2e4c33a3cb005fa53c0f52199c901b9cb5f1304..29a7c1f667c5339606c83d801727b3350e64dfdb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-continuation/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/controlDict index a676be50dda5f63de54dc7578f9e4a63899ad2db..e50f62c7f1a326731c8f16bb519b55510db35d5f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSchemes index b8a0585fe10bb415bb85a985cef6c195bfba5c11..e88761b3039e7c90eddd344bd9f861f53cf88dd3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/optimisationDict index d2e4c33a3cb005fa53c0f52199c901b9cb5f1304..29a7c1f667c5339606c83d801727b3350e64dfdb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS-oneGo/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/U index dfc08523511f5d792dd012bbbd02261dd23699a9..d0bd9865debd89a4286581a2e86b8b32f1c2dcfc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Up2 b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Up2 index c7ea16d728bbef653c1371f281ae17767da7e334..6d420622c18b108aeb53ad2103d03864ceae186a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Up2 +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/Up2 @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSchemes index 669555b54a744ec6fde47d041bee7fc3bae5d7bb..559d66e3d2c91de4451fc4859717cfd2731593d1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSolution index 0eabeef1861ce283eab4d5658739ff6d31d44056..a9827057e143e493ede3da95cfb96f44f4c5bb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/optimisationDict index a5c6392d3e189f128c313de09c6a83dafeda2014..fb7fed2084b289385e27fb815cf3f37834b7c63b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/multiPoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/U index 159ede90f7a38c451a261d7279953e880dc0bd99..9b5bba9e496bc4b95df31a32797c3bf5bbe37884 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/optimisationDict index 46a2f524b731179cbc25fc246f9ccf8ca6b58bb6..0ddfe959d4b934a03a0ebaeb6c4ca567ee082d1b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op1/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/U index c7ea16d728bbef653c1371f281ae17767da7e334..6d420622c18b108aeb53ad2103d03864ceae186a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/optimisationDict index cac50ac7095553f0497e8b70cb0e61ad867d7dd6..13b8ba7cbc4053e83c3e831d85ead5cd1d6c6b70 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/losses/BFGS/op2/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/adjointRASProperties index 22837d706077db709ea4b38b0d819c9b05d1b3e9..31621008adf439ab8bacb5e8674832fa1ad96f4e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/dynamicMeshDict index e91de9356761ec494203aacb37961644807e871e..78fb56e1b0aaecf3cee2de779e361bb498a3a8e7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/transportProperties index 45f1d6792a9836e260360876b8bb83aedb139017..c74cd1d01039d8d5ec8db009cc446c7f931648fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/decomposeParDict index 1e46d16e652fec572c5917740a4ccc2660e0b25a..e9c6b0c12f90cd0613cf02ad6d0329d270a4ce0f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSchemes index 68674a7aed8163f533dd6e43374dd2fe386b0690..96aaebf9c63b07433600051f74dd9070f2636ac1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSolution index 95053ada5705251d75908cf5cace598ca30f6287..2e4ead44c439305a745aba79877784798be780da 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/optimisationDict index 078892d763a0e07709285c989abb35c50fe9f0c3..8dd663385bda06992f0001bd9bf65d9b1dc228e4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/topoSetDict index 9575dc1f3f338d9561860da1a45b6866ceb4ddca..1b69b79b209d6f4c52b4031292bad2453b81468c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/nutSqr/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/adjointRASProperties index 22837d706077db709ea4b38b0d819c9b05d1b3e9..31621008adf439ab8bacb5e8674832fa1ad96f4e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/dynamicMeshDict index e91de9356761ec494203aacb37961644807e871e..78fb56e1b0aaecf3cee2de779e361bb498a3a8e7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/transportProperties index 45f1d6792a9836e260360876b8bb83aedb139017..c74cd1d01039d8d5ec8db009cc446c7f931648fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/decomposeParDict index 1e46d16e652fec572c5917740a4ccc2660e0b25a..e9c6b0c12f90cd0613cf02ad6d0329d270a4ce0f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSchemes index 68674a7aed8163f533dd6e43374dd2fe386b0690..96aaebf9c63b07433600051f74dd9070f2636ac1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSolution index 95053ada5705251d75908cf5cace598ca30f6287..2e4ead44c439305a745aba79877784798be780da 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/optimisationDict index 4aa4d2fd3c65d2a0727f2ddb549703a9c7d7b00c..76f5e63c504a0fdfe90f66c8097eeee9975d8200 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/topoSetDict index 6801c097681752747c212178e6565f78b8c2f450..7bf84f991e6a99a569bf3d4359f116478e1b6a5a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/opt/powerDissipation/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/optimisationDict index 5a120862457cc7545d202c04f30b73bae7101d0c..55cc4f77ea11d1898742d1deb87588f43845f478 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjoint/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/U index ff505047b839eb3a9d38bd0ef4dc8802ec68ff3a..6885b21a9883f8898f1cb1bdffc79f2ddb12aea0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/Ua index 0dda68fe21db6d50b0f18e1ee9f79f0f8276a697..3bba3512fed140ad26aa04f234ea74190aacd738 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuTilda index cb6f35946ae8175fb8651b47f50f933fec548a43..a95436be6c4bbea88b5df0cfced8d47d278c6194 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuaTilda index c21ca62287ffbc70c723274f514288e0ab6a1ff3..06e223e84def8f51133bddca5a5d874c169e6fb0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nut index 2921f2f17b260a739e44e65afcb5f94c2a4652a7..00542f74fcdc658e94737bab0a963f03e0a59fad 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/p index 96f6133114f938cf4dd1efd49e68398a4dec6eaf..2b4693c201f6e37a93dba51aa729dc6f2c0b15f9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/pa index b58c0b48e56206e0322e364300a9205294f09f59..24fbb0e3c84a1ce282c713608fa90807ea9d07c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/adjointRASProperties index f3441500b06538c7022fa0782156622b5116e391..7cf6a792b9369ca7ca83cf55290a452980a48d74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/dynamicMeshDict index df1ae47b45727387011b96d0aad544b5686b4120..0c0a629615a4afff5ce761f5c8c90a89db2e3f41 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/transportProperties index 2f49eea5a9037b8bd13dbfcbaed41cc4ac11979c..1eba7d1d954a568e829f17b57a534c27c3a54347 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/turbulenceProperties index 772d1f9f0d91224510191d6a08239a556bab8150..7f5e3304ec01d8e40f9a04389bdf70b0cae9474e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/controlDict index 9bec7506c43fd481fdd34602d60d5b09bf4f02fa..421188c200b4452ae927463bfebb083a49bf0497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/decomposeParDict index 27074c1c6db8308255d01b6eb6970a1d7fb27849..1b1675d4cd65aa92471551f00590fecb70baeb74 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSchemes index 75d89512681f8ddd7e1c8733d4eeccf7f89b9fcc..e5fbafe5a7f43ef5fbcef9c16c600437d54c0e33 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSolution index 17579624ccffb0906820859a1b86cf83ce8ebfa6..cd9e178c77517147341f5aa4064aeaadea6d3dd1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/optimisationDict index 3b9dd45edcc0fa43bd44be3141bb937bfc703814..fff8e83ada32f540ea78c024b4d29e2a2770420d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/SA/primalAdjointFullSetup/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/U index 0a84da66fa8099060fd4b3b0368168d4008b46c0..751f3b2b826b2345b1064f13ee3f3e622e7ef6e7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/Ua index 439d0e4f89ccee666a97d8b0dcfa5d082c557c2b..089864bf396ea4f47e32529f864dade1bbbc0376 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/k b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/k index 5e678248dec2e661384935fd5e21cb5b2848d23b..51da6530338b0eb42b868f90883d39dddec977e3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/k +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/k @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/ka b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/ka index 9b782d53179c887c50da5185487c656e08f67d2c..f056f26de0dceeac063589e587f6d65d85cccbbc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/ka +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/ka @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/nut b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/nut index e1b93658f4929408d471af5e088900c6795dac2a..98dd0759979ccb9d122f55bed7aaf9756f664a71 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/omega b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/omega index 7fcb6ffa01cc2e23b54e41f3809f4479c01a876f..46602ab73511175f66c96a3961996c801159e6ce 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/omega +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/omega @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/p index f311ac098e4892ce73166cf8e187d7305e528add..9ea08e7c2e615c29b3717a6f7ca6e9590b19cfde 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/pa index f1be10d90f44b8ec7f40e4ae4a2a8dbbeacfe55f..af411bc6a084ebc283df3ec73c39f0e93f645784 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/wa b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/wa index 16387d7f65323234a4324fc5bc03e68044e3fd73..a098ca459de3d44cc5d03c42033e198fe7c4b02b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/wa +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/0.orig/wa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/adjointRASProperties index 72a41e7c5871aa772e106e252f4afdace60bcb1e..0385759c9105accdf8cebdf5f6a7d593c937f79e 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/dynamicMeshDict index e91de9356761ec494203aacb37961644807e871e..78fb56e1b0aaecf3cee2de779e361bb498a3a8e7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/transportProperties index 45f1d6792a9836e260360876b8bb83aedb139017..c74cd1d01039d8d5ec8db009cc446c7f931648fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/turbulenceProperties index ad83c98501fcf94851fefe152c77deb8acdc3313..4fb82b713a9c67e34f5bc75137b8e26ec0b8c4d7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/controlDict index 41e8757f2ea569fd4104fe3fce86a5f75f0b7a22..d8d83ebadc4a334c769f80bab7fadee9cd6eca01 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/decomposeParDict index 1e46d16e652fec572c5917740a4ccc2660e0b25a..e9c6b0c12f90cd0613cf02ad6d0329d270a4ce0f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSchemes index 137a82a765b64aaf4314ff6adc239786b428df33..eb14d6a115a490783105764bd2ec4e2fe4061627 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSolution index 5d09d0c4581248ddb6f5f7d3631b020e77d90dee..7023f742513722a2a1f1f1e27b9280f07f9ae2b1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/optimisationDict index b3b4d5b0714d7ac54c070154744288df0c6a6004..a05e46cca5826c607d2effdb7a386f1ebc020312 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/sbend/turbulent/kOmegaSST/opt/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/optimisationDict index 0bbdfffe8236cc6eeaf69fb75750824c1dbf7dab..2529a623222dfc352021dacb1017c219ef8155a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_01x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/optimisationDict index 0b99a17d24819d0f70148ef6f1ad537b8c2f9f3c..ed859431e378075f1924de612fd8d00c654fe1fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_05x_NB_02x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/optimisationDict index dbf60a47ba834530d155af6df68a2746eaf21bee..ba85225672e33f3f3a15edce1a48ad73bada5ffb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_01x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSchemes index 308e44fb5b34ff0bc008fdd1bcceb338a1562aa4..8da9c9bef3158f74b3325e904954bce40bca499a 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/optimisationDict index 1f8523faa761710fba84938d03f7c14f2ef95614..6233efe7a74b914de3b14d8a3b3c9a119e8ecb86 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/levelSet/R_10x_NB_02x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/controlDict index 90985c65ef4d69ad6f5c44a7d041e7ca0bf0d23f..b1f966f654aa093938462386f124d215b560ea0b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/optimisationDict index 269e866a525b9b44044e9892f90ae1a8aa82c576..501ae31ba1730166acc0a449fd090576d77361e3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_05x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/optimisationDict index 92405f4c798c62e9e8bd7c5af73d7756b3cfc9ab..7a683158017c28a7063237185527a573af419bcf 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/optimisationDict index fe09954a8f820a4652d081d644513c9c7c83962d..3030be7f9715c73108499e0ed5448b9c1e8a00d4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvOptions index 31f60d01b8668e56df30f9455914850e510f8891..06a7f12f544faf67e1d550dd1d465f7f9b1d85a7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/optimisationDict index 18cee1524c740fdf4ada238cbfbfb5d287fba835..de3ddadfcf7bc6a6f5dcd7e5d1ab505939b2b6c7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/U index b8be5e15c7ec80694d16823b77f61165479ee1bc..874af8846365dc8cfb81c7bada82949b585b2373 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/pa index c8f7811910601a5280cbc7fcf868b5d4e8ad0075..ab9a180d582ca9894f5a4e01baa7d653760b822d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict index 38d1e970a730433d091c241af7600ccf47ee3cdc..a994d088fc91fa2d4e454651d3017e3bb0764f5b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/blockMeshDict index f8e7bafd2e33707273643279088e868d423bb07c..5af21380ed944a3119c4f2003a1088d0592d1790 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/controlDict index 63ea4f693b7731cca08a4129d5af5acb96059367..a298d749e51ac74db85e7164ff1349ab3f36e766 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvOptions index 75e0961d0e4d2cb1e5561cdc2ae49e5adbd4d1fb..9904a74a0a949d834cb470d0cfe1e0e1b93f0143 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSchemes index 61a66118d86bf431ce3c497efacddc6ac4aa68cf..6a5f34082860c1dc866e03fad71aae1949c0e4bb 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSolution index 62a87b62b7ba9551edb0c0becb54571acdbd012c..4858ac70b355bff4075d19da5b42d84553367fdd 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict index 993468fe11a1105b2ac19d2212f0877a462062ab..bfc58c35883bf803000c1fd73e1a31211b8e79c8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/U index 0b057e929b6adaaee29507df0d8a0b772d7ec029..b7621807bc5808ec8d4ac881e4d6e511d3ef0845 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/pa index d16f9233746e25f3788328854223d7718933e3ea..315b81f5221ce56b0178145a427700714b3ebe39 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSchemes index 2e841a55b92711cb94288876e20e56ac1b708a9c..1bbabaef0fa9cfa1bf03752ebb957fd1df70024d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSolution index c411288b9afe9f571b327e7c28a29ad825437b06..b42c0591cb2ecef9e74fcf23cccc5d25de26e551 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict index 38d1e970a730433d091c241af7600ccf47ee3cdc..a994d088fc91fa2d4e454651d3017e3bb0764f5b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/blockMeshDict index 783a5c3b7eccd0eefe3b0f61fee6131ab6ab9007..905a5f26304d2056057068c47a44fcf13b5398a0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/controlDict index 309ff1f11f304ddc3ca7958055dcc68f15bb325c..eaa31402d0353fefaab1bc50aaf319e5667ca2f6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvOptions index 60720ad338241eafbaa5ac9ea145e0cd0bf513d8..defa657351bb165bdf638e448dee5663d9d689f1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSchemes index 728b68ac8cb99b0441e5b7e51ef6ba7160de0835..622cac11da1a3e2fdf7a908a4c5e03791ea7cac0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSolution index 5d5dda81594280138cb316f554711212b596a5ff..93ba6b4a4cf32658e69f40a6228f91e8cf785724 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict index 814ce76eb3bd1adf7e622471c38a1233f892d9ee..8e6dadcc1a19ffa2107acfa66e295e730243ce91 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/topoSetDict index a8d2fc397b02e7b514e36a12f4da247410b9388e..22abc338193c968b0812adbb866f3399567d5dda 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/U index 0b057e929b6adaaee29507df0d8a0b772d7ec029..b7621807bc5808ec8d4ac881e4d6e511d3ef0845 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/pa index d16f9233746e25f3788328854223d7718933e3ea..315b81f5221ce56b0178145a427700714b3ebe39 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSchemes index 2e841a55b92711cb94288876e20e56ac1b708a9c..1bbabaef0fa9cfa1bf03752ebb957fd1df70024d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSolution index c411288b9afe9f571b327e7c28a29ad825437b06..b42c0591cb2ecef9e74fcf23cccc5d25de26e551 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict index 38d1e970a730433d091c241af7600ccf47ee3cdc..a994d088fc91fa2d4e454651d3017e3bb0764f5b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/blockMeshDict index 783a5c3b7eccd0eefe3b0f61fee6131ab6ab9007..905a5f26304d2056057068c47a44fcf13b5398a0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/controlDict index 270bf9a938fb0ab9baf4696f4a7618b078200eb6..eebc8a367812d5dc7f41fab5f051666251dd78d5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvOptions index 60720ad338241eafbaa5ac9ea145e0cd0bf513d8..defa657351bb165bdf638e448dee5663d9d689f1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSchemes index 728b68ac8cb99b0441e5b7e51ef6ba7160de0835..622cac11da1a3e2fdf7a908a4c5e03791ea7cac0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSolution index 5d5dda81594280138cb316f554711212b596a5ff..93ba6b4a4cf32658e69f40a6228f91e8cf785724 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict index 705c13994ea872d5518031713afb2cce00b5bf8b..aa99fd41ed3c7ac26843e9b4216e04bdd3097330 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/topoSetDict index a8d2fc397b02e7b514e36a12f4da247410b9388e..22abc338193c968b0812adbb866f3399567d5dda 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/U index 0b057e929b6adaaee29507df0d8a0b772d7ec029..b7621807bc5808ec8d4ac881e4d6e511d3ef0845 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/Ua index 74a0c39d03c44238d724061c61e650536c620c3d..d7d34bb6f803e2dc94864acd0f880532a7a71544 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/p index 34fa6f8c3aba06c822b6e9d1d2358c4b9fb7649f..f65b4a99627e3bea096566bc2384712dd662a750 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/pa index 1c198469b0b41a31481ac8aa10f25931fcfabf09..bc7f17f326e2b17d5a3a377d217b41c1cc8dc4c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/turbulenceProperties index 0e4214acde25e17d22a782c6768d6caccf13b19f..f0c14e0b36b0fbba454fc551ecfd76fba5351058 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/U index 5815023d5c8fbf593eb73bfc665d324e226c25ec..c923720500163f7557b43bdd2130e1957b6bfb24 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/Ua index f143d2c856205a604f998a8a5e47f70c39bbb22a..f500ee00c8dda0e4f3ebabebda441373d5cf25b5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/p index 1a47de9170e4d422f48addb918225dee5fa91d25..c62028952b0ebddce60b2195a84b8e297b1ef846 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/pa index d16f9233746e25f3788328854223d7718933e3ea..315b81f5221ce56b0178145a427700714b3ebe39 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSchemes index 2e841a55b92711cb94288876e20e56ac1b708a9c..1bbabaef0fa9cfa1bf03752ebb957fd1df70024d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSolution index c411288b9afe9f571b327e7c28a29ad825437b06..b42c0591cb2ecef9e74fcf23cccc5d25de26e551 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict index 38d1e970a730433d091c241af7600ccf47ee3cdc..a994d088fc91fa2d4e454651d3017e3bb0764f5b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/blockMeshDict index 783a5c3b7eccd0eefe3b0f61fee6131ab6ab9007..905a5f26304d2056057068c47a44fcf13b5398a0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/controlDict index 270bf9a938fb0ab9baf4696f4a7618b078200eb6..eebc8a367812d5dc7f41fab5f051666251dd78d5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/decomposeParDict index 794e2fb808598a832cb63c3796e6948b3a48d5bf..18068a3bf053588e3840c9b4cb68f764fb7ee84d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvOptions index 60720ad338241eafbaa5ac9ea145e0cd0bf513d8..defa657351bb165bdf638e448dee5663d9d689f1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSchemes index 728b68ac8cb99b0441e5b7e51ef6ba7160de0835..622cac11da1a3e2fdf7a908a4c5e03791ea7cac0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSolution index 5d5dda81594280138cb316f554711212b596a5ff..93ba6b4a4cf32658e69f40a6228f91e8cf785724 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict index 5cd30bfe17055a403842540ff2d718b545fd435c..39495b23f7f56f91abead3082663109ce4b3951d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/topoSetDict index a8d2fc397b02e7b514e36a12f4da247410b9388e..22abc338193c968b0812adbb866f3399567d5dda 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/U index 850422dc02a1d1c7a61d7e556a2b5a663b4e5366..ec1ccd7e1d3f322c99b5dc93d3f9c24a854382c6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/Ua index 5d0a83419ecd4a36e18a7ae85c28b75d9a20c89a..e8e261eee87859bad56e6274e4059b41f64ed2b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/p index 4d4045b2164d242b95ee7f085d46f26632ddb523..0a914ca0f639715232089fe62e3534ba04c88745 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/pa index 58b8ae477b834da3a3a246a519af05547cf1a3bf..caab4465f575b4591230ae32e9017a43820f8376 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/U index 9ebefcb37421cc4f67fc63f5a4f0ba523ec9b33d..7a24cbae041c1e11d3fa98444b0a664442f990b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/Ua index 15c1331f96122a63c7ad8e03294ef6c0cb8fa933..95b207592ee912f2774204968d25319c84c4eba3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/p index 6be7da1bc57c9e1a28f5eb737cc2649649f40d45..f5c374a0e980167c149f01185c3d63c32c675497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/pa index f6a9855753336a90b7792b02cd71acb4f8ef0811..339401ae9b626f5029f47840ea448e430057c1e6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/dynamicMeshDict index e733e482044eb1503d6eafd6a4d9094d7ef6fd50..53d35a787a4ab38425a3706ebfd7af3eebe919ec 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/blockMeshDict index 40e040179984ccf286c6c9364869999f4903c5b4..40d48395d5ebae4c23112917cab7975f71440360 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/controlDict index c200f612ad1187638780b5432c8194bfa45c8c53..3a97ac4d2778e425d3d069af94b712feddeeba98 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/decomposeParDict index 7353d7f448b6a336c14ee6f87c80429867833aa1..7f6baac6ccc4034c1a31bde182bdfe2ec45a7ee0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSchemes index ad725438ff4501b3b950baa46930ae7b601b514b..0673d46a7bb036f83815cfb6c2c82dbdba03c8db 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSolution index 10b885cbe4169718b1428829433e6b040cf9f73d..7fb387c8a6ae8c3080a83bc4eb1ab1ac709e1f23 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/optimisationDict index 2a25295a7441f4f49a6d4496d4150e177b29905c..f6786be645f41f895c689b6db235408fe56ddcdf 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/snappyHexMeshDict index 36b29e8a4a54666723b2359e21831d9176cd2788..f023e5b156275742d2035c42fb1cc1bada41b4be 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/surfaceFeatureExtractDict index ea701f98166455bef25db77775e1a804dfa5e4b8..d9b3f3c64c8b6286159ba8e2b4603108dc1aabc0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/reEval/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/blockMeshDict index 63ebb39ebb4f45ed245fe88b50e96066cc7d512d..a98c9165fe7017fa75f75930cd660238e8c2f0bc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/controlDict index cd9135e01ae5729fafc4f2719b0c70c260a3feab..482b76738021ca09a3dc306b8c1a95fc0c0cc8ee 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/createPatchDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/createPatchDict index 5ee9faf013be6046cb8b134a974b6dd36366e21f..21a9f1f7dfe084f5dbcbccf4006b1be6d57ecb73 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/createPatchDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/decomposeParDict index f4bf6b8738928c5a456c3fb7e9d09f0bf8868d93..8106d6ec75693440e97d2992b576781de5026a53 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2306 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvOptions index 70d6bcb532f64d66bf93ba019b9088664ff1d21f..a86363cde084a4521b4d0e3ead14ae445dbbb9e9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSchemes index 20c4ac4e11c574585b4d0d81e17ed694f039ba08..9e8553999d7e931762aac04815d43b77b8e17bcc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSolution index 7cb8612359c60ed1ccd7cfd54f1916f0b5389500..42f05896c0b6072c3961c2d0407df6638650b6ef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/optimisationDict index 49e88a0ea2b1b132448b7cb45b455e75da888e3e..a7abedacc42cf0ff62afccb9641fd3d07be2196d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/topoSetDict index f469e46267a9416664d75e686dda19d6cce44845..7d0884c2be48abf3f03f53815ac40d49fc0dfdef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity-SQP/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/U index 850422dc02a1d1c7a61d7e556a2b5a663b4e5366..ec1ccd7e1d3f322c99b5dc93d3f9c24a854382c6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/Ua index 5d0a83419ecd4a36e18a7ae85c28b75d9a20c89a..e8e261eee87859bad56e6274e4059b41f64ed2b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/p index 4d4045b2164d242b95ee7f085d46f26632ddb523..0a914ca0f639715232089fe62e3534ba04c88745 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/pa index 58b8ae477b834da3a3a246a519af05547cf1a3bf..caab4465f575b4591230ae32e9017a43820f8376 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/U index 9ebefcb37421cc4f67fc63f5a4f0ba523ec9b33d..7a24cbae041c1e11d3fa98444b0a664442f990b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/Ua index 15c1331f96122a63c7ad8e03294ef6c0cb8fa933..95b207592ee912f2774204968d25319c84c4eba3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/p index 6be7da1bc57c9e1a28f5eb737cc2649649f40d45..f5c374a0e980167c149f01185c3d63c32c675497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/pa index f6a9855753336a90b7792b02cd71acb4f8ef0811..339401ae9b626f5029f47840ea448e430057c1e6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/dynamicMeshDict index e733e482044eb1503d6eafd6a4d9094d7ef6fd50..53d35a787a4ab38425a3706ebfd7af3eebe919ec 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/blockMeshDict index 40e040179984ccf286c6c9364869999f4903c5b4..40d48395d5ebae4c23112917cab7975f71440360 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/controlDict index c200f612ad1187638780b5432c8194bfa45c8c53..3a97ac4d2778e425d3d069af94b712feddeeba98 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/decomposeParDict index 7353d7f448b6a336c14ee6f87c80429867833aa1..7f6baac6ccc4034c1a31bde182bdfe2ec45a7ee0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSchemes index ad725438ff4501b3b950baa46930ae7b601b514b..0673d46a7bb036f83815cfb6c2c82dbdba03c8db 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSolution index 10b885cbe4169718b1428829433e6b040cf9f73d..7fb387c8a6ae8c3080a83bc4eb1ab1ac709e1f23 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict index 2a25295a7441f4f49a6d4496d4150e177b29905c..f6786be645f41f895c689b6db235408fe56ddcdf 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/snappyHexMeshDict index 36b29e8a4a54666723b2359e21831d9176cd2788..f023e5b156275742d2035c42fb1cc1bada41b4be 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/surfaceFeatureExtractDict index ea701f98166455bef25db77775e1a804dfa5e4b8..d9b3f3c64c8b6286159ba8e2b4603108dc1aabc0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/blockMeshDict index 63ebb39ebb4f45ed245fe88b50e96066cc7d512d..a98c9165fe7017fa75f75930cd660238e8c2f0bc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/controlDict index cd9135e01ae5729fafc4f2719b0c70c260a3feab..482b76738021ca09a3dc306b8c1a95fc0c0cc8ee 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/createPatchDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/createPatchDict index 5ee9faf013be6046cb8b134a974b6dd36366e21f..21a9f1f7dfe084f5dbcbccf4006b1be6d57ecb73 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/createPatchDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/decomposeParDict index f4bf6b8738928c5a456c3fb7e9d09f0bf8868d93..8106d6ec75693440e97d2992b576781de5026a53 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2306 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvOptions index 70d6bcb532f64d66bf93ba019b9088664ff1d21f..a86363cde084a4521b4d0e3ead14ae445dbbb9e9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSchemes index 20c4ac4e11c574585b4d0d81e17ed694f039ba08..9e8553999d7e931762aac04815d43b77b8e17bcc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSolution index 7cb8612359c60ed1ccd7cfd54f1916f0b5389500..42f05896c0b6072c3961c2d0407df6638650b6ef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict index 3cfad7b53e4bc4bc24a8cab57cdfccb57e6fc05c..4a598331800bc58da4a4d280ea61726475e525b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/topoSetDict index f469e46267a9416664d75e686dda19d6cce44845..7d0884c2be48abf3f03f53815ac40d49fc0dfdef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/U index 850422dc02a1d1c7a61d7e556a2b5a663b4e5366..ec1ccd7e1d3f322c99b5dc93d3f9c24a854382c6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/Ua index 5d0a83419ecd4a36e18a7ae85c28b75d9a20c89a..e8e261eee87859bad56e6274e4059b41f64ed2b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/p index 4d4045b2164d242b95ee7f085d46f26632ddb523..0a914ca0f639715232089fe62e3534ba04c88745 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/pa index 58b8ae477b834da3a3a246a519af05547cf1a3bf..caab4465f575b4591230ae32e9017a43820f8376 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/U index 9ebefcb37421cc4f67fc63f5a4f0ba523ec9b33d..7a24cbae041c1e11d3fa98444b0a664442f990b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/Ua index 15c1331f96122a63c7ad8e03294ef6c0cb8fa933..95b207592ee912f2774204968d25319c84c4eba3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/p index 6be7da1bc57c9e1a28f5eb737cc2649649f40d45..f5c374a0e980167c149f01185c3d63c32c675497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/pa index f6a9855753336a90b7792b02cd71acb4f8ef0811..339401ae9b626f5029f47840ea448e430057c1e6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/dynamicMeshDict index e733e482044eb1503d6eafd6a4d9094d7ef6fd50..53d35a787a4ab38425a3706ebfd7af3eebe919ec 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/blockMeshDict index 40e040179984ccf286c6c9364869999f4903c5b4..40d48395d5ebae4c23112917cab7975f71440360 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/controlDict index c200f612ad1187638780b5432c8194bfa45c8c53..3a97ac4d2778e425d3d069af94b712feddeeba98 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/decomposeParDict index 7353d7f448b6a336c14ee6f87c80429867833aa1..7f6baac6ccc4034c1a31bde182bdfe2ec45a7ee0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSchemes index ad725438ff4501b3b950baa46930ae7b601b514b..0673d46a7bb036f83815cfb6c2c82dbdba03c8db 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSolution index 10b885cbe4169718b1428829433e6b040cf9f73d..7fb387c8a6ae8c3080a83bc4eb1ab1ac709e1f23 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict index 2a25295a7441f4f49a6d4496d4150e177b29905c..f6786be645f41f895c689b6db235408fe56ddcdf 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/snappyHexMeshDict index 36b29e8a4a54666723b2359e21831d9176cd2788..f023e5b156275742d2035c42fb1cc1bada41b4be 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/surfaceFeatureExtractDict index ea701f98166455bef25db77775e1a804dfa5e4b8..d9b3f3c64c8b6286159ba8e2b4603108dc1aabc0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/blockMeshDict index 63ebb39ebb4f45ed245fe88b50e96066cc7d512d..a98c9165fe7017fa75f75930cd660238e8c2f0bc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/controlDict index cd9135e01ae5729fafc4f2719b0c70c260a3feab..482b76738021ca09a3dc306b8c1a95fc0c0cc8ee 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/createPatchDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/createPatchDict index 5ee9faf013be6046cb8b134a974b6dd36366e21f..21a9f1f7dfe084f5dbcbccf4006b1be6d57ecb73 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/createPatchDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/decomposeParDict index f4bf6b8738928c5a456c3fb7e9d09f0bf8868d93..8106d6ec75693440e97d2992b576781de5026a53 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2306 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvOptions index a9d9160d0d5277b300dba810efe8596cde308f15..f5e110af8c361aae604fe81c929539e83a62fc15 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSchemes index 20c4ac4e11c574585b4d0d81e17ed694f039ba08..9e8553999d7e931762aac04815d43b77b8e17bcc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSolution index 7cb8612359c60ed1ccd7cfd54f1916f0b5389500..42f05896c0b6072c3961c2d0407df6638650b6ef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict index 9709059e1dad648d351ec87ab0b82212cab277c8..020a054499b83d3443dd1dcda4d494f4d735bf87 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/topoSetDict index f469e46267a9416664d75e686dda19d6cce44845..7d0884c2be48abf3f03f53815ac40d49fc0dfdef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/U index 850422dc02a1d1c7a61d7e556a2b5a663b4e5366..ec1ccd7e1d3f322c99b5dc93d3f9c24a854382c6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/Ua index 5d0a83419ecd4a36e18a7ae85c28b75d9a20c89a..e8e261eee87859bad56e6274e4059b41f64ed2b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/p index 4d4045b2164d242b95ee7f085d46f26632ddb523..0a914ca0f639715232089fe62e3534ba04c88745 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/pa index 58b8ae477b834da3a3a246a519af05547cf1a3bf..caab4465f575b4591230ae32e9017a43820f8376 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/U index 9ebefcb37421cc4f67fc63f5a4f0ba523ec9b33d..7a24cbae041c1e11d3fa98444b0a664442f990b6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/Ua index 15c1331f96122a63c7ad8e03294ef6c0cb8fa933..95b207592ee912f2774204968d25319c84c4eba3 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/p index 6be7da1bc57c9e1a28f5eb737cc2649649f40d45..f5c374a0e980167c149f01185c3d63c32c675497 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/pa index f6a9855753336a90b7792b02cd71acb4f8ef0811..339401ae9b626f5029f47840ea448e430057c1e6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/0.orig/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/adjointRASProperties index 8de2e3a77ac7ae45557d68c119c176406075e968..907d7ff80155c510a465653b3f0ba95f8b4259b0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/dynamicMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/dynamicMeshDict index e733e482044eb1503d6eafd6a4d9094d7ef6fd50..53d35a787a4ab38425a3706ebfd7af3eebe919ec 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/dynamicMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/dynamicMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/transportProperties index 34ed6f3070e9a50ddd883294834ad76056be8aae..bf55607ced7a5a58eb13822e780c62122c3b5707 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/turbulenceProperties index 2968578f3b1986783591342352f31b0d430b3b63..3885bb4d7bdec2a0079bb61902eb69bd11c492a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/blockMeshDict index 40e040179984ccf286c6c9364869999f4903c5b4..40d48395d5ebae4c23112917cab7975f71440360 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/controlDict index c200f612ad1187638780b5432c8194bfa45c8c53..3a97ac4d2778e425d3d069af94b712feddeeba98 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/decomposeParDict index 7353d7f448b6a336c14ee6f87c80429867833aa1..7f6baac6ccc4034c1a31bde182bdfe2ec45a7ee0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSchemes index ad725438ff4501b3b950baa46930ae7b601b514b..0673d46a7bb036f83815cfb6c2c82dbdba03c8db 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSolution index 10b885cbe4169718b1428829433e6b040cf9f73d..7fb387c8a6ae8c3080a83bc4eb1ab1ac709e1f23 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict index 2a25295a7441f4f49a6d4496d4150e177b29905c..f6786be645f41f895c689b6db235408fe56ddcdf 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/snappyHexMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/snappyHexMeshDict index 36b29e8a4a54666723b2359e21831d9176cd2788..f023e5b156275742d2035c42fb1cc1bada41b4be 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/snappyHexMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/snappyHexMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/surfaceFeatureExtractDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/surfaceFeatureExtractDict index ea701f98166455bef25db77775e1a804dfa5e4b8..d9b3f3c64c8b6286159ba8e2b4603108dc1aabc0 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/surfaceFeatureExtractDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/surfaceFeatureExtractDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/blockMeshDict index 63ebb39ebb4f45ed245fe88b50e96066cc7d512d..a98c9165fe7017fa75f75930cd660238e8c2f0bc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/controlDict index cd9135e01ae5729fafc4f2719b0c70c260a3feab..482b76738021ca09a3dc306b8c1a95fc0c0cc8ee 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/createPatchDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/createPatchDict index 5ee9faf013be6046cb8b134a974b6dd36366e21f..21a9f1f7dfe084f5dbcbccf4006b1be6d57ecb73 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/createPatchDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/createPatchDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/decomposeParDict index f4bf6b8738928c5a456c3fb7e9d09f0bf8868d93..8106d6ec75693440e97d2992b576781de5026a53 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2306 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvOptions index 6fa385926b0a4a37e3ff0a50b8815bad6a2c8c31..2fddf85cd1927fabb131a9364dd12b0f5deb94d9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSchemes index 20c4ac4e11c574585b4d0d81e17ed694f039ba08..9e8553999d7e931762aac04815d43b77b8e17bcc 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSolution index 7cb8612359c60ed1ccd7cfd54f1916f0b5389500..42f05896c0b6072c3961c2d0407df6638650b6ef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict index 6e542adbc7c49316acc758c1a25e5f4432b83221..0d618dda27e156a0935cbf2385f9f592ab4642f4 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/topoSetDict index f469e46267a9416664d75e686dda19d6cce44845..7d0884c2be48abf3f03f53815ac40d49fc0dfdef 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/U index 5aab2009054950aa8c5315d7cc67b9b29e03f2cf..e11d846911a6c672a9c915ed591053928e950815 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/Ua index 6c0214d5a487090252fee24eda34b6c5441e9abc..a2b8a355b121e8bcc9b9e3c88724a2be753f1e3f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuTilda index ca5873dcc1f090521c5f7801aaa3d85cec45e88c..9d64ae58b5bbb58a0b6c991eb0627294d908158c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuaTilda index 295329351569b26c4339d098665632237ad97c88..f6c5d2c40e43b356903534d7c970cc2c667f39c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nut b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nut index bc4830a9b0044d24edfc34fd1b2808a78d7e4d05..3da02a2a8562372c56303cc10f301f7f4bdc259f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/p index 24220ebc0c8a1c3ea96f7c8da109853c3b1a1d30..fd7e61069f73dd94e53110259aa72bd80b94e3c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/pa index 484a5db123c114e6315fdb525ac193a807678ec8..44cb694da459f3c2667572123f2b078e34d43d00 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/adjointRASProperties index 4bb90fc7043dd653fef18547940b61336fbb8bae..5791fa33d4ebf56638a804ad3b52684b4b34b0c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/transportProperties index 7c3368df878625e0853989e44a86f108c073bee8..d10dac0f657395de86ff7a3c534b0a470d5b8106 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/U index 4016f1287c6ac411574fe8fdb2baf6ad0e70a13e..1782bf63b73ce73dad7c27c3b539bf14617ec4b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/Ua index 6b39d4e44b33374431579a0f2efc2f53e93a87d1..fe183dd330f6416889d3095c84e58bd231ab9f50 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuTilda index b6e5c83af3ac01efe61087bbdb0083d20ecdd7f2..9590ac696e6952e3ba2903ef0dab47c35a1a2317 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuaTilda index b7a3bb6d3aae70fdecdae22fd392e8cccb619c04..ca1c0c208f06fee3c00c44caca2c467f72fc86fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nut b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nut index d2dd1f91a2eadfd9375c0130d68c382a640f03f1..58c82a16a9aa3986d4e30dafe57cf3852026d333 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/p index 5d857bc3af5f7716002ed9009e765b9a3263ea6f..3887758e76b8365288959ae193a81bcfb8eb12f6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/pa index b00f3273967b72acbded69b0ee8219378f4c12b1..0e509436a5d447d0312f09add47a95c9e4342804 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/adjointRASProperties index 4bb90fc7043dd653fef18547940b61336fbb8bae..5791fa33d4ebf56638a804ad3b52684b4b34b0c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/transportProperties index 7c3368df878625e0853989e44a86f108c073bee8..d10dac0f657395de86ff7a3c534b0a470d5b8106 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/decomposeParDict index dbdbe053a63bde12cd1349d2d61d0d37ce7cdc74..b3ca37444acb5e610c911ddc9d50a8468d69c00c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSchemes index 9d08ce756bad40fc33cd311446d4140cd4c1a55a..3533182aa5bbca81c3fd919abe357d4eee0fec93 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSolution index 201d9359171daa0a7496498c744c9438672af1fd..9fafdad68fdcb607ae1427905a0873a125d463d1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/optimisationDict index 4afc34476aaae42b6a194df41214447231ebe613..1d4a32f01612f341c4c9a303580587f50ce66408 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/blockMeshDict index bf32a6d7dc0f3ca280641bd5a403d6f5ee45d8f2..24cc899e02e59b83fe38ba6ba5742d6d38485231 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/controlDict index 1d6d5906163c143ec94f398c1afa60913d7b9c7d..7379158e3164e6ec76be7c95ce16fefedde25fc8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/decomposeParDict index dbdbe053a63bde12cd1349d2d61d0d37ce7cdc74..b3ca37444acb5e610c911ddc9d50a8468d69c00c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvOptions index b256a37be7c4ec53e282baccfc908f28caeb59b9..fd6208f0d026c20023153907c4cea8039a099d4b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSchemes index 9d08ce756bad40fc33cd311446d4140cd4c1a55a..3533182aa5bbca81c3fd919abe357d4eee0fec93 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSolution index a4c50f8183c0ccedd443837de1792571af0fb3fe..662ce874b225f41995a970786fa0c45669c52db9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/optimisationDict index 77c5dc6b34c9db4e9f00e2e0b81034df7f75bc98..6b9b8dca75a34c35b9dd57b7576547efc62d71c9 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/topoSetDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/topoSetDict index 935e4e2a241dece2dba5724f5a25530b1e47f68f..11c11dae52cf5e07f86c3453f8c917a172a1bc03 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/topoSetDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_05x_NB_01/system/topoSetDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/U index 5aab2009054950aa8c5315d7cc67b9b29e03f2cf..e11d846911a6c672a9c915ed591053928e950815 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/Ua index 6c0214d5a487090252fee24eda34b6c5441e9abc..a2b8a355b121e8bcc9b9e3c88724a2be753f1e3f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuTilda index ca5873dcc1f090521c5f7801aaa3d85cec45e88c..9d64ae58b5bbb58a0b6c991eb0627294d908158c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuaTilda index 295329351569b26c4339d098665632237ad97c88..f6c5d2c40e43b356903534d7c970cc2c667f39c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nut b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nut index bc4830a9b0044d24edfc34fd1b2808a78d7e4d05..3da02a2a8562372c56303cc10f301f7f4bdc259f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/p index 24220ebc0c8a1c3ea96f7c8da109853c3b1a1d30..fd7e61069f73dd94e53110259aa72bd80b94e3c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/pa index 484a5db123c114e6315fdb525ac193a807678ec8..44cb694da459f3c2667572123f2b078e34d43d00 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/adjointRASProperties index 4bb90fc7043dd653fef18547940b61336fbb8bae..5791fa33d4ebf56638a804ad3b52684b4b34b0c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/transportProperties index 7c3368df878625e0853989e44a86f108c073bee8..d10dac0f657395de86ff7a3c534b0a470d5b8106 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/U b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/U index 4016f1287c6ac411574fe8fdb2baf6ad0e70a13e..1782bf63b73ce73dad7c27c3b539bf14617ec4b7 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/U +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/U @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/Ua b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/Ua index 6b39d4e44b33374431579a0f2efc2f53e93a87d1..fe183dd330f6416889d3095c84e58bd231ab9f50 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/Ua +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/Ua @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuTilda index b6e5c83af3ac01efe61087bbdb0083d20ecdd7f2..9590ac696e6952e3ba2903ef0dab47c35a1a2317 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuaTilda b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuaTilda index b7a3bb6d3aae70fdecdae22fd392e8cccb619c04..ca1c0c208f06fee3c00c44caca2c467f72fc86fa 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuaTilda +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nuaTilda @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nut b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nut index d2dd1f91a2eadfd9375c0130d68c382a640f03f1..58c82a16a9aa3986d4e30dafe57cf3852026d333 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nut +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/nut @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/p b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/p index 5d857bc3af5f7716002ed9009e765b9a3263ea6f..3887758e76b8365288959ae193a81bcfb8eb12f6 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/p +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/p @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/pa b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/pa index b00f3273967b72acbded69b0ee8219378f4c12b1..0e509436a5d447d0312f09add47a95c9e4342804 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/pa +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/0/pa @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/adjointRASProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/adjointRASProperties index 4bb90fc7043dd653fef18547940b61336fbb8bae..5791fa33d4ebf56638a804ad3b52684b4b34b0c5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/adjointRASProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/adjointRASProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/transportProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/transportProperties index 7c3368df878625e0853989e44a86f108c073bee8..d10dac0f657395de86ff7a3c534b0a470d5b8106 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/transportProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/transportProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/turbulenceProperties b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/turbulenceProperties index e917a6b3dcf9550d78797dd3aa59e0dfc4a2b0a1..1f713eefcdd5ecd30b7399ebe5e6bfb4b2410b10 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/turbulenceProperties +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/constant/turbulenceProperties @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/controlDict index 7918e8e2a2c2b605255e80a7785b6fb8c6ff19e6..df2ed91b10f749775cb0a22ff1d68b36a5b329a2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/decomposeParDict index dbdbe053a63bde12cd1349d2d61d0d37ce7cdc74..b3ca37444acb5e610c911ddc9d50a8468d69c00c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSchemes b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSchemes index 9d08ce756bad40fc33cd311446d4140cd4c1a55a..3533182aa5bbca81c3fd919abe357d4eee0fec93 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSchemes +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSchemes @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSolution b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSolution index 201d9359171daa0a7496498c744c9438672af1fd..9fafdad68fdcb607ae1427905a0873a125d463d1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSolution +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/fvSolution @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/meshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/meshDict index 9a12dd34670cf8643ac83f4d58624c261bb5b88d..526669fa5d62f2bea8dbce1e3696e2561a2c35c2 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/meshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/meshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/optimisationDict index 4afc34476aaae42b6a194df41214447231ebe613..1d4a32f01612f341c4c9a303580587f50ce66408 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/reEval/system/optimisationDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/blockMeshDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/blockMeshDict index bf32a6d7dc0f3ca280641bd5a403d6f5ee45d8f2..24cc899e02e59b83fe38ba6ba5742d6d38485231 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/blockMeshDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/blockMeshDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/controlDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/controlDict index 1d6d5906163c143ec94f398c1afa60913d7b9c7d..7379158e3164e6ec76be7c95ce16fefedde25fc8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/controlDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/controlDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/decomposeParDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/decomposeParDict index dbdbe053a63bde12cd1349d2d61d0d37ce7cdc74..b3ca37444acb5e610c911ddc9d50a8468d69c00c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/decomposeParDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v2312 | +| \\ / O peration | Version: v2406 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/fvOptions b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/fvOptions index b256a37be7c4ec53e282baccfc908f28caeb59b9..fd6208f0d026c20023153907c4cea8039a099d4b 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/fvOptions +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/levelSet/R_10x_NB_01/system/fvOptions @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= |